如何把路径变成一个Polyline?
VB开发|黄洪辉|2018-05-15 08:47
-
回答:
Private Sub DrawPolyline_Click() 'Polyline 又称多义线,就是可以绘制多条首尾相连的线,也可以是圆弧相连,同是可以指定线的开始和结束宽。 '把颜色改回黑白色 MxDrawX1.DrawColor = 0 '把线型改成实线 MxDrawX1.LineType = "" '设置线宽 4 MxDrawX1.LineWidth = 0 '创建一个图层,名为"PolylineLayer" MxDrawX1.AddLayer "PolylineLayer" '设置当前图层为"PolylineLayer" MxDrawX1.LayerName = "PolylineLayer" '《---------------------------------------》 '用Plyline显示绘制矩形框 '定义一个路径的开始点 MxDrawX1.PathMoveTo 0, 300 '路径的一下个点 MxDrawX1.PathLineTo 100, 300 '路径的一下个点 MxDrawX1.PathLineTo 100, 400 '路径的一下个点 MxDrawX1.PathLineTo 0, 400 '把路径设置成闭合 MxDrawX1.PathMakeClosed '把路径闭合,生成一个矩形框 MxDrawX1.DrawPathToPolyline '《---------------------------------------》 '绘制一个有宽度,带线型的矩形框 '定义一个路径的开始点 MxDrawX1.PathMoveTo 200, 300 '路径的一下个点 MxDrawX1.PathLineTo 300, 300 '路径的一下个点 MxDrawX1.PathLineTo 300, 400 '路径的一下个点 MxDrawX1.PathLineTo 200, 400 '把路径设置成闭合 MxDrawX1.PathMakeClosed MxDrawX1.AddLinetype "MyLineType3", "30,-10" MxDrawX1.LineType = "MyLineType3" MxDrawX1.DrawColor = 255 MxDrawX1.LineWidth = 5 MxDrawX1.DrawPathToPolyline '《---------------------------------------》 '绘制一个有宽度的矩形框 '定义一个路径的开始点 MxDrawX1.PathMoveTo 400, 300 '路径的一下个点 MxDrawX1.PathLineTo 500, 300 '路径的一下个点 MxDrawX1.PathLineTo 500, 400 '路径的一下个点 MxDrawX1.PathLineTo 400, 400 '把路径设置成闭合 MxDrawX1.PathMakeClosed MxDrawX1.LineType = "" MxDrawX1.DrawColor = 65280 MxDrawX1.LineWidth = 10 MxDrawX1.DrawPathToPolyline '《---------------------------------------》 '绘制一个有宽度的矩形框 '定义一个路径的开始点 MxDrawX1.PathMoveTo 400, 300 '路径的一下个点 MxDrawX1.PathLineTo 500, 300 '路径的一下个点 MxDrawX1.PathLineTo 500, 400 '路径的一下个点 MxDrawX1.PathLineTo 400, 400 '把路径设置成闭合 MxDrawX1.PathMakeClosed MxDrawX1.LineType = "" MxDrawX1.DrawColor = 65280 MxDrawX1.LineWidth = 10 MxDrawX1.DrawPathToPolyline '《---------------------------------------》 '绘制一个有宽度的,不闭合的矩形框 '定义一个路径的开始点 MxDrawX1.PathMoveTo 600, 300 '路径的一下个点 MxDrawX1.PathLineTo 700, 300 '路径的一下个点 MxDrawX1.PathLineTo 700, 400 '路径的一下个点 MxDrawX1.PathLineTo 600, 400 '把路径设置成闭合 MxDrawX1.LineType = "" MxDrawX1.DrawColor = 65280 MxDrawX1.LineWidth = 10 MxDrawX1.DrawPathToPolyline '《---------------------------------------》 '绘制一个有宽度的,三角形 '定义一个路径的开始点 MxDrawX1.PathMoveTo 800, 300 '路径的一下个点 MxDrawX1.PathLineTo 900, 300 '路径的一下个点 MxDrawX1.PathLineTo 900, 400 MxDrawX1.PathMakeClosed '把路径设置成闭合 MxDrawX1.LineType = "" MxDrawX1.DrawColor = 65280 MxDrawX1.LineWidth = 10 MxDrawX1.DrawPathToPolyline '《---------------------------------------》 '绘制一个箭头 MxDrawX1.PathMoveToEx 1000, 300, 10, 10, 0 MxDrawX1.PathLineToEx 1000, 500, 30, 0, 0 MxDrawX1.PathLineTo 1000, 580 MxDrawX1.DrawPathToPolyline '《---------------------------------------》 '绘制一个虚线箭头 MxDrawX1.PathMoveToEx 1200, 300, 10, 10, 0 MxDrawX1.PathLineToEx 1200, 500, 30, 0, 0 MxDrawX1.PathLineTo 1200, 580 MxDrawX1.DrawColor = 65535 MxDrawX1.LineType = "MyLineType3" MxDrawX1.DrawPathToPolyline '《---------------------------------------》 '绘制一个圆弧箭头,-0.34是圆弧的凸度. 'MxDrawX1.PathMoveToEx 1400, 300, 10, 10, -0.34 MxDrawX1.PathMoveToEx 1400, 300, 10, 10, -0.34 MxDrawX1.PathLineToEx 1400, 500, 30, 0, 0.34 MxDrawX1.PathLineTo 1400, 600 MxDrawX1.DrawColor = 16776960 MxDrawX1.LineType = "MyLineType3" MxDrawX1.DrawPathToPolyline '《---------------------------------------》 '把所有的实体都放到当前显示视区 MxDrawX1.ZoomAll '更新视区显示 MxDrawX1.UpdateDisplay End Sub