MM_TEXT与MM_MM_LOMETRIC两个映射模式应该如何换算

welman00chijian 2006-02-09 11:45:25
我计算得到一个坐标点(x,y)
在画图时, 设置原点为(0,z)
然后CDC取的映射模式为 MM_LOMETRIC.即每个基本单元为0.1mm,将此点描绘出来.
再通过鼠标取点得(x1,y1),由于鼠标取点是按照 MM_TEXT来取点的,所以涉及到两种映射模式互相转换的问题.

通过CDC::GetDeviceCaps(LOGPIXELSX)方法可以得到在X轴上每英寸内包含有多少个像素.经计算为96
而每英寸为25.4mm,所以得到一个转换系统为scale = 25.4*10/96, 得到每像素内有多少0.1mm

所以在X点上的互转公式应该为 x1*scale. 可是经过计算x1*scale 与 x 之间存在着极大的偏差.

请大虾们帮小弟看一下我在哪边没有考虑清楚的呢?
...全文
413 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
welman00chijian 2006-02-10
  • 打赏
  • 举报
回复
可以了, 多谢
teli_eurydice 2006-02-10
  • 打赏
  • 举报
回复
DpToLP or LpToDP

19,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧