你好
我建议您不要使用该区域来计算质心。一般来说,要遵循黄金法则——你使用的函数越少越好。可以使用GetBoundingBox方法获取多段线边界的左下角和右上角连接。在命令行中尝试:
- Command: (setq cPl(vlax-ename->vla-object(car(entsel))))
- Select object: #<VLA-OBJECT IAcadLWPolyline 094731c4>
- Command: (vla-GetBoundingBox cPl 'blPt 'trPt)
- nil
- Command: (setq lPt(vlax-safearray->list blPt))
- (64537.3 -10895.7 0.0)
- Command: (setq tPt(vlax-safearray->list trPt))
- (70109.8 -6366.18 0.0)
现在可以轻松计算边界框的中心。
还可以提取多段线顶点并计算实际重心(质心)。
祝你好运 |