乐筑天下

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

[编程交流] 将lisp变大以获得矩形

[复制链接]

56

主题

259

帖子

213

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
270
发表于 2022-7-6 09:38:35 | 显示全部楼层
100648prloc85dq8lmac5e.jpg
 
这是维度块
回复

使用道具 举报

9

主题

167

帖子

163

银币

初来乍到

Rank: 1

铜币
43
发表于 2022-7-6 09:44:20 | 显示全部楼层
由于没有人知道块的尺寸,下面的代码适合插入第一个块。对于第二个,需要计算第二个插入点的位置。
 
  1. (command "_.insert" "path or block's name" point2 "x-scale" "y-scale" "rotation")

 
如果块已在图形中,请跳过路径
回复

使用道具 举报

9

主题

167

帖子

163

银币

初来乍到

Rank: 1

铜币
43
发表于 2022-7-6 09:46:32 | 显示全部楼层
好的,第二个块必须具有插入点=p3=>
  1. (setq p3 (polar point2 (* pi 1.5) 38.0))
回复

使用道具 举报

56

主题

259

帖子

213

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
270
发表于 2022-7-6 09:50:32 | 显示全部楼层
假设这是我开始的代码
 
  1. [font=Courier New](defun c:BOX ( / pt1 pt2 pt3 pt4 )(setq pt1 (getpoint "Pick first corner: "))(setq pt3 (getcorner pt1 "Pick opposite corner: "))(setq pt2 (list (car pt3) (cadr pt1)))(setq pt4 (list (car pt1) (cadr pt3)))(command "line" pt1 pt2 pt3 pt4 "c" )[/font](command "_.insert" "path or block's name" point2 "x-scale" "y-scale" "rotation")(setq p3 (polar point2 (* pi 1.5) 38.0))))

 
这样可以吗!
回复

使用道具 举报

9

主题

167

帖子

163

银币

初来乍到

Rank: 1

铜币
43
发表于 2022-7-6 09:51:47 | 显示全部楼层
如果块的名称为“123”,则它位于图形中,并且您希望接受x比例为1.0、y比例为1.0和旋转为0.0。
 
  1. (defun c:BOXX (/ osn pt1 pt2 p3)
  2. (setq osn (getvar "osmode"))
  3. (setvar "osmode" 0)
  4. (setq pt1 (getpoint "Pick first corner: "))
  5. (setq pt2 (getcorner pt1 "Pick opposite corner: "))
  6. (command "rectang" pt1 pt2)
  7. (command "_.insert" "123" pt2 "" "" "" )
  8. (setq p3 (polar pt2 (* pi 1.5) 38.0))
  9. (command "_.insert" "123" p3 "" "" "")
  10. (setvar "osmode" osn)
  11. (princ)
  12. )
回复

使用道具 举报

9

主题

167

帖子

163

银币

初来乍到

Rank: 1

铜币
43
发表于 2022-7-6 09:56:44 | 显示全部楼层
“BOX”是autocad的命令,因此不能将其用作defun的调用代码!
回复

使用道具 举报

11

主题

968

帖子

919

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
99
发表于 2022-7-6 09:57:37 | 显示全部楼层
你能不能制作一张样品图并附在这里,让我们看看它需要什么?
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-6 10:01:47 | 显示全部楼层
 
他们在两个不同的线程中重复了相同的请求,请查看。
 
http://www.cadtutor.net/forum/showthread.php?61231-Creating-a-lisp-help-needed&p=415942&viewfull=1#post415942
回复

使用道具 举报

56

主题

259

帖子

213

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
270
发表于 2022-7-6 10:06:36 | 显示全部楼层
好的,谢谢你,它起作用了。!
回复

使用道具 举报

4

主题

2143

帖子

2197

银币

限制会员

铜币
-24
发表于 2022-7-6 10:07:49 | 显示全部楼层
我已经合并了你的线程。请你每个问题只需要一个线程。创建多个线程只会让人困惑。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-7 08:35 , Processed in 0.476340 second(s), 72 queries .

© 2020-2025 乐筑天下

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