youland 发表于 2023-4-11 09:29

creo尺子阵列刻度且逢5逢10长度不一

在creo里用阵列画一个尺子,阵列刻度线,一条命令搞定三种刻度线的长度,并且加上数字标记


先上成品图




1,拉伸一个尺子形状,如图,长度为43MM




2,用投影方向在尺子的斜面和上表面投影一条刻度线




3,用草绘的方式来画这个刻度线




4,在草绘里面,点定义,定义草绘的基本平面




5,选取一个面做来草绘的平面,建议选下面那个大平面




6,画一条刻度线,长度为5MM,离中心距离为20MM




7,曲面这里,就是要投影的面,我们选那个斜边和上表面,即要把线投影到这两个面上来。
按住ctrl,点选这两个面。




8,方向参考那里点一下,投影方向选沿方向,选上表面做为方向的参考




9,投影方向向下。默认的方向是向上的,点一下向上的箭头,就变成向下了。




10,进入阵列
选择第一方向的尺寸20,增量为-1,也就是向右阵列,数量41个。




11,按住ctrl键,选取刻度线的长度5,在方向1里面选取这个,点“按关系定义增量”,进入关系式编辑模式。




12,关系式如下
if floor(idx1/5)*5 != idx1
memb_v=2
else
memb_v=3.5
endif

if floor(idx1/10)*10 == idx1
memb_v=5
endif解释:
阵列数量是0-40一共41个,所以idx1最大是40,也就是说idx1就是0-40之间的一个灵敏。
如果第x个刻度不能被5整除,刻度长2,否则刻度长度为3.5.
如果第x个刻度能被10整除,刻度长5.

floor是向下取整,例如floor(3.5)=3
举例:idx1=18,也就是说第18个刻度,18/5=3.6,floor(3.6)=3,3*5=15,等号左边的是15,右边是idx1是18,不相等,所以第18个刻度就是2MM。


youland 发表于 2023-4-11 09:31

在尺子上阵列数字,完成如下图



1,打开草绘,添加一个点,标注为1



2,打开工具--关系,弹出对话框。
展开局部参数,点+号,增加一个参数。名称自己取,例如:A。类型:字符串。值:01234
关系栏里添加一行关系:letter=extract(A,sd0,1)。说明一下,这里的sd0就是之前添加点的那个尺寸,每个人不一样。
最后点确定。



3,点文本,在第一条线下面添加文字,文字选用我们上面写好的参数,即使用参数,选letter这个参数。



4,调整一下文字的尺寸位置,完成文字绘制。



5,对文字进行阵列。
先选20这个尺寸,增量为-10,即每10MM阵列一个文字。
按住ctrl再选点的那个尺寸1,即每次增加一个数字。




完成。




youland 发表于 2023-4-11 09:33

用同样的方法,做了一把20cm长的尺子,如下图



1,把尺子长度改为205MM

2,把之前的那个点尺寸改为0




3,工具--参数。添加参数B,字符串,值为0
在关系栏中,如下关系式
B = itos(sd0)
IF B==""
B="0"
ENDIF因为itos对0返回的是空值,所以我们第一个标记0是不起作用的。第2-5行的意思是,当B为空值时,B为字符串0。



4,重新选取文本,选刚才的B



完成,重新阵列。





页: [1]
查看完整版本: creo尺子阵列刻度且逢5逢10长度不一