乐筑天下

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

[编程交流] 三维实体的并集

[复制链接]

28

主题

317

帖子

292

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
140
发表于 2022-7-5 23:44:46 | 显示全部楼层 |阅读模式
大家好!
 
我试图通过lisp合并一些3dsolids,但到目前为止无法实现。这是我要调试的代码
有两件事我不确定:
1-我的selset是由什么制成的?2个实体、2个圆或2个圆和2个实体?
2-我们可以将selset馈送到命令吗?
 
谢谢你的指导,圣诞快乐!
杰夫!
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-5 23:51:23 | 显示全部楼层
我猜想它是两个固体。
回复

使用道具 举报

28

主题

317

帖子

292

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
140
发表于 2022-7-5 23:55:29 | 显示全部楼层
我想这是一个好的开始,因为我需要的选择集是2个实体。
但谜团依然存在。。。我们可以将selset馈送给命令吗?怎样我想我已经很接近了,但我自己还没想好。
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-5 23:58:59 | 显示全部楼层
我认为用户不会自己进行选择(例如,通过窗口选择对象)。对的
回复

使用道具 举报

28

主题

317

帖子

292

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
140
发表于 2022-7-6 00:02:01 | 显示全部楼层
确切地lisp生成3dsolids而不是将其合并(除了启动命令..生成3dsolids并将其合并)=之外,用户没有任何输出)
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-6 00:06:04 | 显示全部楼层
我只是这里的守夜人,不是Lisp程序的大师,但我会看看是否能找到你问题的答案。
回复

使用道具 举报

GP_

8

主题

248

帖子

245

银币

初来乍到

Rank: 1

铜币
42
发表于 2022-7-6 00:10:54 | 显示全部楼层
(命令“UNION”selset“”)
回复

使用道具 举报

28

主题

317

帖子

292

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
140
发表于 2022-7-6 00:14:32 | 显示全部楼层
无聊的!当然
我尝试的第一件事是(命令联合selset),我简直不敢相信我没有注意到我在10行lisp上使用的第五个命令没有引号。
非常感谢你!
回复

使用道具 举报

GP_

8

主题

248

帖子

245

银币

初来乍到

Rank: 1

铜币
42
发表于 2022-7-6 00:17:36 | 显示全部楼层
不客气,杰夫!
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 00:22:00 | 显示全部楼层
下面是另一个使用ActiveX方法的路由:
  1. ([color=BLUE]defun[/color] c:test ( [color=BLUE]/[/color] cir1 cir2 doc reg1 reg2 sol1 sol2 spc )
  2.    ([color=BLUE]setq[/color] doc  ([color=BLUE]vla-get-activedocument[/color] ([color=BLUE]vlax-get-acad-object[/color]))
  3.          spc  ([color=BLUE]vlax-get-property[/color] doc ([color=BLUE]if[/color] ([color=BLUE]=[/color] 1 ([color=BLUE]getvar[/color] 'cvport)) 'paperspace 'modelspace))
  4.          cir1 ([color=BLUE]vlax-invoke[/color] spc 'addcircle '(0.0 0.0 0.0) 1.0)
  5.          cir2 ([color=BLUE]vlax-invoke[/color] spc 'addcircle '(0.0 0.0 0.0) 0.5)
  6.          reg1 ([color=BLUE]vlax-invoke[/color] spc 'addregion ([color=BLUE]list[/color] cir1))
  7.          reg2 ([color=BLUE]vlax-invoke[/color] spc 'addregion ([color=BLUE]list[/color] cir2))
  8.          sol1 ([color=BLUE]vlax-invoke[/color] spc 'addextrudedsolid ([color=BLUE]car[/color] reg1)  0.1 0.0)
  9.          sol2 ([color=BLUE]vlax-invoke[/color] spc 'addextrudedsolid ([color=BLUE]car[/color] reg2) -0.1 0.0)
  10.    )
  11.    ([color=BLUE]vla-boolean[/color] sol1 [color=BLUE]acunion[/color] sol2)
  12.    ([color=BLUE]foreach[/color] obj ([color=BLUE]vl-list*[/color] cir1 cir2 ([color=BLUE]append[/color] reg1 reg2)) ([color=BLUE]vla-delete[/color] obj))
  13.    ([color=BLUE]princ[/color])
  14. )
  15. ([color=BLUE]vl-load-com[/color]) ([color=BLUE]princ[/color])

也许有些值得思考的东西。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-10 21:08 , Processed in 0.551836 second(s), 72 queries .

© 2020-2025 乐筑天下

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