0

我想要做的是修剪一些另存为的折线,VLA-OBJECTS将它们转换为 没有问题Entities,但我想要以图形方式以以下方式修剪我的图像:

在此处输入图像描述

在此处输入图像描述

如您所见,我想修剪角落上红色圆圈之外的所有蓝线,并且我想自动修剪而不选择任何内容。为此,我将圆存储为 a VLA-OBJECT,将蓝色折线存储为独立VLA-OBJECTS的 ,圆的中心,实际上第一张图像上的所有内容都存储为 a VLA-OBJECT。所以我想知道你是否可以建议任何 lisp 例程来自动执行它?我正在考虑使用Break命令或Extend命令,但我找不到真正的解决方案。提前谢谢了。

4

1 回答 1

1

我没有足够的时间准备工作示例代码,但我可能会向您展示。我会尝试以这种方式做到这一点:

您可以找到圆和线的交点。

( vlax-invoke-method circle 'IntersectWith BlueLine acExtendNone )

以此打破每条蓝线

(foreach line BlueLines 
    (command "_break" line pt pt ) ; where pt is point returned by IntersectWith 
)

最后一步是检查 _break 创建的所有实体是在圆圈内还是在圆圈外。

您无法轻松访问由 _break 创建的实体。要获得它们,您可以(entlast)在命令 _break 之前使用。之后(entnext)

于 2017-02-03T08:41:11.950 回答