c# 通过鼠标点击绘制多边形
1、问题描述
c#中,希望用鼠标点击事件,实现多边形的绘制;
2、解决思路
a、创建一个链表,将鼠标左键选中的点存储到链表中;
b、根据链表中的值,利用c#的DrawPolygon()函数绘制;
3、核心代码
List<Point> polyPoints = null;bool cliceMenu = true;private void pictureBox1_MouseDown(object sender, MouseEventArgs e){if (cliceMenu){if (e.Button == MouseButtons.Left){if (polyPoints == null) polyPoints = new List<Point>();polyPoints.Add(e.Location);}else if (e.Button == MouseButtons.Right&&polyPoints!=null){//Pen pen = new Pen(Color.Red, 3);//这个是在picturebox控件中创建的图形using (var g = pictureBox1.CreateGraphics()){g.SmoothingMode = SmoothingMode.AntiAlias;g.Clear(pictureBox1.BackColor);//填充多边形//using (SolidBrush br = new SolidBrush(Color.FromArgb(100, Color.Yellow)))//{// g.FillPolygon(br, polyPoints.ToArray());//}if (polyPoints.ToArray().Length >= 3){//绘制轮廓g.DrawPolygon(Pens.Red, polyPoints.ToArray());//绘制顶点foreach (Point p in polyPoints){g.FillEllipse(Brushes.Red, new Rectangle(p.X - 2, p.Y - 2, 4, 4));}} polyPoints = null;}}}}
参考:
1、C#如何利用鼠标绘制多边形
c# 通过鼠标点击绘制多边形相关推荐
- 利用鼠标点击绘制出三棱锥
作者:feiquan出处:http://www.cnblogs.com/feiquan/ 版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连 ...
- 可视化场景内任意绘制多边形并测量面积
一般测量功能主要表现在两方面,一是测量距离,二是测量面积.面积的测量是根据鼠标绘制的范围,通过地理坐标系的转换而计算出实际面积大小,距离的测量是根据鼠标在地图上绘制的点,实时计算出两点之间的实际距离. ...
- Cesium 点击绘制线/折线(动态绘制线/折线)
思路和之前做 Cesium 点击绘制多边形(动态绘制多边形) 一样的,点击查看 这里重点说一下: CallbackProperty是一个类,其值由回调函数延迟计算.也就是说它在不断地自我调用,每当其返 ...
- JS实现鼠标点击爱心绘制多边形每日一言功能
本篇文章主要介绍我的个人博客 程序猿刘川枫 中页面使用的美化功能(基于JS实现): 1.鼠标点击出现不同颜色爱心特效 2.页面浮动多边形跟随鼠标移动 3.每日一言功能 1.鼠标点击出现爱心特效 经常在 ...
- 地图绘制边界。高德。PPMAP。 鼠标点击经纬度坐标 。地图图标点点击弹窗窗口。地图图标点点击事件。
边界: == 第一种:绘制边界. 通过绘制多边形的API来绘制边界. 高德API:多边形 Polygon. 矢量图形-覆盖物-教程-地图 JS API | 高德地图API 将关键的边界轮廓 经纬度坐标 ...
- Qt 运用鼠标绘制多边形
文章目录 Qt 鼠标绘制多边形 技术要点: 实现过程: Qt 鼠标绘制多边形 分析: Qt鼠标绘图,就是要捕获鼠标事件,将捕获到的坐标点传递给场景,然后场景中就可以添加响应的2D图形了. 技术要点: ...
- 百度地图实现鼠标绘制多边形并获取所有点坐标
百度地图开放平台http://lbsyun.baidu.com/ 这里使用的是Javascript API http://lbsyun.baidu.com/index.php?title=jspopu ...
- [JavaScript游戏开发] 绘制冰宫宝藏地图、人物鼠标点击移动、障碍检测
系列文章目录 第一章 2D二维地图绘制.人物移动.障碍检测 第二章 跟随人物二维动态地图绘制.自动寻径.小地图显示(人物红点显示) 第三章 绘制冰宫宝藏地图.人物鼠标点击移动.障碍检测 第四章 绘制Q ...
- 实验三 交互式绘制多边形
visual studio2019实现交互式绘制多边形 这个实验······在网上找不到.孔令德的实验代码下载下来有密码,暴力破解没希望,只能自己写了. 这个和实验二是紧密相连的. 实验实现的目标 在 ...
最新文章
- java 弱引用 集合_java 弱引用集合类WeakHashMap
- Keras-数据增广
- POJ 1002 解题分析
- Python字符串等于
- 计算机音乐组获奖作品,大学生计算机音乐创作类决赛揭晓 浙音6件作品均获奖...
- php正则替换%3cbr%3e_php去除换行符的几种方法(str_replace正则和PHP_EOL)
- matlab数字信号处理与应用 张德丰,MATLAB数字信号处理与应用
- vue word 转换html渲染页面(mammoth)
- 交换机的基本原理与配置
- windows audio错误0x80070005
- C#自动换ip功能或者ip代理功能要这么实现
- steam显示没网络连接网络连接网络连接服务器,steam无法连接网络,steam显示无法连接网络...
- 共享办公室,推送企业紧密合作
- 感觉最近自己太张狂了一些。
- PyTorch实现AlexNet模型及参数详解
- 今日头条自媒体怎么提高推荐量
- flex布局---某个子元素独占一行
- 最大信息系数MIC的python代码
- 【推荐系统】【论文阅读笔记】【survey】A Survey on Session-based Recommender Systems基于会话的推荐系统综述
- 使用ICAP原语实现SPI-Multiboot加载
热门文章
- python关系图谱_文本分析之制作网络关系图
- php 复制文件夹并压缩到最小_php将文件夹打包成zip文件
- python列表框_「每日一练」Python列表框部件的运用
- GD32如何替换STM32?
- 「猜题第一篇」2019年大学生电子设计竞赛
- 服务器端接华为sdk无响应,sdk未响应
- html js 浏览器语言,js 判断浏览器语言的方法
- bch怎么挖_BCH是什么?
- mysql编译卡主_mysql 编译安装以及主从设定
- android 摄像头预览左右镜像_OpenJDK镜像的tag说明