刘振华(Ben) 发表于 2021-8-17 14:18:49

CoCreate标注小数点由两位变成一位

哪位大神有自动改变标注尺寸的小数点位数的LISP吗?

我标注的时候现在设置成2个小数点,但是由于精度的问题,我需要把它改成一个小数点。

现在的方法是改小数点的位数需要右键点尺寸属性,然后在format栏里选.1, 这样比较麻烦,最好有那种刷子一样的LISP,刷一下就变成1位。




Superman 发表于 2021-8-17 17:26:21

1.如果需要全局将标注小数点改成1位(这种比较少见,精度不够),可以在<文件>—<设置>—<尺寸>—<尺寸全局设置>,将全局标注尺寸小数点改为1位。


2.如果只是单独想要某个尺寸或图页尺寸小数点改为1位(其他的尺寸或图页还是为多位小数),可以在标注命令中,单独设置为1位


3.如果要将已经标注好的尺寸,修改为1位小数,可以先修改某个尺寸位数为.1,然后点击“复制到”,将此设置好的格式,复制到其他尺寸,那么其他尺寸都变成了1位小数。


你想要的应该是第三种方法。

刘振华(Ben) 发表于 2021-8-19 13:43:04

是的,之前很少用这个复制到的命令。

renchaoroy 发表于 2021-10-14 13:10:54

(sd-defdialog 'DimPrecision1
        :dialog-title "一位小数"
        :variables
        '(
                (DimensionObject
                :selection *sd-anno-dimension-seltype* :multiple-itemst
                :title "选择尺寸"))
        :ok-action '(sd-call-cmds
        (am_dim_props
        :dim_list DimensionObject
        :main_value_precision 1
        :page :text_props)))

Superman 发表于 2021-10-14 16:45:47

renchaoroy 发表于 2021-10-14 13:10


这个是lisp代码吗?20.1版测试不能用,请教一下如何使用?

renchaoroy 发表于 2021-10-14 19:30:01

保存为一个lisp文件,然后自动加载啊,这个操作论坛是有贴的。
(in-package 'sd-dimPrecision)
(use-package 'oli)

(sd-defdialog 'DimPrecision1
      :dialog-title "一位小数"
      :variables
      '(
                (DimensionObject
                :selection *sd-anno-dimension-seltype* :multiple-itemst
                :title "选择尺寸"))
      :ok-action '(sd-call-cmds
      (am_dim_props
      :dim_list DimensionObject
      :main_value_precision 1
      :page :text_props)))

renchaoroy 发表于 2021-10-14 19:34:28

重新写了一下,让大家更方便点,直接新建一个工具按钮,把以下代码复制到按钮内的代码框就行了。

cancel_all
(oli::sd-defdialog 'DimPrecision01
      :dialog-title "一位小数"
      :variables
      '(
                (DimensionObject
                :selection *sd-anno-dimension-seltype* :multiple-itemst
                :title "选择尺寸"))
      :ok-action '(sd-call-cmds
      (am_dim_props
      :dim_list DimensionObject
      :main_value_precision 1)))
DimPrecision01

renchaoroy 发表于 2021-10-14 19:36:50

renchaoroy 发表于 2021-10-14 19:34
重新写了一下,让大家更方便点,直接新建一个工具按钮,把以下代码复制到按钮内的代码框就行了。

...

要改两位小数或者三位小数,把:main_value_precision 1中的1改为2 或者3就行了,如果不要小数,就是0啦。

renchaoroy 发表于 2021-10-14 19:44:58

Superman 发表于 2021-10-14 16:45
这个是lisp代码吗?20.1版测试不能用,请教一下如何使用?

可以的,之前16.0的时候可以通过录制宏来快速变小数位数,从17.0开始,原来很多的命令就不能用了,这段小程序是按新版的命令写的。

刘振华(Ben) 发表于 2021-10-14 21:39:10

非常不错,这个对2D图标注非常有用,能快速提高效率
页: [1] 2
查看完整版本: CoCreate标注小数点由两位变成一位