明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2035|回复: 5

再顶一次,标注样式的问题

[复制链接]
发表于 2005-4-12 00:25:00 | 显示全部楼层 |阅读模式
在ACADSIO.DWT中,用LISP生成自己的标注样式,我还未搞清楚。
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2005-4-12 00:51:00 | 显示全部楼层
为什么要用lsp?dwt你改一次就可以用1万年了。
发表于 2005-4-12 12:18:00 | 显示全部楼层
________________________________________________2.10 自动建立标注样式_________________________________________________________
(defun c:dm (/ sct sca dsname SCALL SCTEXT)
  (princ "\n命令解释为D)imstyle  (M)aker")
  (mkani)
  (setvar "cmdecho" 0)
  (princ "\n形成的标注样式名为:smdimA-B:")
  (setq scall (getreal "\n请输入比例值A:"))
  (setq sctext (getreal "\n请输入比例值B:"))
  (if (and sctext scall)
    (progn
      (setq sca    (rtos scall)
     sct    (rtos sctext)
     dsname (strcat "smdim" sca "-" sct)
      )
     
      (if (and (tblsearch "STYLE" "SM")
        (not (tblsearch "DIMSTYLE" dsname))
   )
 (progn
   (princ (strcat "\n新添加的标注样式名称将被命名为: " dsname))
   (entmake (list
       '(0 . "DIMSTYLE")
       '(100 . "AcDbSymbolTableRecord")
       '(100 . "AcDbDimStyleTableRecord")
       (cons 2 dsname)
       '(70 . 0)
       '(3 . "")
       '(4 . "")
       '(5 . "")
       '(6 . "")
       '(7 . "")
       (cons 40 (distof (rtos scall)))
       '(41 . 2.5)
       '(42 . 0.625)
       '(43 . 3.75)
       '(44 . 1.25)
       '(45 . 0.0)
       '(46 . 0.0)
       '(47 . 0.0)
       '(48 . 0.0)
       '(140 . 3.0)
       '(141 . 2.5)
       '(142 . 0.0)
       '(143 . 0.0393701)
       (cons 144 (distof (rtos sctext)))
       '(145 . 0.0)
       '(146 . 1.0)
       '(147 . 0.625)
       '(71 . 0)
       '(72 . 0)
       '(73 . 0)
       '(74 . 1)
       '(75 . 0)
       '(76 . 0)
       '(77 . 1)
       '(78 . 8)
       '(170 . 0)
       '(171 . 3)
       '(172 . 1)
       '(173 . 0)
       '(174 . 0)
       '(175 . 0)
       '(176 . 3)
       '(177 . 3)
       '(178 . 3)
       '(270 . 2)
       '(271 . 0)
       '(272 . 0)
       '(273 . 2)
       '(274 . 3)
       (cons 340 (tblobjname "style" "SM"))
       '(275 . 0)
       '(280 . 0)
       '(281 . 0)
       '(282 . 0)
       '(283 . 0)
       '(284 . 8)
       '(285 . 0)
       '(286 . 0)
       '(287 . 3)
       '(288 . 0)
     )
   )
   (command "-DIMSTYLE" "r" dsname)
   (setvar "DIMFIT" 1)
   (setvar "DIMUPT" 1)
   (setvar "DIMtad" 2)
   (command "-dimstyle" "save" (strcat dsname "$3"))
   (command "-dimstyle" "save" (strcat dsname "$4"))
   (setvar "DIMtad" 2)
   (setvar "DIMtih" 1)
   (setvar "DIMtoh" 1)
   (setvar "DIMfit" 1)
   (setvar "DIMUPT" 1)
   (command "-dimstyle" "save" (strcat dsname "$2"))
   (command "-dimstyle" "r" "iso-25")
 )
 (princ "\n该样式可能已经曾在,或本图不曾在SM字体!")
      )
    )
  )
  (princ)
)

 楼主| 发表于 2005-4-13 00:02:00 | 显示全部楼层
为什么要用lsp?dwt你改一次就可以用1万年了。 1)dwt不能适应不同出图比例情况,机械标注中带各种前缀的标注样式时候较多,必需手动修改,所以不方便。 2)不明白的地方想尽可能搞清楚 TO 楼上 程序中(mkani)没有对应的代码,将这行删除,也没有生成新的样式。
发表于 2005-4-23 18:23:00 | 显示全部楼层
我想请教高手:


  如何在LISP中获取单个标注的DIMLFAC???


希望不是通过点计算得来的!!!


谢了!!!!!
发表于 2006-12-29 14:55:00 | 显示全部楼层

其中"SM"是个字体样式名,你先研究一下啊

http://bbs.mjtd.com/forum.php?mod=viewthread&tid=29987

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

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-11-23 11:33 , Processed in 0.179027 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表