乐筑天下

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

[编程交流] LISP中的标注/文字

[复制链接]

1

主题

1

帖子

0

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 06:41:08 | 显示全部楼层 |阅读模式
大家好,我是lisp的新手,我目前正在写一些文章来创建具有主要尺寸和以下部分名称的钢结构部分。
 
我在将维度(在新的维度层)添加到我的lisp文件和我的节下面的文本文件(也在新的文本层)时遇到问题。
 
我附上了我的lisp文件和一张我试图实现的图片。
 
任何帮助都将不胜感激!
PFC.pdf
pfc.lsp
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 08:08:48 | 显示全部楼层
欢迎来到CadTutor
 
在调用lisp例程之前,请调整尺寸样式,以便很好地显示截面。
 
请告诉我代码是如何为您运行的。
 
  1. (defun c:PFC (/ *error* _Mid p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12)
  2. ;;----- Tharwat 13. April. 2013 -----;;
  3. (defun *error* (x)
  4.    (setvar 'cmdecho 1)
  5.    (princ "\n *Cancel*")
  6. )
  7. (defun _Mid (a b)
  8.    (mapcar '(lambda (j k) (/ (+ j k) 2.)) a b)
  9. )
  10. (if (not (tblsearch "LAYER" "STEEL"))
  11.    (entmake (list '(0 . "LAYER")
  12.                   '(100 . "AcDbSymbolTableRecord")
  13.                   '(100 . "AcDbLayerTableRecord")
  14.                   '(70 . 0)
  15.                   (cons 2 "STEEL")
  16.                   '(62 . 252)
  17.             )
  18.    )
  19. )
  20. (if (setq p1 (getpoint "\n Specify base point:"))
  21.    (progn
  22.      (setvar 'cmdecho 0)
  23.      (entmakex
  24.        (list
  25.          '(0 . "LWPOLYLINE")
  26.          '(100 . "AcDbEntity")
  27.          '(100 . "AcDbPolyline")
  28.          '(8 . "STEEL")
  29.          '(90 . 10)
  30.          '(70 . 1)
  31.          (cons 10 p1)
  32.          '(40 . 0.0)
  33.          '(41 . 0.0)
  34.          '(42 . 0.0)
  35.          (cons 10 (setq p2 (polar p1 0. 90.)))
  36.          '(40 . 0.0)
  37.          '(41 . 0.0)
  38.          '(42 . 0.0)
  39.          (cons 10 (setq p3 (polar p2 (* pi 0.5) 15.)))
  40.          '(40 . 0.0)
  41.          '(41 . 0.0)
  42.          '(42 . 0.0)
  43.          (cons 10 (setq p4 (polar p3 pi 70.)))
  44.          '(40 . 0.0)
  45.          '(41 . 0.0)
  46.          '(42 . -0.414214)
  47.          (cons 10 (setq p5 (polar (polar p4 pi 12.) (* pi 0.5) 12.)))
  48.          '(40 . 0.0)
  49.          '(41 . 0.0)
  50.          '(42 . 0.0)
  51.          (cons 10 (setq p6 (polar p5 (* pi 0.5) 196.)))
  52.          '(40 . 0.0)
  53.          '(41 . 0.0)
  54.          '(42 . -0.414214)
  55.          (cons 10 (setq p7 (polar (polar p6 (* pi 0.5) 12.) 0. 12.)))
  56.          '(40 . 0.0)
  57.          '(41 . 0.0)
  58.          '(42 . 0.0)
  59.          (cons 10 (setq p8 (polar p7 0. 70.)))
  60.          '(40 . 0.0)
  61.          '(41 . 0.0)
  62.          '(42 . 0.0)
  63.          (cons 10 (setq p9 (polar p8 (* pi 0.5) 15.)))
  64.          '(40 . 0.0)
  65.          '(41 . 0.0)
  66.          '(42 . 0.0)
  67.          (cons 10 (setq p10 (polar p9 pi 90.)))
  68.          '(40 . 0.0)
  69.          '(41 . 0.0)
  70.          '(42 . 0.0)
  71.        )
  72.      )
  73.      (command "_.dimlinear"
  74.               "_none"
  75.               (setq p11 (polar (_Mid p5 p6) (* pi 0.5) 25.))
  76.               "_none"
  77.               (setq p12 (polar (_Mid p10 p1) (* pi 0.5) 25.))
  78.               "_none"
  79.               p12
  80.      )
  81.      (command "_.dimlinear"
  82.               "_none"
  83.               p10
  84.               "_none"
  85.               p1
  86.               "_none"
  87.               (polar p10 pi 25.)
  88.      )
  89.      (command "_.dimlinear"
  90.               "_none"
  91.               p10
  92.               "_none"
  93.               p9
  94.               "_none"
  95.               (polar p10 (* pi 0.5) 15.)
  96.      )
  97.      (command "_.dimlinear"
  98.               "_none"
  99.               p9
  100.               "_none"
  101.               p8
  102.               "_none"
  103.               (polar p8 0. 15.)
  104.      )
  105.      (entmakex
  106.        (list '(0 . "MTEXT")
  107.              '(100 . "AcDbEntity")
  108.              '(100 . "AcDbMText")
  109.              '(40 . 10.)
  110.              '(71 . 5)
  111.              (cons 7 (getvar 'textstyle))
  112.              '(8 . "STEEL")
  113.              '(42 . 0.0)
  114.              '(50 . 0.)
  115.              (cons 10 (polar (polar p1 0. 45.) (* pi 1.5) 20.))
  116.              '(1 . "{\\L250 PFC}")
  117.        )
  118.      )
  119.      (setvar 'cmdecho 1)
  120.    )
  121. )
  122. (princ "\nWritten by Tharwat Al Shoufi")
  123. (princ)
  124. )
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-10 15:05 , Processed in 1.136317 second(s), 56 queries .

© 2020-2025 乐筑天下

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