作者Egriawei (Noble Mind)
站内Cad_Cae
标题Re: [问题] Autocad中polyline的图元串列资料
时间Wed Jan 24 23:42:38 2007
※ 引述《ggg888 (g8)》之铭言:
: 请问版上高手
: 我画一了一条polyline
: 其中还包括有圆孤的部份
: 取出这条线的串列资料後
: 发现关於圆孤的部份的资料为
: (10 409.77 199.567) (40 . 0.0) (41 . 0.0) (42 . -0.466828)
: 10应该是起点,请问42.代表的是什麽样的资料呢?
如果我没猜错
你所画的这段"聚合线"元体类型应该是LWPOLYLINE (0的那个点对串列)
这里42书上写:凸起
是所谓的多重项目
每个顶点便有一组,default=0
意味不明
10指的是顶点座标
也就是点下去聚合线的时候会亮起的擎点(但是不包含arc中点)
这串是arc部分的资料的话是指arc的起点或是终点
要看一下谁先谁後
: 由於我想写一个程式,可以在这条polyline中每隔20m插入一个block
: 所以必须计算每段线段,包括孤长的长度,
: 藉此算出每个插入点的座标
: 请问各位有那些方法可以达到呢?
整条polyline(此指画成有直线,arc随机组成的聚合线)
有很多的线和圆弧有重复的点对串列
像下面是line+arc+line的聚合线资料有四个擎点
(
(-1 . <图元名称: 7ef61f88>) (0 . LWPOLYLINE) (330 . <图元名称: 7ef61cf8>)
(5 . F9) (100 . AcDbEntity) (67 . 0) (410 . Model) (8 . 0)
(100 . AcDbPolyline) (90 . 4) (70 . 0) (43 . 0.0) (38 . 0.0) (39 . 0.0)
(10 695.958 402.793) (40 . 0.0) (41 . 0.0) (42 . 0.0)
(10 1190.91 588.519) (40 . 0.0) (41 . 0.0) (42 . 0.344451)
(10 886.504 778.888) (40 . 0.0) (41 . 0.0) (42. 0.0)
(10 670.397 667.452) (40 . 0.0) (41 . 0.0) (42 . 0.0)
(210 0.0 0.0 1.0)
)
抓取他的串列资料时
还要先算出该线或弧的资料在串列的哪里到哪里
例如assoc 10不知道会抓到哪个擎点的串列?(好,实际上是抓到第一个)
虽然可以做,但好用的assoc指令反而不能用
我论会比较麻烦
如果要沿着某个聚合线轨迹"铺铁轨"
建议一段一段分成line和arc做
最後视需求把这些line和arc用pedit指令聚合在一起会比较好
抓取line和arc的起点,终点,圆心看起来原po应该是会
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.230.24.5
※ 编辑: Egriawei 来自: 61.230.24.5 (01/25 00:04)