使用AutoLISP进行图纸编号,
首先,我要说的是,我知道使用图纸集管理器可以更好地处理这一问题,但要让30多名起草者使用它几乎是不可能的。我们正在尝试自动化图纸中的图纸编号。现在,我们将选项卡重命名为“01 FloorPlan”和“02 Riging”。我知道如何调用CTAB变量来返回字段中选项卡的名称,但我想将返回的内容限制为仅前两个字符(即数值)。我找到了一个diesel表达式,其中包含了我想要的部分内容:
$(substr,$(getvar,ctab),2)
这将返回从第二个字符开始的CTAB值,并包括其后的任何内容。如何将其更改为仅返回前两个字符?
此外,我将在acaddoc中添加一行。lsp设置一个变量来返回(length(layoutlist))的值,以获得布局选项卡的总数。我用过这个:
(setvar“useri1”(长度(布局列表)))
但是,如果布局数量小于10,则仅返回一位数字。当一切都说了,做了,我想字段显示“01的08”,所以它会显示作为一个两位数的数字值的所有时间。
非常感谢您的任何帮助。 猜测,
$(substr,$(getvar,ctab),1,2)
(setvar "users1"
(strcat (nth (Strlen (Setq str (itoa (length (layoutlist)))))
'(x "0" ""))
str)) 第一个问题
$(substr,$(getvar,ctab),1,2)
将为您提供前2位数字和
$(substr,$(getvar,ctab),3)
如果您想将选项卡内容用于图形标题/描述,则将为您提供其余选项卡内容。对不起,第二点我帮不上忙
这或多或少是一个反问句,但是。。。。。。。。。。。。。为什么不可能?????
真的没有那么多需要“学习”
我们所做的是创建一个模板DST文件,如果需要,可以使用标准的自定义字段名
复制此。DST文件复制到每个后续作业中,并将最后一个作业中的字段复制到当前作业的标题栏中。
编辑SS中的属性,就完成了。
我知道大多数用户很难从零开始为每个项目设置一个,这就是为什么我们不这样做。
祝大家周末愉快! 这里有一个非常简单的方法让01-09 10等也有一个李Mac解析数字lisp看看。
; if less than 10
(if (< (car dwgnum) 10.0)
(setq newstr2 (strcat dwgname "-D0"(rtos sheetnum 2 0)))
(setq newstr2 (strcat dwgname "-D"(rtos sheetnum 2 0)))
) 另外,我已经阅读了布局名称,如果需要,请使用此dwg编号更新图纸标题栏。基本上,一旦你有了一个lisp,它很容易让它做更多的标题栏的东西。我有一个可以在标题栏中更改20个项目。
因为我只在这家公司工作了两周,对他们的工作没有任何影响。我提出使用外部参照,因为提到它,我几乎被钉死在十字架上。如果由我决定,我将使用SolidWorks或Inventor,而不是AutoCAN'T,但我被告知不要对其中任何一种抱有希望。
这也会过去的。当你在旧的工作中是一名替补时,你是这个球队的新手。
很明显,他们知道你知道自己的事情,否则你就不会被偷偷带走
你的旧契约。
不要捣乱,让他们了解你的长处,向他们证明你的实力
团队中有价值的新成员,有可信的意见供考虑。
你将变得非常忙碌,所以没有人会接受制造的想法
所有30名核心绘图员在接到通知后立即跳出火圈。
得到你之前暗指的重要工作,然后出门。
沿着这条路走下去,在工作很轻松的时候,让人们更容易接受,拿一幅夸张得可怕的画
并使用外部参照修复它,运行-清除和审核,并尽可能简化它。到那时你就会知道该找谁了。
优化然后演示。 好的(y) 更新(已编辑):
我已经放弃了强制纸张数量始终为两位数的想法。有人告诉我,我们的大多数绘图集都不到10张(通常在8张左右),所以这真的没什么大不了的。
但是,每次布局的数量发生变化时,我都必须重新运行宏以将useri1变量设置为正确的计数,然后我必须重新生成图形以更新字段。我想将这两种操作合并到一个命令中。理想情况下,我希望它在每次调用regen命令(键入RE或点击按钮)时更新变量并重新生成图形。我已尝试将REGEN命令的宏更改为^C^CSQTY_再生,^C^CU SQTY_regen或^C ^U regen_SQTY,似乎什么都没用。
我在其他论坛上看到过其他帖子,人们将多个宏组合成一个按钮,但他们并不清楚如何做到这一点。有人介意试试这个吗?
谢谢
页:
[1]
2