iLogic 中的 iProperty 函數

iLogic 提供用於設定或取得 Inventor 零件、組合及圖面文件的 iProperty 的規則函數。使用規則將設計變形或修改為新規劃時,請保持隨時更新設計文件的 iProperty。iProperty 必須為最新 iProperty,材料表才會正確。規則還可以用於讀取文件的 iProperty 值,並對其做出反應。例如,您可以具有在材料性質發生變更時變更零件厚度的規則。當零件質量超出最大或最小質量限制時,規則會引起變更。任何可以手動設定的 iProperty 均可使用規則進行設定或讀取。

若要存取 iProperty 函數,請展開「片段」區域中的「系統」頁籤下的「iProperty」節點。

iProperties.Value

語法

iProperties.Value("property tab name", "property name")

讀取或設定包含規則的文件中的性質值。

iProperties.Value("filename.ipt", "property tab name", "property name")

在組合層級規則中用於存取零件或次組合的 iProperty。

如果零件或次組合的檔名發生了變更,則規則文字也必須進行變更。

最好使用元件名稱 (自訂之後) 而非檔名。

iProperties.Value("custom component name", "property tab name", "property name")

設定或讀取元件中的性質值。此函數使用元件名稱而非檔名。自訂元件名稱 (將名稱從其原始預設名稱變更為其他名稱),以便檔案參考發生變更時該名稱不會變更。

範例

設定 iProperty 值:

iProperties.Value("Project", "Stock Number") = "302A"

讀取 iProperty 值:

MyStringParam = iProperties.Value("Project", "Stock Number")

設定自訂 iProperty 值:

iProperties.Value("Custom", "Age") = 41 'number type
iProperties.Value("Custom", "Company") = "Autodesk, Inc" 'text type
iProperties.Value("Custom", "Date") = CDate("11/1/2008") ' date type
iProperties.Value("Custom", "Insured") = true 'yes or no type

讀取自訂 iProperty 值:

age = iProperties.Value("Custom", "Age")
company = iProperties.Value("Custom", "Company")
thedate = CStr(iProperties.Value("Custom", "Date"))
insured = iProperties.Value("Custom", "Insured")

注意事項

棄用的函數

舊版本的 iLogic 使用以下函數從組合中的零件中取得 iProperty:

iProperties.ValueInDoc("filename.ipt", "property tab name", "property name")

參考檔名。

iProperties.ValueInComponent("custom component name", "property tab name", "property name")

參考元件名稱。

雖然在「編輯規則」對話方塊的「片段」區域中不提供這些函數,但是它們可以在規則中正常工作。但是,建議使用 iProperties.Value 函數代替這些舊函數。

iProperties.StylesInEnglish

此函數支援在不同語言版本的 Autodesk Inventor 中使用同一個文件。如果您在規則中為材料和顏色使用英文名稱,則您的模型將更容易移植。如果將此函數設定為 True,則任何傳回任何材料或顏色名稱的函數都將傳回英文名稱。您可以使用您所安裝 Autodesk Inventor 的語言設定材料或顏色名稱。但是出於一致性方面的考慮,建議您使用英文名稱。如果您將 iProperties.StylesInEnglish 值設定為 True,以下函數會傳回英文名稱:

iProperties.Material

設定或讀取文件的材料。

設定材料時,請使用與作用中的標準物理材料清單中顯示的材料名稱完全相同的名稱 (區分大小寫)。材料值永遠為文字字串,需要加引號。

範例

設定材料的步驟:

iProperties.Material = "Gold"

讀取材料的步驟:

MyStringParam = iProperties.Material

iProperties.Material(“filename.ipt”)

透過指定檔名,設定或讀取組合內的零件的材料。

iProperties.Material(“componentName:1”)

在組合層級規則中用於透過指定元件名稱,存取組合中的零件的材料。

iProperties.PartColor

設定或讀取零件的目前顏色。零件顏色值為文字字串,需要加引號。變更顏色不會影響目前材料值。

此函數僅適用於零件。

範例

設定顏色的步驟:

iProperties.PartColor = "Green"
iProperties.PartColor = "As Material"

讀取顏色的步驟:

MyStringParam = iProperties.PartColor

iProperties.Mass

讀取或寫入包含規則的零件或組合文件的質量。

如果寫入質量,其將取代計算的質量。若要還原計算的值,請將質量設定為 -1。

iProperties.Mass(“filename.ipt”)

透過指定檔名讀取或寫入組合中的零件或次組合的質量。

iProperties.Mass(“component name:1”)

透過指定元件名稱讀取或寫入組合中的元件的質量。此函數也可用於讀取或寫入虛擬元件的質量。

範例

讀取質量的步驟:

MyMassParam = iProperties.Mass
MyMassParam = iProperties.Mass("component:1")
MyMassParam = iProperties.Mass("mypart.ipt")

設定質量的步驟 (取代自動計算):

iProperties.Mass = 3 kg
iProperties.Mass("virtual_component") = 233 g
iProperties.Mass("mypart.ipt") = 4.2 lb
massiProperties.Mass = -1 'set the mass back to automatic calculation

iProperties.Volume

讀取或寫入包含規則的文件的體積。

iProperties.Volume(“filename.ipt”)

透過指定檔名讀取或寫入包含規則的零件或次組合的體積。

iProperties.Volume(“component:1”)

透過指定元件名稱讀取或寫入組合中的元件的體積。此函數也可用於讀取或寫入虛擬元件的體積。

範例

讀取體積的步驟:

MyVolumeParam = iProperties.Volume
MyVolumeParam = iProperties.Volume("component:1")
MyVolumeParam = iProperties.Volume("mypart.ipt")

設定體積的步驟 (取代自動計算):

iProperties.Volume = 12.4 in^3
iProperties.Volume("virtual_component") = 542 cm^3
iProperties.Volume("mypart.ipt") = 12.8 in^3
iProperties.Volume = -1 'set it back to automatic calculation

iProperties.CenterOfGravity

讀取包含規則的文件中的模型的重心。

語法

pt = iProperties.CenterOfGravity

pt 為 Inventor.Point 類型,其在 Inventor API 說明中進行了描述。您可以讀取該點的 X、Y 和 Z 值,以規則文件的單位表示:

cx = pt.X
cy = pt.Y
cz = pt.Z

pt = iProperties.CenterOfGravity("component")

透過指定元件名稱讀取組合中的元件的重心。

iProperties.Area

讀取包含規則的文件中的模型的表面面積。

語法

surfaceArea = iProperties.Area

surfaceArea = iProperties.Area(“component:1”)

透過指定元件名稱讀取組合中的元件的表面面積。