次に、このチュートリアルの冒頭で挙げた最後の 2 つのトピックを取り上げます。
iLogic には、Excel スプレッドシートから情報を読み込む関数が組み込まれています。これらの関数を使用するには、[システム]タブの[スニペット]領域で、[Excel データのリンク]ノードを展開します。
このレッスンでは、埋め込まれた Excel スプレッドシートの値を使用して、指定されたサイズに基づいて、ポート ジオメトリをコントロールするパラメータの値を設定するルールを記述します。このルールは、スプレッドシートのポート サイズを参照して値の行を特定します。その行のフィールドを読み込んで適切なパラメータ値を取得します。
T 形ブロックには 3 つのポートが含まれます。各ポートは、[パラメータ]ダイアログ ボックスに一覧表示されます。ただし、[パラメータ]ダイアログ ボックスでポート サイズを変更しても、モデルのポート サイズは変わりません。さまざまなポート サイズを駆動するルールを追加する必要があります。
最初の手順では、ポートのサイズおよび各ポートの周囲のねじパターンの寸法を設定するルールを追加します。ねじパターンはアセンブリで使用され、フランジをブロックに固定します。
ルールが最初に実行する必要があるのは、Port A で使用される値が含まれるスプレッドシートの行を特定することです。port_size というラベルが付いた列で port_a_size パラメータに一致する値を参照します。
i = GoExcel.FindRow(“3rd Party:Embedding 1”, “Sheet1”, “columnName”, “<=”, 0.2)
i = GoExcel.FindRow("3rd Party:Embedding 1", "Sheet1", "port_size", "=", port_a_size)
このコードは、埋め込まれたスプレッドシートで、port_a_size パラメータの値に等しい port_size 列がある行を見つけることを示しています。
i = GoExcel.CurrentRowValue("columnName")
ここに示すように、スニペットのコピーを編集します。
port_a_y_dist_between_screw = GoExcel.CurrentRowValue("y_dist_between_screw") port_a_x_dist_between_screw = GoExcel.CurrentRowValue("x_dist_between_screw") port_a_port_dia = GoExcel.CurrentRowValue("port_dia") Port_A_Drill_Depth = GoExcel.CurrentRowValue("tap_drill_depth")
Feature.ThreadDesignation("featurename") = “3/8-16 UNC”
ここに示すように、テキストを修正します。
Feature.ThreadDesignation("Port_A_Threads") = GoExcel.CurrentRowValue("tap_dim")
ねじ穴のねじ山の指定を取得するには、tap_dim セルを使用する必要があることを示しました。
i = GoExcel.FindRow("3rd Party:Embedding 1", "Sheet1", "port_size", "=", port_a_size) port_a_y_dist_between_screw = GoExcel.CurrentRowValue("y_dist_between_screw") port_a_x_dist_between_screw = GoExcel.CurrentRowValue("x_dist_between_screw") port_a_port_dia = GoExcel.CurrentRowValue("port_dia") Port_A_Drill_Depth = GoExcel.CurrentRowValue("tap_drill_depth") Feature.ThreadDesignation("Port_A_Threads") = GoExcel.CurrentRowValue("tap_dim") i = GoExcel.FindRow("3rd Party:Embedding 1", "Sheet1", "port_size", "=", port_b_size) port_b_y_dist_between_screw = GoExcel.CurrentRowValue("y_dist_between_screw") port_b_x_dist_between_screw = GoExcel.CurrentRowValue("x_dist_between_screw") port_b_port_dia = GoExcel.CurrentRowValue("port_dia") Port_B_Drill_Depth = GoExcel.CurrentRowValue("tap_drill_depth") Feature.ThreadDesignation("Port_B_Threads") = GoExcel.CurrentRowValue("tap_dim") i = GoExcel.FindRow("3rd Party:Embedding 1", "Sheet1", "port_size", "=", port_c_size) port_c_y_dist_between_screw = GoExcel.CurrentRowValue("y_dist_between_screw") port_c_x_dist_between_screw = GoExcel.CurrentRowValue("x_dist_between_screw") port_c_port_dia = GoExcel.CurrentRowValue("port_dia") Port_C_Drill_Depth = GoExcel.CurrentRowValue("tap_drill_depth") Feature.ThreadDesignation("Port_C_Threads") = GoExcel.CurrentRowValue("tap_dim")