如果你很了解这个公式sd1=evalgraph("g1",trajpar*100)
那就没有必要再看下去了.本节只是对此用法的最简单介绍.
sd1=evalgraph("g1",trajpar*100)
简单说这句的意思就是将基准图形G1特定范围内的每一个横坐标
对应的纵坐标的值赋给SD1.SD1是一个尺寸名称.
Trajpar*100的意思是在G1图形中取X=0与X=100之间的只一段所对应的
纵坐标作为取值范围. Trajpar是[0,1]的一个范围.开始取0,结束取1.
这类公式多见于可变截面扫描中对可变尺寸的控制.
以下简单分析一下.
假设:G1基准图形为: (一条斜线,非常简单)
可变截面扫描的元素为:(截面和轨迹都是直线,且相互垂直)
上面这个变截面扫描相信谁都会创建,其中扫描截面的尺寸受函数影响.
sd1=evalgraph("g1",trajpar*100)
当扫描轨迹长度为100的时候.扫描出来的曲面(显示线框模式)
和基准图形G1从某种角度来看是一样的:Y从开始25变化到结束75.
当扫描轨迹长度为50的时候.扫描出来的曲面的斜边部分变得异常陡峭.
Y依然从开始的25变化到75,但是中间距离因为缩减成50,
因此变化的趋势更明显了.
当扫描轨迹长度为200的时候.扫描出来的曲面的斜边部
分变得非常平缓.Y依然从开始的25变化到75,但是中间距
离因为增加了一倍,因此变化的斜度就少了很多.
上面几个图的斜度没有标出来,单靠眼睛已经可以明显辨别出其变化的趋势了.
从上面几个图到底带来了什么启示呢?对于同一个公式
sd1=evalgraph("g1",trajpar*100)
所扫描出来的曲面的Y坐标总是要从25开始 75结束.
而中间扫描轨迹的长度只会影响
其变化的剧烈程度.就好像在爬山.
归纳上面几个图,我想这个函数你应该明白了至少一半.
接着看一下trajpar的影响.
看下图.将原来sd1=evalgraph("g1",trajpar*100)
修改为:sd1=evalgraph("g1",trajpar*200)
扫描轨迹长度为100
这个图的Y坐标从25开始 从125结束.
但是我基准图形最高只画到75,125是怎么出来的呢?
试着将基准图形延长一下,测量X为200对应的Y值,恰恰就是125.
将公式修改为sd1=evalgraph("g1",trajpar*50),发现
Y值变化从25开始,50结束,这个50又是哪里来的呢?
在基准图形测量X为50时候基准图形对应的Y坐标之后发现,恰好是50.
上面修改了两次Trajpar的乘数之后发现Y的结束坐标有了变化.这说明了什么呢?
Trajpar*100就说明允许取Y最大值为基准图形上X为100所对应的Y值
Trajpar*200就说明允许取Y最大值为基准图形上X为200所对应的Y值,
不够长的话自动寻找延长线上的点(考虑一下如果基准图形是曲线而不是直线的情况)
Trajpar*50就说明允许取Y最大值为基准图形上X为50所对应的Y值
因此可以知道evalgraph()
函数的第二个参数实际上控制SD1可取值的范围.
第一个参数当然是基准图形.
如果再修改一下:
sd1=evalgraph("g1",20+trajpar*100)
那就变成是取基准图形上最小 X=20对应的Y值
最大X=20+100 对应的Y值.
|