当前位置:知识库 / VB开发 / 详情
如何把路径变成一个Polyline?
如何把路径变成一个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
相关问题
如何设置实体的显示顺序?
提示用户输入一个字符串
提示用户输入一个点坐标.
带过滤条件构选择集
读取对象的中文字名称
添加图案填充边界
增加一个图案填充数据
返回实体的最小矩形框外包
向数据库读写用户自定义的全局数据,通过扩展
得到图纸空间中所有实体
梦想CAD是专业的CAD插件(控件),可轻松在网页、手机及BS/CS程序中浏览编辑DWG文件,不需安装AutoCAD即可运行。经十余年累积已非常稳定可靠,有关键的空间搜索算法,并使用汇编优化,可同时处理50万级实体,有非常高的图形显示和处理效率。
联系我们
技术TEL:400-888-5703
185-8173-1060
客服I QQ: 3570505660
技术I QQ: 827867134
技术II QQ:6884123
VIP服务购买
销售TEL:156-8136-8971
销售QQ:710714273
用户交流
控件QQ交流群1:73281982
控件QQ交流群2:112199959
MxCAD软件群 1:515771658
技术I:QQ
827867134
客服I:QQ
3570505660
销售QQ
710714273
联系电话400-888-5703