乐筑天下

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

[编程交流] 移动圆墙中的开口

[复制链接]

16

主题

104

帖子

88

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
80
发表于 2022-7-6 08:09:52 | 显示全部楼层 |阅读模式
目前,我正在建造一座大致呈班纳纳形状的建筑。我仍处于早期设计阶段,因此门窗会定期移动。大楼的半径约为60米,所以我很开心地旋转门,使其保持在正确的平面上,尤其是当我这些天筋疲力尽时,我的大脑真的无法跟上。
 
此时,我启动“旋转”命令,然后选择垂直于圆墙的门或分隔墙,然后选择圆墙的中心点作为基点,然后选择参考点,重新选择中心点,然后选择门或墙的中间,这样我可以看到元素移动到的位置。
 
当我试图学习LISP时,我想我应该尝试一下启动rotate命令,然后自动启动参考变量,选择rotate基点作为第一个参考点。到目前为止我有
 
  1. (defun C:ref ()
  2. ;Reference Rotates with centre point & 1st ref the same
  3. *****       
  4. (setq oldsnap (getvar "osmode"))
  5. ;Saving Snaps
  6. (setvar "osmode" 4)
  7. ;Set Centre of circle to osnap
  8. *****
  9. Get Points
  10. (setq cp (getpoint "\nCentre of Circle : "))
  11. ;Set centerpoint and first reference point
  12. (setvar "osmode" 32)
  13. Snaps on       
  14. (setq rp (getpoint "\nReference point : "))
  15. ;Set Second reference point
  16. (setq np (getpoint "\nSelect new position : "))
  17. ;select new position
  18. ******
  19. ;Start of command functions
  20. (command "rotate" ( ) cp cp rp np)
  21. ;Start rotate command
  22. ******
  23. (setvar "osmode" oldsnap)
  24. ;Reset snaps
  25. )        ;End of function

 
 
我现在想知道如何选择我想要旋转的位,然后告诉roate命令我想要使用参考点。此外,我想添加一些代码,让我可以选择启动复制功能。有人能给我一些关于如何做这些事情的提示吗。此外,对代码的建设性批评也非常受欢迎。
 
这更像是一个学习练习,而不是我会经常使用的东西,所以写LISP的努力不会有回报(除了那些可爱的知识)
090953wqovkoxnrkr14z7z.jpg
回复

使用道具 举报

pBe

32

主题

2722

帖子

2666

银币

后起之秀

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

铜币
211
发表于 2022-7-6 09:38:02 | 显示全部楼层
  1. (defun c:test  nil
  2.      (vl-cmdf
  3.            "_rotate"
  4.            (ssget)
  5.            "" "_cen"
  6.            (getpoint "\nPick Center point: ")
  7.            "r" "_non"
  8.            (getvar 'LastPoint) "_non"
  9.            (getpoint "\nPick Reference point: ")
  10.            pause
  11.            )
  12.      )
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-8 18:01 , Processed in 1.210269 second(s), 60 queries .

© 2020-2025 乐筑天下

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