将点的所有z更改为0.0
你好有人能告诉我如何将点的所有z更改为0.0(随附文件)
谢谢
新建块。图纸 无需lisp,只需选择俯视图中的所有点,然后在“特性”中将Z值(表示变化)设置为0.0即可完成此操作 谢谢你的回复。
但我指的是附件中椭圆的起点或终点。
对不起,上次的帖子不清楚 dwg中的任何图元都不与WCS的XY平面共面。
你可以试试这个:
将UCS设置为WCS(\u UCS>\u World),然后使用“展平”命令。 你好
展平完成,然后对象运行到另一个位置。
我的意思是写代码lisp以下,但省略号不影响:
(defun c:test()
(setq ss (ssget '((0 . "ARC"))))
(setq n 0)
(repeat (sslength ss)
(setq arc (vlax-ename->vla-object (ssname ss n)))
(setq str (vlax-get arc 'StartPoint))
(setq end (vlax-get arc 'EndPoint))
(setq cen (vlax-get arc 'Center))
(setq str_n (list (car str) (cadr str) 0.0))
(setq end_n (list (car end) (cadr end) 0.0))
(setq cen_n (list (car cen) (cadr cen) 0.0))
(command "_ARC" "C" "_none" cen_n "_none" str_n "_none" end_n)
(vla-delete arc)
(setq n (1+ n))
)
(princ)
) 也许我误解了,但你打算如何在不移动实体的情况下更改其Z坐标?
请注意,大多数实体的法线为(0.00684151-7.95332e-005 0.999977),而不是(0.01)。因此,相对于WCS的XY平面,所有物体都略微倾斜。 谢谢Roy
我的意思是将对象转换为WCS中的pline(绿色)(随附文件)。你能告诉我怎么做吗?
新建块。图纸
命令
压平
或者Lisp程序的zeroz
你好
Zeroz无效。
展平然后运行其他对象。 你的画很奇特。不仅存在不良的3D效果,椭圆弧的大小半径似乎几乎相等(换句话说:它们实际上是圆形的)。
考虑到这一点,这里有一个函数,类似于您的建议,用于在Z=0平面上为圆弧和椭圆弧创建圆弧替换:
程序为:
1、切换到WCS。
2.使用c:Test替换所有(椭圆)弧。
3、展平所有多段线。
4.使用_Join命令。
5.某些元素不会连接形成闭合多段线。这是由于不准确。
页:
[1]
2