motee-z,您是否担心可以在我的代码中为(ssget)函数添加过滤器,并将我的例程仅应用于您希望的实体类型(三维多段线)。。。你们唯一应该做的就是将视图设置为顶部,就像它在你们的DWG中一样。。。然后,您需要提供栅栏距离的输入(越小且接近0.0,例程将计算和排序珐琅-您应该看到在例程工作时排序的选择预览)。。。
更改此项:
- (setq ss1 (ssget "_C" (mapcar '- (car pl) '(1e-3 1e-3)) (mapcar '+ (car pl) '(1e-3 1e-3))))
- (ssdel curve ss1)
- (setq sss (ssget "_F" pl))
- (ssdel curve sss)
- (setq ss2 (ssget "_C" (mapcar '- (last pl) '(1e-3 1e-3)) (mapcar '+ (last pl) '(1e-3 1e-3))))
- (ssdel curve ss2)
为此:
- (setq ss1 (ssget "_C" (mapcar '- (car pl) '(1e-3 1e-3)) (mapcar '+ (car pl) '(1e-3 1e-3)) (list '(0 . "POLYLINE") '(-4 . "<or") '(70 . '(70 . 9) '(-4 . "or>"))))
- (ssdel curve ss1)
- (setq sss (ssget "_F" pl (list '(0 . "POLYLINE") '(-4 . "<or") '(70 . '(70 . 9) '(-4 . "or>"))))
- (ssdel curve sss)
- (setq ss2 (ssget "_C" (mapcar '- (last pl) '(1e-3 1e-3)) (mapcar '+ (last pl) '(1e-3 1e-3)) (list '(0 . "POLYLINE") '(-4 . "<or") '(70 . '(70 . 9) '(-4 . "or>"))))
- (ssdel curve ss2)
|