jan_ek 发表于 2022-7-5 23:31:05

如何创建SECTIONOBJECT

请帮忙。我想使用Lisp创建节。规范中规定的点和深度。
名称-“第1节”
类型-Valume
带电部分-是
有可能吗?

MSasu 发表于 2022-7-5 23:45:50

那个“部分”是什么?切槽是实体吗?素描?垂直产品的实体(即Autodesk Mechanical)?
我认为你应该提供更多关于你的项目的信息;一张照片也会有很大帮助。

jan_ek 发表于 2022-7-6 00:06:56


我想创建一个显示在上面屏幕截图上的对象。这是autocad 2007
Autocad命令“SECTIONPLANE”。我想通过“entmake”创建。

Hippe013 发表于 2022-7-6 00:09:48

这是可能的。我建议您在模型空间上调用“AddSection”方法,而不是使用entmake。这个过程非常简单,然后你就不需要找出需要修改的dxf代码了。我只展示了一些粗略的代码来帮助您开始。
 

(setq p1 (getpoint "\nSelect first point:")) ;First Point of your section

(setq p2 (getpoint "\nSelect second point:"));Second Point of your Section

(setq v1 '(0 0 1));Plane Vector - (0 0 1) is straight up

(setq *acad* (vlax-get-acad-object));Get the ACAD object

(setq *ad* (vlax-get-property *acad* 'ActiveDocument));Get the Active Document

(setq *ms* (vlax-get-property *ad* 'ModelSpace));Get the Model Space

(setq section-object (vlax-invoke-method *ms* 'AddSection (vlax-3d-point p1)(vlax-3d-point p2)(vlax-3d-point v1)))
;Invoke the addsection method - Arguments is first point - next point - plane vector (All as variants)
 
使用
查看需要编辑的属性。希望这有帮助!

jan_ek 发表于 2022-7-6 00:24:54

谢谢你的建议。这很有帮助。(从未使用VLisp)
 
我有一个问题,如何获得交叉点列表并删除其中一个。

Hippe013 发表于 2022-7-6 00:40:31

您必须更详细地解释要删除的内容。同时,您可能需要研究“intersectwith”方法。
 
当做
 
Hippe013
页: [1]
查看完整版本: 如何创建SECTIONOBJECT