方法是:计算定点绕旋转中心旋转后的位置,然后GDI绘制直线;
角度:指的是跟x轴的夹角;

        private void DrawCross(Graphics graphics, Pen pen, float x, float y, int Size, float Angle){float RotateAngle = Angle;for (int i = 0; i < 4; i++){if (Angle % 90 != 0){switch (i){case 0:RotateAngle = Angle;break;case 1:RotateAngle = ((360 - 4 * Angle) / 2 + Angle);break;case 2:RotateAngle = (-(360 - 4 * Angle) / 2 - Angle);break;case 3:RotateAngle = (-Angle);break;default:break;}}else{Angle = 90;RotateAngle = Angle * i;}PointF pointF = PointRotate(new PointF(x, y), new PointF(x + Size / 2, y), RotateAngle);graphics.DrawLine(pen, new PointF(x, y), pointF);}graphics.Dispose();}/// <summary>/// 绕某一点旋转定角度,求旋转后的点坐标/// </summary>/// <param name="center"></param>/// <param name="p1"></param>/// <param name="angle"></param>/// <returns></returns>private PointF PointRotate(PointF center, PointF p1, double angle){PointF tmp = new PointF();double angleHude = angle * Math.PI / 180;/*角度变成弧度*/double x1 = (p1.X - center.X) * Math.Cos(angleHude) + (p1.Y - center.Y) * Math.Sin(angleHude) + center.X;double y1 = -(p1.X - center.X) * Math.Sin(angleHude) + (p1.Y - center.Y) * Math.Cos(angleHude) + center.Y;tmp.X = (int)x1;tmp.Y = (int)y1;return tmp;}

定点定角度定长绘制直线,类似halcon的gen_cross_contour_xld效果相关推荐

  1. android 自定义园动画,Android 自定View实现仿QQ运动步数圆弧及动画效果

    在之前的Android超精准计步器开发-Dylan计步中的首页用到了一个自定义控件,和QQ运动的界面有点类似,还有动画效果,下面就来讲一下这个View是如何绘制的. 1.先看效果图 2.效果图分析 功 ...

  2. AD怎么输入坐标_CAD入门基础小知识(二)捕捉栅格绘制直线amp;使用坐标绘图...

    捕捉栅格绘制直线 摘要:直线是CAD设计图纸中最重要的组成元素,因此,本教程将以直线的绘制引导读者快速入门.栅格捕捉虽然不常用,确实精确定位尺寸最简单的方式,我们先从这种方式开始. 画直线之前,我们先 ...

  3. 结构建模设计——Solidworks软件之草图绘制基础图形工具总结(绘制直线、矩形、圆、槽、圆弧、圆角等)

    [系列专栏]:博主结合工作实践输出的,解决实际问题的专栏,朋友们看过来! <QT开发实战> <嵌入式通用开发实战> <从0到1学习嵌入式Linux开发> <A ...

  4. 知止而后有定,定而后能静,静而后能安,安而后能虑,虑而后能得

    知止而后有定,定而后能静,静而后能安,安而后能虑,虑而后能得.物有本末,事有终始,知所先后,则近道矣. <大学·第一章> 知止--明确原则,理清期许 有定--站稳立场,坚定不移 能静--动 ...

  5. java bresenham画直线_OpenGL中点Bresenham绘制直线算法

    本文实例为大家分享了OpenGL中点Bresenham绘制直线算法,供大家参考,具体内容如下 环境 macos xcode编译器 代码 #include #include #include #incl ...

  6. 利用OpenCV的霍夫变换线检测函数HoughLines()得到直线的ρ和θ值后绘制直线的原理详解

    为了更好地看懂本文,大家可以先看下我写的另一篇博文,链接如下: https://blog.csdn.net/wenhao_ir/article/details/51774444 OpenCV的霍夫变换 ...

  7. AndEngine引擎学习之绘制直线

    上午搭建了下AndEngine的环境,运行起来了demo,看起来感觉很不错.这里写了个demo,凡事都要重基础开始学习,在学习android的绘图过程中也是,从如何绘制直线,矩形等到复杂的图像.这里做 ...

  8. canvas之一:绘制直线

    canvas是html5中最激动人心的技术之一,使用它,可以在浏览器上绘制出各种酷炫的效果,但是呢,千里之行,始于足下,接下来我们就从画一条最简单的直线开始,话不多说,先上效果图: 代码如下: < ...

  9. Delphi下的GDI+编程[2] DrawLine - 绘制直线

    例一效果图: 在GDI+中,绘制直线是通过TGPGraphics类的DrawLine方法实现的,此类的一些方法如下: DrawLine(线条) DrawRectangle(矩形) DrawEllips ...

最新文章

  1. 0x43.数据结构进阶 - 线段树
  2. JVM中GC Root对象有哪些?
  3. 2022年中国餐饮经营参数蓝皮书
  4. 漫谈边缘计算(三):5G的好拍档
  5. 【实例解析】某集团BI决策系统建设方案分享
  6. oracle 断电 监听问题,Oracle监听启动后又自动停止的问题及解决
  7. 软件测试技术路线怎么走
  8. 【Linux os7】--详细搭建LAMP+安装Zabbix4监控服务
  9. MySQL练习题(4)
  10. w10更新后怎么找计算机全民,Win10系统下全民WiFi不能用了怎么办
  11. STM32F4应用-串口通信
  12. 植物识别小系统:“ 花草树木 皆有名“一热爱自然,从认识自然开始 ~
  13. suse linux乱码,轻松解决Suse中文乱码问题
  14. 51单片机DS1302实时时钟
  15. 瓶子机器人diy制作大全_塑料瓶回收改造成电动机器人玩具
  16. 聚焦低代码SaaS云服务,让企业轻松办公!
  17. javascript轮播技术
  18. FFT的C语言实现,对照MATLIB
  19. jQuery实现在线选座订座(影院篇)
  20. preg_match_all 结果排序之PREG_SET_ORDER参数

热门文章

  1. php asp application,ASP Application
  2. MAC_COCOS2D-X学习——Cocos2dx帧动画实现火焰效果
  3. NLP 中的数据增强
  4. 苹果手机数据丢失找回方法及其数据备份汇总
  5. cocos2dx掼蛋_精通Cocos2d-x游戏开发(进阶卷) (王永宝著) 完整pdf扫描版[98MB]
  6. 转载:微博推荐算法简述
  7. fstream知识梳理
  8. mybatis中where标签和trim标签的区别以及使用
  9. 页游联运系统为什么首推九四玩?
  10. Wintone:人脸识别促成微信身份证,你知道吗?