我想看一级黄色大片_久久亚洲国产精品一区二区_久久精品免视看国产明星_91久久青青青国产免费

您的位置:網(wǎng)站首頁 > Proe教程

ProE設計進階:關系式函數(shù)的使用

時間:2012-04-07 18:00:40 來源:未知
在ProE關系式中我們可以使用系統(tǒng)函數(shù),ProE對數(shù)學函數(shù)有強大的支持能力,通過這些函數(shù)我們可以來進行一些特定的運算得到所期望的值,這里就對一些比較常用的系統(tǒng)函數(shù)進行一個概括總結。
 
1、數(shù)學函數(shù)
 
在ProE中,我們可以使用靈活的數(shù)學函數(shù),常用的函數(shù)列表如下:
 
sin()、cos()、tan()函數(shù):
這三個都是數(shù)學上的三角函數(shù),分別使用角度的度數(shù)值來求得角度對應的正弦、余弦和正切值,比如:
A=sin(30),A=0.5
B=cos(30),B=0.866
C=tan(30),C=0.577
 
asin()、acos()、atan()函數(shù):
這三個是上面三個三角函數(shù)的反函數(shù),通過給定的實數(shù)值求得對應的角度值,如:
A=asin(0.5),A=30
B=acos(0.5),B=60
C=atan(0.5),C=26.6
 
log():求得10為底的對數(shù)值,如:
A=log(1),A=0
A=log(10),A=1
A=log(5),A=0.6989
 
ln():求得以自然數(shù)e為底的對數(shù)值,e是自然數(shù),值是2.718...,如:
A=ln(1),A=0
A=ln(5),A=1.609
 
exp():求得以自然數(shù)e為底的開方數(shù),如:
A=exp(2),A=e^2=7.387
 
abs():求得給定參數(shù)的絕對值,如:
A=abs(-1.6),A=1.6
B=abs(3.5),B=3.5
 
max()、min():求得給定的兩個參數(shù)之中的最大最小值,如:
A=max(3.8,2.5),A=3.8
B=min(3.8,2.5),B=2.5
 
mod():求第一個參數(shù)除以第二個參數(shù)得到的余數(shù),如:
A=mod(20,6),A=2
B=mod(20.7,6.1),B=2.4
 
sqrt():開平方,如:
A=sqrt(100),A=10;
B=sqrt(2),B=1.414
 
pow():指數(shù)函數(shù),如
A=pow(10,2),A=100
B=pow(100,0.5),B=10
 
ceil():不小于其值的最小整數(shù)
floor():不超過其值的最大整數(shù)
ceil(10.2)值為11
floor(10.2)=11
也可以使用指定小數(shù)部分位數(shù)的ceil和floor函數(shù),如:
ceil(10.255,2)=10.26
floor(10.255,1)=10.2
floor(10.255,2)=10.26
 
2、字符串函數(shù):
string_length():字符串長度求值
用法:String_length(Parameter  name  or  string),括弧內(nèi)參數(shù)名或字符串,字符串要用"  "括起,空格亦算一個字符。
例:strlen1=string_length("material"),則strlen1=8
 
rel_model_name():提取當前零件的文件名稱
用法:rel_model_name()注意括號內(nèi)為空的,返回目前模型名稱。
 
rel_model_type():提取當前零件的文件類型
用法:rel_model_type()
如:當前模型為裝配圖
parttype=rel_model_type(),parttype="ASSEMBLY"。
 
itos():將整數(shù)換成字符串
用法:Itos(integer)整數(shù),若為實數(shù)則舍去小數(shù)點。如:
S1=Itos(123),S1="123"
S2=itos(123.57),S2="123"
intl=123.5,S3=itos(intl),S3="123"
 
extract():提取字符
用法:extract(string,position,length)
 
evalGraph():圖形X值對應的Y值提取函數(shù)
用法:evalGraph(Graph_name,x_value),其中Graph_name是指控制圖形(Graph)的名字,要用雙引號括起,x_value是Graph中的定義域,函數(shù)返回Graph中x對應的y值。如:
sd5=evalGraph(“sec”,3)
 
下面都是使用參數(shù)來設計的具體例子:
 

 

 
ProE設計進階:關系式函數(shù)的使用
 

 

 
下圖是點按照線長陣列,默認情況下,點的數(shù)量需要我們自己確定,下面的圖通過函數(shù)floor函數(shù)和分析參數(shù)實現(xiàn)點的數(shù)量隨著曲線的變化自動匹配,修改線的形狀和長度后,點的個數(shù)會自動匹配:
 
ProE設計進階:關系式函數(shù)的使用
 

 

 

 下面是通過extract字符提取函數(shù)實現(xiàn)文字的陣列:
 
ProE設計進階:關系式函數(shù)的使用
 


 


 



 

ProE設計進階:關系式函數(shù)的使用
 

下面舉個列子說明Mod函數(shù)的使用:

 

利用可變截面掃描的函數(shù)和關系式,可以通過實現(xiàn)常見的周期性變化,比如正弦變化、余弦變化,但對于一般性的形狀是無法實現(xiàn)的。

  
如何在Pro/E可變掃描中循環(huán)利用已有的圖形(Graph)以實現(xiàn)更一般化的周期性形狀變化?
 
要實現(xiàn)循環(huán)利用圖形,那么在可變掃描過程中,必須有方法在某個值后歸零然后重新計算圖形對應的值,mod()函數(shù)是非常恰當?shù)膶崿F(xiàn)方式,比如,我們的圖形X定義域為0~10,要在可變掃描過程中循環(huán)利用5次,我們很容易推導出如下的關系式(為了方便,我做了一個標準的類似公式一樣的通式):
 
sd#=EvalGraph("Graph",mod(N*X_value*trajpar,X_value))*K
 
上面的關系式說明:
N:表示循環(huán)周期的次數(shù)
X_value:表示圖形的X定義域
K:縮放倍數(shù)
 
也可以用以下的關系式控制,道理類似:
 
sd#=EvalGraph("Graph",N*trajpar-floor(N*trajpar))*K----用此關系式來控制時,圖形的定義域為0~1。
 
上面的關系式說明:
N:表示循環(huán)周期的次數(shù)
K:縮放倍數(shù)
 
第一種方式要直觀、也容易理解:
 
在整個可變掃描過程中,trajpar是從0到1變化,所以N*X_value*trajpar的變化就是0到N*X_value,mod(N*X_value*trajpar,X_value)就是這0到N*X_value的變化要對X_value進行求余,換句話說,當變化到X_value的倍數(shù)的時候我們的mod()函數(shù)值就會歸0,從而實現(xiàn)圖形的循環(huán)利用,floor()函數(shù)的原理也是類似的。
 
注意點,循環(huán)利用的圖形必須要符合以下兩點:
 
1、圖形Graph的起點和終點Y值必須相等;
2、圖形 Graph必須是單一段(多段相切線條組合成的形狀,可采用轉(zhuǎn)換成樣條的方式來轉(zhuǎn)化成單根線條);
 

如下圖示意: