明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2038|回复: 5

[求助]如何把封闭图形的各个线段衔接起来后,用AcDbPolyLine表达出来

[复制链接]
发表于 2010-6-1 10:46:00 | 显示全部楼层 |阅读模式

 

大家好,我是带着一个困扰很久的问题加入了明经,刚才看了一些帖子,备受鼓舞和启发。

我现在在搞数控火焰切割机的CAD二次开发,就是把绘制的图形进行刀补处理(轮廓向外扩或向内缩),然后转换为16进制的加工文件。

我参考了一下别人的程序,有的是像做“面域”一样把封闭图形的各个线段连接起来,然后进行刀补。然而,查看其DXF ,又不像面域处理的DXF。

比如

我画了一个100*100的矩形(逐段画的),别人的处理结果是

AcDbPolyline

 90

        4

 70

     1

 43

0.0

 10

500.0

 20

500.0

 10

600.0

 20

500.0

 10

600.0

 20

400.0

 10

500.0

 20

400.0

如果有圆弧的话,就会多一个参数

比如最后结尾的线段是一个180°的圆弧

AcDbPolyline

 90

        4

 70

     1

 43

0.0

 10

500.0

 20

500.0

 10

600.0

 20

500.0

 10

600.0

 20

400.0

 10

500.0

 20

400.0

 42

-0.9999999999999998

总结一下问题如何把封闭图形的各个线段(或许绘制时顺序很乱)依次衔接起来后,用AcDbPolyLine表达出来。

请问,通过VBA可以做到这个功能吗,怎么做到?如果不能,哪有什么好的办法,谢谢各位先!!

 

 楼主| 发表于 2010-6-2 07:55:00 | 显示全部楼层
高手们??
发表于 2010-6-5 11:20:00 | 显示全部楼层
做两个遍历,做个动态数组,把与上一段线的顶点相同的顶点加进数组,然后画线就可以了
发表于 2010-6-5 11:50:00 | 显示全部楼层

楼上说得对

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

足球比分 篮球比分  NBA赛程表 即时比分 足球赛程 足球指数 网球比分 开发比分网 阴阳冕

 楼主| 发表于 2010-6-7 15:46:00 | 显示全部楼层

那画线的时候,可以把原来的线段删除吗,怎么删除,然后,可以自动保存为DXF 格式吗?

发表于 2010-6-20 21:10:00 | 显示全部楼层
用对象的delete方法删除,最后可以自动保存为DXF格式的.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 22:24 , Processed in 0.177248 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表