乐筑天下

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

[编程交流] 英寸到英尺的尺寸

[复制链接]

14

主题

75

帖子

65

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
75
发表于 2022-7-5 16:55:25 | 显示全部楼层 |阅读模式
嗨,朋友们,
 
我有59英寸的尺寸文本等等。我想转换为4'-11英寸规则高于18英寸的尺寸文本应该转换为英尺。快速lisp有任何可能性吗?
规则是:
 
查找带英寸(“)符号文本并除以“12”的文本。然后替换为“英尺-英寸”文本。例如4'-11“而不是59”。(如果大于18”文本值)
 
非常感谢。
英寸到英尺。图纸
回复

使用道具 举报

5

主题

1074

帖子

1088

银币

初来乍到

Rank: 1

铜币
9
发表于 2022-7-5 17:02:57 | 显示全部楼层
您当然可以使用其他标注样式,或者创建一个全新的标注样式。
回复

使用道具 举报

14

主题

75

帖子

65

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
75
发表于 2022-7-5 17:05:39 | 显示全部楼层
 
嗨,朋友,
感谢您的回复。是的,我已经试过你的想法了。但并非完全成功。请遵守样品图纸。有一维样式。在此样式中包含不同的文字。请看一看。在此标注样式中,不是原始标注。存在已编辑的文本。所以很难改变每一个文本。
 
非常感谢。
175527sms91qzzcd1koq8h.jpg
175528t2btj3tit3wd4di4.jpg
回复

使用道具 举报

5

主题

1074

帖子

1088

银币

初来乍到

Rank: 1

铜币
9
发表于 2022-7-5 17:10:19 | 显示全部楼层
您只需要设置dimstyle来执行您希望它执行的操作。
 
我在现有Dimsyle 1的基础上创建了一个新的dimstyle,并在dimstyle定义中调整了dimscale linear,因此您不需要覆盖所有尺寸。我删除了右侧线条中的所有替代,选择了所有尺寸标注,并将其在“快捷特性”中的dimstyle更改为dimstyle 1 Fixed。
 
我不知道你为什么没有在Modelspace中以1:1的比例绘制,这是公认的行业规范。
通常,使用Autocad时,用户可以在模型空间中以真人大小(1:1)绘制任何东西,这与传统的在纸上绘图不同,在纸上绘图很快就不可能了。
 
如果按比例缩放此图形。02,一切都将是正确的大小,在这种情况下,你将能够删除。02我应用于dimstyle的比例因子,在“快捷特性”选项卡的屏幕截图上以黄色高亮显示。
 
我刚刚在你的画中按比例缩放了对象。02,并调整标注样式以反映该更改,如黄色高亮显示的,暗比例线性不再为0.02,而是现在为1,如上一个屏幕截图所示。
 
我希望这对你有帮助。
175529f5rhrlxzbnxgelfs.jpg
英寸到英尺。图纸
175531zm70i7h92th72752.jpg
175533o6hxathtg0ath1h1.jpg
回复

使用道具 举报

14

主题

75

帖子

65

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
75
发表于 2022-7-5 17:10:50 | 显示全部楼层
你好
谢谢你的回复。这些图纸是由一个程序绘制的。这就是为什么我想通过自动化许多绘图过程来进行更改。
 
非常感谢。
回复

使用道具 举报

5

主题

1074

帖子

1088

银币

初来乍到

Rank: 1

铜币
9
发表于 2022-7-5 17:16:15 | 显示全部楼层
由于标注文字已被覆盖,这可能相当困难,更不用说比例尺不是预期的。
我对尺寸很在行,但对lisp一无所知,希望能找到一种自动排序的方法。
 
所有的图纸都会像这样缩放,比实际尺寸(50:1)大50倍吗?
答案可能很重要。
回复

使用道具 举报

14

主题

75

帖子

65

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
75
发表于 2022-7-5 17:20:37 | 显示全部楼层
是的,朋友,
 
我需要找到带有英寸(“)符号文本并除以“12”的文本。然后替换为“英尺-英寸”文本。例如4'-11“而不是59”。(如果超过18”文本值)
 
非常感谢。
回复

使用道具 举报

18

主题

1529

帖子

973

银币

中流砥柱

Rank: 25

铜币
649
发表于 2022-7-5 17:25:26 | 显示全部楼层
我同意达加德的评论。但是,尽管如此,这应该是可行的:
  1. (defun c:Test ( / doc ovr ss)
  2. (setq doc (vla-get-activedocument (vlax-get-acad-object)))
  3. (vla-endundomark doc)
  4. (vla-startundomark doc)
  5. (if (setq ss (ssget "_X" '((0 . "DIMENSION") (-4 . "<NOT") (1 . "") (-4 . "NOT>"))))
  6.    (vlax-for obj (setq ss (vla-get-activeselectionset doc))
  7.      (setq ovr (vla-get-textoverride obj))
  8.      (if
  9.        (and
  10.          (wcmatch ovr "*"")
  11.          (not (wcmatch ovr "*[~"0-9]*,*"*?"))
  12.          (< 18 (atoi ovr))
  13.        )
  14.        (vla-put-textoverride
  15.          obj
  16.          (strcat
  17.            (itoa (/ (atoi ovr) 12))
  18.            "'-"
  19.            (itoa (rem (atoi ovr) 12))
  20.            """
  21.          )
  22.        )
  23.      )
  24.    )
  25.    (vla-delete ss)
  26. )
  27. (vla-endundomark doc)
  28. (princ)
  29. )
回复

使用道具 举报

14

主题

75

帖子

65

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
75
发表于 2022-7-5 17:26:00 | 显示全部楼层
哇,罗伊,
 
太神奇了。谢谢你的巨大贡献。
回复

使用道具 举报

5

主题

1074

帖子

1088

银币

初来乍到

Rank: 1

铜币
9
发表于 2022-7-5 17:29:23 | 显示全部楼层
干得好,罗伊!
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-14 02:11 , Processed in 2.009330 second(s), 75 queries .

© 2020-2025 乐筑天下

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