社区
图形处理/算法
帖子详情
GDI如何画圆
meat
2012-02-07 10:21:36
SetScrollSizes(MM_LOMETRIC,sizeTotal);
圆半径6px,约21逻辑单位
不大位置画出的圆大小不一,如何解决?
...全文
547
14
打赏
收藏
GDI如何画圆
SetScrollSizes(MM_LOMETRIC,sizeTotal); 圆半径6px,约21逻辑单位 不大位置画出的圆大小不一,如何解决?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
meat
2012-02-10
打赏
举报
回复
解决了,还以为要用GDI+重写底程呢,重新试用dpi值,dpiX,dpiY值不同,前几次试的正负号有一个地方错了,改正了就OK了,看了一下GDI+的过程,估计是计算dpiX和dpiY,它提供了GetDpiX和GetDpiY,说明也是计算了这二个值。可GDI+实在是太慢了,幸好GDI解决了,不然要换成OpenGL了。用GDI加上优化一下绘图算法,处理2G以内的绘图数据,真的没问题。
meat
2012-02-10
打赏
举报
回复
gdi+完全没这个问题
xjtuzhw
2012-02-09
打赏
举报
回复
坐标系转换
向立天
2012-02-09
打赏
举报
回复
[Quote=引用 9 楼 meat 的回复:]
用cbitmap如何或者画刷?
[/Quote]
其实就是现实问题
我还是觉得应该不用太在意吧
用位图最终还是落到现实器上
画刷的话原理也是一样的
meat
2012-02-09
打赏
举报
回复
用cbitmap如何或者画刷?
meat
2012-02-08
打赏
举报
回复
不能,工程绘图,一个点是12cm误差
向立天
2012-02-08
打赏
举报
回复
有一个像素的误差应该说是正常的
你完全不能接受么
meat
2012-02-08
打赏
举报
回复
一个点代表了实际物体的12cm,比如地理信息
向立天
2012-02-08
打赏
举报
回复
[Quote=引用 6 楼 meat 的回复:]
不能,工程绘图,一个点是12cm误差
[/Quote]一个点12cm?
这么大的像素
meat
2012-02-07
打赏
举报
回复
写一段测试代码,大家可以试试
pDC->SetMapMode(MM_LOMETRIC);
int i,x,y;
x=50;
CBrush brush(RGB(0,0,0));
pDC->SelectObject(&brush);
for(i=0;i<50;i++){
x+=31;
y=-x;
pDC->Ellipse(x-16,y+16,x+16,y-16);
}
meat
2012-02-07
打赏
举报
回复
上面所说的大小不一,事实上是1个px的不一样,我试图转成把x转成px进行运算,也不一样,估计跟内切圆有关,系统又-1逻辑单位了
meat
2012-02-07
打赏
举报
回复
有的大有的小,gdi,同样x-16,y+16,x+16,y-16的区域,x,y圆点位置不同,画出的圆的大小不同,因为x,y不代表px,代表逻辑单位,也就是0.1mm
周成风
2012-02-07
打赏
举报
回复
什么意思?画出的大小不一?
C#使用
GDI
画圆
的方法
本文实例讲述了C#使用
GDI
画圆
的方法。分享给大家供大家参考。具体实现方法如下: Pen p = new Pen(Color.Black, 2); Graphics g = CreateGraphics(); g.DrawEllipse(p, 200, 200, 100, 100); 希望本文所述对大家的C#程序设计有所帮助。 您可能感兴趣的文章:深入C# winform清除由
GDI
绘制出来的所有线条或图形的解决方法深入c#
GDI
+简单绘图的具体操作步骤(一)深入c#
GDI
+简单绘图的具体操作步骤(二)深入c#
GDI
+简单绘图的具体操作步
利用DELPHI开发工具进行
GDI
画图
利用DELPHI开发工具进行
GDI
画图,画无规则区域,然后可以进行区域修改等功能
C++程序中,关于
GDI
绘图的操作
压缩包中包含了17项关于
GDI
的操作,简单明了,方便初学者学习。 每项功能都有单独的项目进行测试。 功能: 1:通过HDC获得CDC指针 2:创建屏幕DC 。。。。 6:文本对齐方式 7:设置背景模式 8:如何绘制图形 。。。 15:用桌面背景填充指定区域 16:进行坐标映射 17:获取其他程序的图标
VB运用
GDI
实现圆形透明时钟.rar
VB运用
GDI
实现圆形透明时钟,生成程序移动的时候请不要忘记带上system.png,没有了这个资源文件,钟会出错的~!
用
GDI
+在panel上
画圆
,随意托动
用
GDI
+在panel上
画圆
,能够随意拖动,且不会超出panel容器,利用双缓冲实现托动时无闪烁
图形处理/算法
19,468
社区成员
50,698
社区内容
发帖
与我相关
我的任务
图形处理/算法
VC/MFC 图形处理/算法
复制链接
扫一扫
分享
社区描述
VC/MFC 图形处理/算法
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章