使用 iFeature 函數可選擇表格驅動式 iFeature 中的列。每一列都包含一組驅動 iFeature 的參數值。
iFeature 函數在放置 (例證化) iFeature 的零件內作業。其語法與 GoExcel 和 iPart 函數所使用的語法相似。
若要存取 iFeature 函數,請展開「片段」區域中的「系統」頁籤下的「iFeature」節點。
變更表格驅動式 iFeature 的作用中列。
語法
iFeature.ChangeRow("iFeatureName", "rowName")
"iFeatureName"
模型樹中顯示的 iFeature 名稱。
"rowName"
iFeature 表格中的關鍵參數的所需值。
如果 iFeature 有多個關鍵參數,請在 [Key1=Value1][Key2=Value2] 形式的文字字串中指定所有關鍵參數。例如:
[Size=A0][CutLength=0.4375000 in]
此範例為 iFeatureTableRow.MemberName 性質,如 Inventor API 文件中所述。指定多個參數值的替用方式為使用 iFeature.FindRow。
也可以使用整數列號碼:
iFeature.ChangeRow("iFeatureName", "rowNumber")
範例
在此範例中,目前 iFeature 規劃會根據演算 size (這是一個文字參數) 的條件陳述式變更。iFeature.ChangeRow 只需要 iFeature 元件名稱 RectangularPocket1 和 iFeature 表格 Key Column 名稱 "Pocket-01",即可驅動作用中的 iFeature 規劃:
If size = "small" Then iFeature.ChangeRow("RectangularPocket1", "Pocket-01") ElseIf size = "medium" Then iFeature.ChangeRow("RectangularPocket1", "Pocket-02") ElseIf size = "large" Then iFeature.ChangeRow("RectangularPocket1", "Pocket-03") ElseIf size = "very large" Then iFeature.ChangeRow("RectangularPocket1", "Pocket-04") End If
根據一個或多個欄值準則搜尋列。如果找到列,其會將 iFeature 的作用中列變更為該列。
語法
i = iFeature.FindRow("iFeatureName", "columnName", "<=", 0.2, "columnName", "<=", 4.1)
"iFeatureName"
表格驅動式 iFeature 的名稱。
"columnName"
要搜尋的欄的標題。
運算子
值可以為數值,也可以為文字字串。可以使用明確值、參數或本端變數指定值。
傳回的結果
iFeature.CurrentRowValue(“columnName”)
此函數從使用 iFeature.FindRow 函數找到的列中讀取值,其中 "columnName" 為欄標題名稱。此函數傳回由 iFeature.FindRow 函數傳回的目前列值的儲存格值。例如:
i = iFeature.FindRow("RectangularPocket1", "pocketdepth", "=", 0.250) pocketlength = iFeature.CurrentRowValue("pocketlength") pocketwidth = iFeature.CurrentRowValue("pocketwidth")
如果 iFeature 中沒有該欄,規則將顯示錯誤訊息。
iFeature.CurrentRowStringValue("columnName")
如果要在 iFeature 表格中搜尋的項目為文字字串,請使用此函數。例如:
Part_number = iFeature.CurrentRowStringValue("Part Number")
與 iPart.FindRow 函數配合使用時,此函數可讓您搜尋某個範圍內的值,而非搜尋精確值。此搜尋永遠帶有一個公差。預設公差為 0.0000001,與文件單位無關。
語法
iFeature.Tolerance = <value>
設定更高的公差可擴大可接受值的範圍。
範例
iFeature.Tolerance = 0.001 i = iFeature.FindRow("insertpocket", "pocketlength", "=", 2.0)
此範例與 pocketlength 值為 2.0004 的列情況相符。