如何用entmake填充带弧线的区域?
:'(试了好久都不成功,论坛上也没找到例子,理论上在群码10之间插入凸度42,不知道还有哪些要修改的,大佬们救救孩子,给个成功的例子也行:'( 你用entget查看一下,42是弓高比 本帖最后由 liuhe 于 2024-4-25 08:44 编辑(vl-load-com)
(defun c:Example_AddHatch()
;; This example creates an associative gradient hatch in model space.
(setq acadObj (vlax-get-acad-object))
(setq doc (vla-get-ActiveDocument acadObj))
;; Define the hatch
(setq patternName "CYLINDER")
(setq patternType acPreDefinedGradient)
(setq bAssociativity :vlax-true)
;; Create the associative Hatch object in model space
(setq modelSpace (vla-get-ModelSpace doc))
(setq hatchObj (vla-AddHatch modelSpace patternType patternName bAssociativity acGradientObject))
(setq col1 (vlax-create-object "AutoCAD.AcCmColor.19"))
(setq col2 (vlax-create-object "AutoCAD.AcCmColor.19"))
(vla-SetRGB col1 255 0 0)
(vla-SetRGB col2 0 255 0)
(vla-put-GradientColor1 hatchObj col1)
(vla-put-GradientColor2 hatchObj col2)
;; Create the outer boundary for the hatch (a circle)
(setq center (vlax-3d-point 3 3 0))
(setq radius 1)
(setq circle (vla-AddCircle modelSpace center radius))
(setq outerLoop (vlax-make-safearray vlax-vbObject '(0 . 0)))
(vlax-safearray-put-element outerLoop 0 circle)
;; Append the outerboundary to the hatch object, and display the hatch
(vla-AppendOuterLoop hatchObj outerLoop)
(vla-Evaluate hatchObj)
(vla-Regen doc :vlax-true)
(vlax-release-object col1)
(vlax-release-object col2)
)
官方例子,用这个方法简单点,只需要自己创建边界就行了,最好用solid填充,因为其他方法填充在求解的时候然后不更新。 自贡黄明儒 发表于 2024-4-25 07:05
你用entget查看一下,42是弓高比
就是添加了42也没成功,不知道缺了什么 liuhe 发表于 2024-4-25 08:41
官方例子,用这个方法简单点,只需要自己创建边界就行了,最好用solid填充,因为其他方法填充在求解的 ...
这个可以,感谢大佬:D-
(做个笔记:AutoCAD.AcCmColor.19这句要改成对应版本的CAD,CAD2018对应是AutoCAD.AcCmColor.22) liuhe 发表于 2024-4-25 08:41
官方例子,用这个方法简单点,只需要自己创建边界就行了,最好用solid填充,因为其他方法填充在求解的 ...
请问下这个文档在哪里查看的? hw8810 发表于 2024-4-25 09:39
请问下这个文档在哪里查看的?
葵花宝典、vba参考啊,cad自带帮助应该也有,多去搜索cad自带的帮助 entmake做填充,需要认真理解它的边界数据以及各种类型的边界,如果说在已有的带弧的多段线内进行填充,那么需要获取这条多段线的DXF数据,提取其中的直线段,以及弧段,用不同的边界类型去表达它们
可以手动对一个带弧的多段线进行填充,然后通过entget得到这个填充的DXF数据,对照帮助文件的填充类图元的DXF数据来进行理解,注意区分图案数据和边界数据,着重理解各种不同边界 自贡黄明儒 发表于 2024-4-25 07:05
你用entget查看一下,42是弓高比
厉害啊 我的儒哥 llsheng_73 发表于 2024-4-25 10:04
entmake做填充,需要认真理解它的边界数据以及各种类型的边界,如果说在已有的带弧的多段线内进行填充,那 ...
感谢大佬。我手动看了里面有很多文档也没解释的dxf码就不知道什么意思了,所以想问下大伙有没有成功的案例
页:
[1]
2