c#窗体程序绘制简单心形
分析思路:

两个圆形和一个矩形如图叠加再逆时针旋转45°,就能得到一个极其简陋的心。
我们只需要将圆心放在矩形上边中点和右边中点即可。
代码如下:

private void button1_Click(object sender, EventArgs e)
{
//因为是在panel控件中绘制的,所以在panel中创建画布,这个看个人喜好
Graphics gh = panel1.CreateGraphics();//创建画布
Pen p = new Pen(Color.Red, );//创建画笔
SolidBrush sb = new SolidBrush(Color.Red);//创建一个上色用的刷子
int x=,y=,a=,h=a;//定义矩形的初始坐标,边长和高
gh.RotateTransform(-);//将画布逆时针旋转45度
gh.TranslateTransform(, );//将整体坐标向下移动200像素
gh.DrawRectangle(p,x,y,a,h);//使用画笔绘制矩形
gh.DrawEllipse(p, x + a / , y, a, h);//绘制第一个圆形
gh.DrawEllipse(p, x, y-h / , a, h);//绘制第二个圆形 //用刷子分别给三个图形上色
gh.FillRectangle(sb, x, y, a, h);
gh.FillEllipse(sb, x + a / , y, a, h);
gh.FillEllipse(sb, x, y - h / , a, h);
}
点击按钮进行绘制。
颜色可以自己修改,也可以绘制渐变色。闪人,跑路回宿舍,万一被锁在教学楼就尴尬了,哈哈。(可以加工加工给妹子看,但是过于简陋,所以有风险,三思后行。)
c#窗体程序绘制简单心形的更多相关文章
- 第一个VC++ win32程序 绘制简单图形
创建一个VC++ win32 打开VS 新工程类型中选择Win32----Win32 Project 自己取个名字(假如叫做My1stWin) 一路next 系统会自动生成好最基本的代码 然后我们 ...
- python小趣味_520绘制一个心形.
从某个公众号上看到的. 跑了一下, 居然可以成功运行. 有心的话可以研究下代码. 利用了turtle模块 #!/usr/bin/env python # coding:utf-8 import tur ...
- c语言心形告白代码实现
c语言心形告白代码实现 1.彩色告白 include<stdio.h> include<math.h> include<windows.h> include< ...
- CSS 魔法系列:纯 CSS 绘制图形(心形、六边形等)
<CSS 魔法系列>继续给大家带来 CSS 在网页中以及图形绘制中的使用.这篇文章给大家带来的是纯 CSS 绘制五角星.六角形.五边形.六边形.心形等等. 我们的网页因为 CSS 而呈现千 ...
- matlab绘制心形函数
matlab 7.0 绘制二维.三维心形函数 又到周六,下周就要迎来春节小长假了,想想都有些激动.在外漂了一整年,总于可以回家和父母团聚了,还有吃好吃的...,哎呀~想想都流口水呢.不过先 ...
- 【MFC】如何在MFC创建的程序中更改主窗口的属性 与 父窗口 WS_CLIPCHILDREN 样式 对子窗口刷新的影响 与 窗体区域绘制问题WS_CLIPCHILDREN与WS_CLIPSIBLINGS
如何在MFC创建的程序中更改主窗口的属性 摘自:http://blog.sina.com.cn/s/blog_4bebc4830100aq1m.html 在MFC创建的单文档界面中: (基于对话框的, ...
- 绘制n边形:用两个以上的控件来控制矩形的颜色、大小、位置及空实心(程序代写)
绘制n边形:用两个以上的控件来控制矩形的颜色.大小.位置及空实心.(n由键盘输入) package lzy.di9zhang; import java.awt.BorderLayout;import ...
- Android中利用画图类和线程画出闪烁的心形
本文讲解主要涉及的知识点: 1.线程控制 2.画图类 3.心形函数 大家先看图片: <ig ...
- 超多经典 canvas 实例,动态离子背景、移动炫彩小球、贪吃蛇、坦克大战、是男人就下100层、心形文字等等等
超多经典 canvas 实例 普及:<canvas> 元素用于在网页上绘制图形.这是一个图形容器,您可以控制其每一像素,必须使用脚本来绘制图形. 注意:IE 8 以及更早的版本不支持 &l ...
随机推荐
- MongoDB 分片管理(二)查看网络连接
1.1 查看连接统计 connPoolStats,查看mongos与mongod之间的连接信息,并可得知服务器 上打开的所有连接 1.2 限制连接数量
- RabbitMQ的5种模式
队列截图,去rabbitMq.com去找学习文档 =========================================================================== ...
- zabbix的日志监控
前提条件是该日志文件对于启动zabbix agent进程的用户开启了可读权限,而且该日志的路径对该用户开方x权限,让能取到这个日志文件 第一个参数可以不用引号,前提是zabbix用户可以进入文件路径, ...
- string字符串类型用scanf读入,printf输出
#include <iostream> #include <stdio.h> #include <string.h> using namespace std; in ...
- [cogs] 传染病控制
http://cogs.pro:8080/cogs/problem/problem.php?pid=107 去年6月份的代码了,又长又臭又WA 暴力贪心模拟 水水50 #include<iost ...
- IIS/VS IIS Express 添加MIME映射 svg、woff、woff2、json
出现问题 页面提示 font-awesome/fonts/fontawesome-webfont.woff2?v=4.3.0 Failed to load resource: the server r ...
- 配置BeautifulSoup4+lxml+html5lib
序 Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你节省数 ...
- cross socket和msgpack的数据序列和还原
cross socket和msgpack的数据序列和还原 procedure TForm1.Button1Click(Sender: TObject); begin var pack: TSimple ...
- 【Oracle】往Oracle11g的某表插入近千万条记录,耗时略超一小时
和MySql的对比下,两者有数量级的差距. 表ddl: CREATE TABLE tb04 ( "ID" ,) not null primary key, "NAME&q ...
- 通过adb操作安卓亮屏、设置背光亮度、解锁、打开app
亮屏 adb shell inputkeyevent 26 keyevent 26表示点击power Android adb 点亮和关闭屏幕的命令 # kernel休眠 echo mem > / ...