好的,星期一,回去工作。
我试了一下,但似乎什么也没做。然后,我将“_.UCS”“\u V”位更改为“_.PLAN”“\u C”,它在我制作的测试视口上工作。
- (defun C:TEST (/ vc vs ve)
- (setq vc (getvar "VIEWCTR")
- vs (getvar "VIEWSIZE")
- ve (trans '(0 0 1) 0 1))
- (command "_.UCS" "_Y" 180
- "_.PLAN" "_C"
- "_.ZOOM" "_C" (trans vc ve 1) vs)
- )
然后,我打开了一个实际的文件,这个例程将在其中使用,并发现它并没有像希望的那样工作。
问题似乎是,它仅适用于“平面”设置为“世界”且UCS设置为“平面”的视口。
不幸的是,我们详细介绍的大多数零件都是在模型空间中布置的,它们在这个世界上的实际位置。
在随附的文件中有两个部分(75x10mm等角)。请注意它们在模型空间中的尺寸标注方式,以及在布局的视口中的显示方式。如果在这些视口上运行例程,结果会完全不同(视图X和视图Y坐标交换),尽管比例正确。
如果我在“加强筋R5”视口中运行例程8次,我会再次回到原始位置(但在“加强筋L5”视口中没有这样的运气,因为UCS已经绕Z旋转了180度)。
这一定与例行程序中发生的矩阵修改有关,但我不确定这是如何工作的。
从技术上讲,您只需要将视图X坐标从+更改为-(或反之亦然),正如在左中视口中正确发生的那样(尺寸为“853@0deg”)。
读到“uu”这个词很有趣方法我想将其纳入所有例程是一种很好的做法,尽管在这里内部不会有什么不同(对于大多数人来说,即使修改pgp文件也太复杂)。
测试。图纸 |