|
图形(Graph)在可变扫描中的循环利用和应用【概述】
本教程详细讲解了如何在Pro/Engineer的野火4(WildFire4.0)版本中的可变扫描指令中循环利用已有的图形(Graph)以实现更一般化的周期性形状变化过程;并在这个过程中了解要循环利用图形(Graph)的一些需要注意的地方。
这个概念首先是由christ000版主提出,下面的教程上进行完善和补充以方便大家更好的理解。
利用可变扫描的轨迹参数,我们可以通过使用关系的方式实现整个过程中的周期性变化,但是这种周期性变化首先于我们的函数所表达的形状,比如正弦变化,但对于更一般性的形状就显得勉为其难了。我们下面的教程就通过演示如何结合图形以实现这些更一般化形状的周期变化。
mod()函数
在进行讲解前,我们需要先了解一个将在这个过程扮演重要角色的函数:mod()。mod()函数是Pro/Engineer中用于数学求余的函数,下面就是一些求余的结果:
mod(10,3)=1
mod(10.5,3)=1.5
mod(10.5,3.1)=1.2
…
因为我们要实现循环利用图形,那么在我们的可变扫描过程中,我们必须有方法在某个值后归零然后重新计算图形对应的值,很显然mod()函数是非常恰当的实现方式。有关图形循环利用的概念,christ000版主提出这个方法时他实现的方法是用floor函数来进行计算余数,其实两者方式结果都是一样的,不过mod()函数的方式更直观和直接。假设我们的图形X宽度为10,而我们要在可变扫描过程中循环利用5次的话,那么我们就可以使用mod()函数来进行如下的关系编写:
sd#=evalgraph(“graph”,mod(50*trajpar,10)) 或
sd#=evalgraph(“graph”,50*trajpar-floor(5*trajpar)*10)
很显然第一种方式更为直观容易理解,我们简单说明一下它的意义,在我们的整个可变扫描过程中,trajpar是从0到1变化,所有50*trajpar的变化就是0到50,mod(50*trajpar,10)的意思就是这0到50的变化要对10进行求余,换句话说,当变化到10的倍数的时候我们的mod()函数值就会归0,从而实现图形的循环利用,floor()函数的基本方式也是一样。 |
|