如何精确定位????????(50分)

  • 主题发起人 主题发起人 dearchen
  • 开始时间 开始时间
D

dearchen

Unregistered / Unconfirmed
GUEST, unregistred user!
现在我有一跟直线,我要在它上面书写它的长度,应该如何精确定位书写的那个点呢?
我要求它能随着我的直线角度的变化而变化,即总是在我线的上面。
 
建议用一个image来表示吧。否则似乎不好解决。
直线角度变化时旋转image可达到效果
至于,定位点可选择的就多了,可以根据直线的中心或其他因素来决定
 
记录那个点不要用像素, 用毫米或者1/10毫米记录, 旋转后用三角函数求出X, Y的坐标
的毫米值, 再转成像素值(因为像素不是正方型的, 所以这样做的精度比直接记录像素
高)
 
another_eyes;
请问这样求出的X,Y的坐标值,在转 成像素值,应该什么转化???
在画布上得到的X,Y值,是以什么为单位的,应该不是以像素为单位。在得到这个值后转
为以像素为单位应该如何转化呢(比例多少)。

 

x := GetDeviceCaps(Canvas.Handle, LOGPIXELSX); // pixels per inch (2.54 cm)
y := GetDeviceCaps(Canvas.Handle, LOGPIXELSY);

CanvasX := Round(x * YourSavedX / 254); // 如果你保存的是1/10毫米
canvasY := Round(y * YourSavedY/ 254);
 
多人接受答案了。
 
后退
顶部