乐筑天下

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

[编程交流] 用于创建顶部/侧面Vie的LISP

[复制链接]

11

主题

44

帖子

33

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
55
发表于 2022-7-6 02:55:15 | 显示全部楼层 |阅读模式
大家好,
 
我正在尝试编写一个代码,在这个代码中,我可以从W型梁的横截面投影顶视图和侧视图(示例请参见随附的方框)。
 
我已经尽力了,但这是我在转动轮子之前所能做的。
 
  1. (Defun c:fd (/ d1 d2 d3 d4 p1)
  2. (SETQ D1 (GETDIST "\nWhat is Flange width: "))
  3. (setq d2 (getdist "\nWhat is Flange thickness: "))
  4. (setq d3 (getdist "\nWhat is Web thickness: "))
  5. (setq d4 (getdist "\nWhat is Depth: "))
  6. (setq p1 (getpoint "\nBasepoint for top view: "))
  7. (command
  8.    "line" p1 @d1.0
  9. )
  10. )

 
请注意,此lisp仅适用于W型梁,我不需要全面的lisp。如果需要,我应该能够修改这个lisp,以适应未来的需要。最后,我还没有添加任何错误捕捉,因为我还没有到那个阶段。
 
非常感谢您的帮助。
W10x45(W250x67)。图纸
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-6 03:17:16 | 显示全部楼层
似乎要经历很多事情。我想这些信息已经可以通过另一种方式获得了。
回复

使用道具 举报

11

主题

44

帖子

33

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
55
发表于 2022-7-6 03:22:41 | 显示全部楼层
我也这么认为,我在过去的一个小时里一直在尝试搜索它,但还没有任何运气。。。我会继续寻找解决方案/想法,当我能找到的时候,把我的发现/解决方案张贴在这里。
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-6 03:33:45 | 显示全部楼层
你搜索得不够彻底。你需要的是艾尔的钢厂。看看这个。。。
 
035521e07t93u12pzk2lpj.jpg
 
Ta da!你现在注意到我了吗?
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 03:47:37 | 显示全部楼层
我为另一个论坛写了这个lisp,希望这就是你想要的。
 
  1. (defun c:IProfile (/ seg p p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11)
  2. ;;;;;        Author : Tharwat Al Shoufi    www.Autolisp.com    ;;;;;
  3. ;;;;;        14. November. 2012 , Codes to draw I profile         ;;;;;
  4. (if (and
  5.        (setq
  6.          *l* (cond
  7.                ((getdist (strcat "\n Specify Length "
  8.                                  (if *l*
  9.                                    (strcat "< " (rtos *l* 2 2) " > :")
  10.                                    " :"
  11.                                  )
  12.                          )
  13.                 )
  14.                )
  15.                (t *l*)
  16.              )
  17.        )
  18.        (setq
  19.          *w* (cond
  20.                ((getdist (strcat "\n Specify Width "
  21.                                  (if *w*
  22.                                    (strcat "< " (rtos *w* 2 2) " > :")
  23.                                    " :"
  24.                                  )
  25.                          )
  26.                 )
  27.                )
  28.                (t *w*)
  29.              )
  30.        )
  31.        (setq *ft*
  32.               (cond
  33.                 ((getdist (strcat "\n Flange Thickness "
  34.                                   (if *ft*
  35.                                     (strcat "< " (rtos *ft* 2 2) " > :")
  36.                                     " :"
  37.                                   )
  38.                           )
  39.                  )
  40.                 )
  41.                 (t *ft*)
  42.               )
  43.        )
  44.        (setq *wt*
  45.               (cond
  46.                 ((getdist (strcat "\n Web Thickness "
  47.                                   (if *wt*
  48.                                     (strcat "< " (rtos *wt* 2 2) " > :")
  49.                                     " :"
  50.                                   )
  51.                           )
  52.                  )
  53.                 )
  54.                 (t *wt*)
  55.               )
  56.        )
  57.        (if (and (> *l* *ft*) (> *l* *wt*) (> *w* *ft*) (> *w* *ft*))
  58.          t
  59.          (princ "\n Length and Width must be the tallest")
  60.        )
  61.        (setq p (getpoint "\n Specify a point :"))
  62.      )
  63.    (progn
  64.      (setq p1  (polar p 0.0 *w*)
  65.            p2  (polar p1 (* pi 0.5) *ft*)
  66.            p3  (polar p2 pi (setq seg (- (/ *w* 2.) (/ *wt* 2.))))
  67.            p4  (polar p3 (* pi 0.5) (- *l* (+ *ft* *ft*)))
  68.            p5  (polar p4 0.0 seg)
  69.            p6  (polar p5 (* pi 0.5) *ft*)
  70.            p7  (polar p6 pi *w*)
  71.            p8  (polar p7 (* pi 1.5) *ft*)
  72.            p9  (polar p8 0. seg)
  73.            p10 (polar p9 (* pi 1.5) (- *l* (+ *ft* *ft*)))
  74.            p11 (polar p10 pi seg)
  75.      )
  76.      (entmakex (list '(0 . "LWPOLYLINE")
  77.                      '(100 . "AcDbEntity")
  78.                      '(100 . "AcDbPolyline")
  79.                      '(90 . 12)
  80.                      '(70 . 1)
  81.                      (cons 10 p)
  82.                      (cons 10 p1)
  83.                      (cons 10 p2)
  84.                      (cons 10 p3)
  85.                      (cons 10 p4)
  86.                      (cons 10 p5)
  87.                      (cons 10 p6)
  88.                      (cons 10 p7)
  89.                      (cons 10 p8)
  90.                      (cons 10 p9)
  91.                      (cons 10 p10)
  92.                      (cons 10 p11)
  93.                )
  94.      )
  95.    )
  96. )
  97. (princ)
  98. )
回复

使用道具 举报

26

主题

1495

帖子

20

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
118
发表于 2022-7-6 04:03:38 | 显示全部楼层
如果您只是处理梁:
 
http://www.cadtutor.net/forum/archive/index.php/t-1220.html
 
 
 
一个古老但优秀的程序-大卫
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-10 22:11 , Processed in 0.686813 second(s), 66 queries .

© 2020-2025 乐筑天下

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