乐筑天下

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

[编程交流] 尺寸样式创建(plz ch

[复制链接]

18

主题

58

帖子

41

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
91
发表于 2022-7-6 10:39:07 | 显示全部楼层 |阅读模式
尊敬的先生:
plz-chk我的新lisp创建dim风格&如何改进
  1. (defun c:dim100()
  2. ;check for layer and create if missing
  3. (if (= (tblsearch "layer" "Legend") nil)
  4. (command "layer" "make" "dimtest" "color" "7" "" "lt" "continuous" "" ""))
  5. ;check for style and create if missing
  6. (command "style" "style1" "arial.TTF" "0" "1" "0" "n" "n")
  7. (if (not (tblsearch "DImstyle" "Dim100"))
  8.    (progn(command "dimstyle" "S" "Dim100")
  9.      (command "dim" "style" "style1"
  10.        "DIMADEC"   0
  11.        "DIMALT"      0
  12.        "DIMALTD"     3
  13.        "DIMALTF"     0.0394
  14.        "DIMALTRND"   0.0000
  15.        "DIMALTTD"    3
  16.        "DIMALTTZ"    0
  17.        "DIMALTU"     2
  18.        "DIMALTZ"     0
  19.        "DIMASZ"      1.2000
  20.        "DIMATFIT"    3
  21.        "DIMAUNIT"    0
  22.        "DIMAZIN"     0
  23.        "DIMBLK"      "_Dot"
  24.        "DIMBLK1"     ""
  25.        "DIMBLK2"     ""
  26.        "DIMCLRD"     8
  27.        "DIMCLRE"     8
  28.        "DIMCLRT"     4
  29.        "DIMDEC"      0
  30.        "DIMDLE"      0.0000
  31.        "DIMDLI"      7.0000
  32.        "DIMEXE"      2.0000
  33.        "DIMEXO"      2.0000
  34.        "DIMFRAC"     0
  35.        "DIMGAP"      0.5000
  36.        "DIMJUST"     0
  37.        "DIMLFAC"     1.0000
  38.        "DIMLIM"      0
  39.        "DIMLUNIT"    2
  40.        "DIMLWD"     9
  41.        "DIMLWE"      9
  42.        "DIMRND"      0.0000
  43.        "DIMSAH"      0
  44.        "DIMSCALE"    100.0000
  45.        "DIMSD1"      0
  46.        "DIMSD2"      0
  47.        "DIMSE1"      0
  48.        "DIMSE2"      0
  49.        "DIMSOXD"     0
  50.        "DIMTAD"      1
  51.        "DIMTIH"      0
  52.        "DIMTIX"      1
  53.        "DIMTM"       0.0000
  54.        "DIMTMOVE"    0
  55.        "DIMTOFL"     1
  56.        "DIMTOH"      0
  57.        "DIMTSZ"      0.0000
  58.        "DIMTVP"      0.0000
  59.        "DIMTXSTY"    "style1"
  60.        "DIMTXT"      2.5000
  61.        "DIMFIT"         5 \e)
  62.      (command "dimstyle" "S" "Dim100" "Y")))(graphscr)(princ))
回复

使用道具 举报

35

主题

2471

帖子

2447

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
174
发表于 2022-7-6 10:43:17 | 显示全部楼层
我建议使用一系列特性和SETVAR函数,而不是长命令调用:
 
  1. (foreach SetupList '(("DIMADEC" . 0) ("DIMALT" . 0) ("DIMALTD" . 7))
  2. (setvar (car SetupList) (cdr SetupList))
  3. )

 
 
当做
回复

使用道具 举报

32

主题

1166

帖子

1146

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
159
发表于 2022-7-6 10:45:47 | 显示全部楼层
 
 
你也可以用entmake试试。见附件。确保DCL和LSP在一起,并且在ACAD搜索支持补丁中。请参见此处:http://www.cadtutor.net/forum/showthread.php?9184-代码发布指南
D风格。dcl
D风格。lsp
回复

使用道具 举报

18

主题

58

帖子

41

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
91
发表于 2022-7-6 10:49:18 | 显示全部楼层
尊敬的先生:
谢谢分享
1个问题I选择1:100比例
但昏暗的风格选择1ft。
回复

使用道具 举报

32

主题

1166

帖子

1146

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
159
发表于 2022-7-6 10:52:25 | 显示全部楼层
对不起,请注意,该计划是不完整的,需要更多的工作。
我没有时间完成它,但它应该会给你一些想法。
如果我今天有时间,我会看看我能做什么。
回复

使用道具 举报

32

主题

1166

帖子

1146

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
159
发表于 2022-7-6 10:55:09 | 显示全部楼层
试试这个。
D风格。dcl
D风格。lsp
回复

使用道具 举报

18

主题

58

帖子

41

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
91
发表于 2022-7-6 10:58:33 | 显示全部楼层
尊敬的先生:
thx回复
我正在使用mm drg
但同样的问题也存在
im选择1:100,但尺寸以英尺为单位
回复

使用道具 举报

32

主题

1166

帖子

1146

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
159
发表于 2022-7-6 11:01:55 | 显示全部楼层
 
这很可能是我在代码中使用的硬值。
你可以去掉所有的英制单位,保留公制单位。
正如我之前提到的,我需要一些时间来解决所有问题。需要更多条件。
我刚刚到达缩放部分,没有完成其余部分。
 
 
在这部分代码中,需要在这里更改值,就像您设置dimvariables一样。
你可以在这里使用你的价值观。请注意,我已将它们标识在右侧。
  1. ;
  2. ; DimStyle Create
  3. ;
  4. (defun DSTYLE_DIMSTYLE_CREATE (DSTY$ DSCL# AH$ FSTY$)
  5. (if (null (tblsearch "dimstyle" DSTY$))
  6.    (progn
  7.      (entmake
  8.        (list
  9.   (cons 0 "DIMSTYLE")                                           ; Entity Type
  10.   (cons 100 "AcDbSymbolTableRecord")                            ; Subclass marker
  11.   (cons 100 "AcDbDimStyleTableRecord")                          ; Subclass marker
  12.   (cons 2 DSTY$)                                                ; Dimstyle name
  13.   (cons 70 0)                                                   ; Standard flag value
  14.   (cons 3 "")                                                   ; DIMPOST
  15.   (cons 4 "")                                                   ; DIMAPOST
  16.   (cons 5  AH$)                                                 ; DIMBLK
  17.   (cons 6  AH$)                                                 ; DIMBLK1
  18.   (cons 7  AH$)                                                 ; DIMBLK2
  19.   (cons 40 DSCL#)                                               ; DIMSCALE
  20.   (cons 41 0.0937)                                              ; DIMASZ
  21.   (cons 42 0.0937)                                              ; DIMEXO
  22.   (cons 43 0.38)                                                ; DIMDLI
  23.   (cons 44 0.0625)                                              ; DIMEXE
  24.   (cons 45 0.0)                                                 ; DIMRND
  25.   (cons 46 0.0625)                                              ; DIMDLE
  26.   (cons 47 0.0)                                                 ; DIMTP
  27.   (cons 48 0.0)                                                 ; DIMTM
  28.   (cons 140 0.0937)                                             ; DIMTXT
  29.   (cons 141 0.09)                                               ; DIMCEN
  30.   (cons 142 0.0)                                                ; DIMTSZ
  31.   (cons 143 25.4)                                               ; DIMALTF
  32.   (cons 144 1.0)                                                ; DIMLFAC
  33.   (cons 145 0.0)                                                ; DIMTVP
  34.   (cons 146 1.0)                                                ; DIMTFAC
  35.   (cons 147 0.0625)                                             ; DIMGAP
  36.   (cons 71 0)                                                   ; DIMTOL
  37.   (cons 72 0)                                                   ; DIMLIM
  38.   (cons 73 0)                                                   ; DIMTIH
  39.   (cons 74 0)                                                   ; DIMTOH
  40.   (cons 75 0)                                                   ; DIMSE1
  41.   (cons 76 0)                                                   ; DIMSE2
  42.   (cons 77 0)                                                   ; DIMTAD
  43.   (cons 78 3)                                                   ; DIMZIM
  44.   (cons 170 0)                                                  ; DIMALT
  45.   (cons 171 2)                                                  ; DIMALTD
  46.   (cons 172 0)                                                  ; DIMTOFL
  47.   (cons 173 0)                                                  ; DIMSAH
  48.   (cons 174 0)                                                  ; DIMTIX
  49.   (cons 175 0)                                                  ; DIMSOXD
  50.   (cons 176 1)                                                  ; DIMCLRD
  51.   (cons 177 1)                                                  ; DIMCLRE
  52.   (cons 178 2)                                                  ; DIMCRRT
  53.   (cons 270 4)                                                  ; DIMUNIT
  54.   (cons 271 4)                                                  ; DIMDEC
  55.   (cons 272 4)                                                  ; DIMTDEC
  56.   (cons 273 2)                                                  ; DIMALTU
  57.   (cons 274 2)                                                  ; DIMALTTD
  58.   (cons 275 0)                                                  ; DIMAUNIT
  59.   (cons 276 2)                                                  ; DIMFRAC
  60.   (cons 277 4)                                                  ; DIMLUNIT
  61.   (cons 279 2)                                                  ; DIMTMOVE
  62.   (cons 280 0)                                                  ; DIMJUST
  63.   (cons 281 0)                                                  ; DIMSD1
  64.   (cons 282 0)                                                  ; DIMSD2
  65.   (cons 283 1)                                                  ; DIMTOLJ
  66.   (cons 284 0)                                                  ; DIMTZIN
  67.   (cons 285 0)                                                  ; DIMALTZ
  68.   (cons 286 0)                                                  ; DIMALTTZ
  69.   (cons 287 5)                                                  ; DIMFIT
  70.   (cons 288 0)                                                  ; DIMUPT
  71.   (cons 340 (tblobjname "style" FSTY$))                         ; DIMTXSTY
  72.   (cons 342 (cdr (assoc 330 (entget (tblobjname "block" AH$))))); DIMLDRBLK
  73.   (cons 343 (cdr (assoc 330 (entget (tblobjname "block" AH$))))); DIMLDRBLK1
  74.   (cons 344 (cdr (assoc 330 (entget (tblobjname "block" AH$))))); DIMLDRBLK2
  75.        )
  76.      )
  77.    )
  78. )
  79. (command "._-dimstyle" "_restore" DSTY$)                              ; Set dimstyle current
  80. (alert (strcat "\nThe current DimStyle name is "DSTY$"."
  81.                 "\nThe current DimScale set to "(rtos DSCL# 2 0)"."))
  82. )
  83. ;
  84. ;;;/////////////////////////////////////////////////////////
回复

使用道具 举报

32

主题

1166

帖子

1146

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
159
发表于 2022-7-6 11:06:51 | 显示全部楼层
我输入了你的价值观。尝试DSTYLE2。lsp
 
我需要为点类型箭头创建自定义箭头块。
DSTYLE2.lsp
DSTYLE2.dcl
回复

使用道具 举报

32

主题

1166

帖子

1146

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
159
发表于 2022-7-6 11:10:25 | 显示全部楼层
好的,我们现在有一个自定义点箭头。我这次需要的是你的字体风格信息,这应该就完成了。见附件。
DSTYLE2.dcl
DSTYLE2.lsp
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-6 17:06 , Processed in 0.531344 second(s), 72 queries .

© 2020-2025 乐筑天下

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