你的代码存在3个错误 1. Dim objpline As AcadLWPolyline 中变量 objpline 与后面用到的 objLwpolyline 不一致.因此把这一行改为 Dim objLwpolyline As AcadLWPolyline 2. varbulge = objLwpolyline.GetBulge(3) 与你的目的不符.GetBulge() 函数用于获取指定顶点的凸起值,这一行运行的结果是 varbulge 被赋予一个双精度数,就是多段线第4个顶点(索引值是你代码中的"3")的凸起值,而不是一个数组.因此把这行移到了循环体内部,针对每个顶点分别获取. 3. db1Z = varbulge((intIndex)).首先 db1Z 中间的字符是阿拉伯数字"1"而不是你声明的字母"l",写错了;其次,前面已经说了 varbulge 不是一个数组;最后, intIndex 外面为什么要用两层括号呢? |