373294296 发表于 2018-10-8 22:54:56

用VBA 如何把(多段线)转换成, (二维多段线)呢???

请高手,提供思路, 代码

mikewolf2k 发表于 2018-10-9 09:30:35

坐标读出来,新建。

poly168 发表于 2018-10-9 15:10:35

dim pnt as variant ,d2() as double,n as long
pnt=多段线.coordinates
n=(ubound(pnt)+1)/2
redim d2(n*3-1)
for i=0 to n
d2(i*3)=pnt(i*2) :d2(i*3+1)=pnt(i*2+1
next i
set 二维多段线=thisdrawing.modespace.addpolyline(d2)
二维多段线.图层/颜色/线盘等=多段线.相对特性
多段线.delete

373294296 发表于 2018-10-9 17:40:12

poly168 发表于 2018-10-9 15:10
dim pnt as variant ,d2() as double,n as long
pnt=多段线.coordinates
n=(ubound(pnt)+1)/2


重新写的码???多段线里有扩展属性

dong20030432 发表于 2018-10-10 17:09:20

373294296 发表于 2018-10-9 17:40
重新写的码???多段线里有扩展属性

扩展属性可以先提取,转换完成后再附着。多段线变成二维多段线,相当于是另一个对象了,不可能还带原来的属性。

373294296 发表于 2018-10-10 19:13:26

是呀,已经解决了, 不用重新绘制
http://blog.sina.com.cn/s/blog_48ff6e140100a1o1.html
好的方法
页: [1]
查看完整版本: 用VBA 如何把(多段线)转换成, (二维多段线)呢???