关于自定义坐标系问题

franky82 2005-01-04 03:38:22
我要在Picturebox里根据标准坐标值画多边形,现需要将坐标系的原点定义在左下角,但坐标系下的坐标值仍为整数(即对象坐标的度量单位为象素)。
用了Scale方法,但这样坐标值就为单精度浮点数了。
有没别的方法?哪位给予指点啊?谢谢
...全文
189 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
franky82 2005-01-06
  • 打赏
  • 举报
回复
楼上xiuyuan() 兄有理

那of123()兄是什么意思 可否详细解释
franky82 2005-01-06
  • 打赏
  • 举报
回复
over
xiuyuan 2005-01-05
  • 打赏
  • 举报
回复
picture1.scalemode =3
picture1.scale (0,scaleheight)-(scalewidth,0)
韧恒 2005-01-05
  • 打赏
  • 举报
回复
Private Sub Form_Click()
Dim I, OldFontSize ' 声明变量。
Width = 8640: Height = 5760 ' 按缇设置窗体大小。
' Move 100, 100 ' 移动窗体起点。
AutoRedraw = -1 ' 打开AutoRedraw。
OldFontSize = FontSize ' 保持旧的字体大小。
BackColor = QBColor(7) ' 将背景设置为灰色。
Scale (0, 110)-(130, 0) ' 设定自定义座标系统。
For I = 100 To 10 Step -10
Line (0, I)-(2, I) ' 每隔 10 个单位划尺寸标记。
CurrentY = CurrentY + 1.5 ' 移动光标位置。
Print I ' Print scale mark value on left.
Line (ScaleWidth - 2, I)-(ScaleWidth, I)
CurrentY = CurrentY + 1.5 ' 移动光标位置。
CurrentX = ScaleWidth - 9
Print I ' 将尺寸标记值打印在右边。
Next I
' 画条形图。
Line (10, 0)-(20, 45), RGB(0, 0, 255), BF ' 第一个蓝色条。
Line (20, 0)-(30, 55), RGB(255, 0, 0), BF ' 第一个红色条。
Line (40, 0)-(50, 40), RGB(0, 0, 255), BF
Line (50, 0)-(60, 25), RGB(255, 0, 0), BF
Line (70, 0)-(80, 35), RGB(0, 0, 255), BF
Line (80, 0)-(90, 60), RGB(255, 0, 0), BF
Line (100, 0)-(110, 75), RGB(0, 0, 255), BF
Line (110, 0)-(120, 90), RGB(255, 0, 0), BF
CurrentX = 18: CurrentY = 100 ' 移动光标位置。
FontSize = 14 ' 放大标题尺寸。
Print "Widget Quarterly Sales" ' 打印标题。
FontSize = OldFontSize ' 还原字体大小。
CurrentX = 27: CurrentY = 93 ' 移动光标位置。
Print "Planned Vs. Actual" ' 打印子标题。
Line (29, 86)-(34, 88), RGB(0, 0, 255), BF ' 打印图例。
Line (43, 86)-(49, 88), RGB(255, 0, 0), BF
End Sub

franky82 2005-01-05
  • 打赏
  • 举报
回复
API可以么
of123 2005-01-05
  • 打赏
  • 举报
回复
映射一下座标系不就完了?
zeng_ben 2005-01-05
  • 打赏
  • 举报
回复
顶先,再找各位前辈帮小弟一个忙,做个VB特别简单的查询系统,具体的条件我们可以QQ上聊,谢谢哪位好心人帮帮小弟,实在是急呀,再不做好,就要下岗!小弟这里有礼了!!!!!!!!!!在线等QQ11060006
Ting_Hai 2005-01-04
  • 打赏
  • 举报
回复
请问用API 如何画线,如何定坐标?
franky82 2005-01-04
  • 打赏
  • 举报
回复
楼上兄弟高明,只不过反了,应该是x不变,而y用Picture1.ScaleHeight-y代替
aiur2000 2005-01-04
  • 打赏
  • 举报
回复
y不变,x用picture1.height-x代替试试?
franky82 2005-01-04
  • 打赏
  • 举报
回复
TO: 楼上兄弟,
但这样的话 坐标就是以左上角为原点了,而我想以左下角为坐标原点啊
of123 2005-01-04
  • 打赏
  • 举报
回复
Picture1.ScaleMode = VbPixels

7,785

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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