乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 29|回复: 7

[编程交流] 实体到网格LISP

[复制链接]

10

主题

13

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
50
发表于 2022-7-5 22:16:11 | 显示全部楼层 |阅读模式
我制作了一些脚本来处理实体。
前三种方法有效,但第三种方法无法使用meshsnmooth将实体转化为网格。
有人能帮忙吗?
 
  1. SOLIDS ERASE
  2. (
  3. (setvar "qaflags" 1)
  4. (setq SolidsErase (ssget "X" '((0 . "3dsolid"))))
  5. (command "ERASE" SolidsErase "")
  6. (setvar "qaflags" 0)
  7. )
  8. SOLIDS OFFSET BASE POINT
  9. (
  10. (setvar "qaflags" 1)
  11. (setq SolidsOffset (ssget "X" '((0 . "3dsolid"))))
  12. (command "MOVE" SolidsOffset "" "0,0,0" "5,5,0")
  13. (setvar "qaflags" 0)
  14. )
  15. SOLIDS OFFSET DISPLACEMENT
  16. (
  17. (setvar "qaflags" 1)
  18. (setq SolidsOffset (ssget "X" '((0 . "3dsolid"))))
  19. (command "MOVE" SolidsOffset "" "" "2,2,2")
  20. (setvar "qaflags" 0)
  21. )
  22. SOLIDS TO MESH
  23. (
  24. (setq SolidsToMesh (ssget "X" '((0 . "3dsolid"))))
  25. (command "MESHSMOOTH" SolidsToMesh "")
  26. )

 
谢谢
回复

使用道具 举报

GP_

8

主题

248

帖子

245

银币

初来乍到

Rank: 1

铜币
42
发表于 2022-7-5 22:27:48 | 显示全部楼层
试试这个:
 
  1. (vl-load-com)
  2. (vla-SendCommand
  3.    (vla-get-ActiveDocument (vlax-get-acad-object))
  4.    (strcat "MESHSMOOTH" " " "(ssget "X" '((0 . "3dsolid")))" " " " ")
  5. )
回复

使用道具 举报

10

主题

13

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
50
发表于 2022-7-5 22:39:32 | 显示全部楼层
谢谢,我会让你知道它是否有效。
 
是否有必要使用visual lisp?
我想在autolisp中保持简单。
回复

使用道具 举报

1

主题

475

帖子

481

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 22:50:19 | 显示全部楼层
 
在这一侧(仅在AutoCAD 2010中测试)
  1. (setq SolidsToMesh (ssget "X" '((0 . "3dsolid"))))
  2. (command "MESHSMOOTH" SolidsToMesh "")
按预期工作。
 
亨里克
回复

使用道具 举报

GP_

8

主题

248

帖子

245

银币

初来乍到

Rank: 1

铜币
42
发表于 2022-7-5 22:51:54 | 显示全部楼层
 
 
 
 
亨里克,代码是一样的。
它在我的A2014上不起作用。
回复

使用道具 举报

1

主题

475

帖子

481

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 23:07:31 | 显示全部楼层
 
 
您好,GP,
 
 
我知道代码是一样的,我只是对OP说,这是AC2010中预期的工作代码。。。
在你回复后,我在另一台机器上用AC2012和AC2014测试了OP代码,在所有版本中都正常工作。。。
 
 
亨里克
回复

使用道具 举报

GP_

8

主题

248

帖子

245

银币

初来乍到

Rank: 1

铜币
42
发表于 2022-7-5 23:12:02 | 显示全部楼层
嗨,Henrique,
 
在我的AC2014中,OP的代码仅适用于原始实体。
回复

使用道具 举报

1

主题

475

帖子

481

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 23:20:20 | 显示全部楼层
 
Gian Paolo,
 
我只测试了原始固体。。。
 
在AC2014中,在没有原始实体的情况下,只有按照您的建议使用vla SendCommand才能正常工作。
 
干杯
亨里克
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-11 06:15 , Processed in 0.416050 second(s), 68 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表