変数
利用可能: Part Studio
Part Studio の式で使用する変数を作成し、値を割り当てます。変数を寸法と式で使用します。変数は Onshape 内のフィーチャーであるため、フィーチャーリスト内での配置が重要です。フィーチャーを使用する前に変数を作成するか、値を必要とする操作中にその場で作成します。
- Part Studio で
をクリックして [変数] ダイアログボックスを開きます。
- ダイアログで、次の操作を行います。
変数の名前 (およびその参照先) を入力します。
- タイプを選択します。
- 長さ - 長さを表す数値 (小数、整数、分数)
- 角度 - 角度を表す数値 (小数、整数、分数)
- 数値 - 数値 (小数、整数、分数)
- すべて - 上記のいずれか、異なる単位の数値、またはブーリアン演算、マップ、配列、文字列、関数などの FeatureScript 値。https://cad.onshape.com/FsDoc/variables.html#standard-types および以下の例を参照してください。
- 値を入力します (必要に応じて、[長さ]、[角度]、および [すべて] の単位)。
- 変数のカスタムの説明を入力します。
名前フィールドには、英数字と下線 (_) のみを使用してください。変数名は大文字と小文字が区別され、数字で始めることはできません。
-
をクリックします。
- Part Studio で
をクリックして [変数] ダイアログボックスを開き、[測定済み] をクリックします。
- ダイアログで、次の操作を行います。
- タイプを選択します。
- 距離 - 距離を表す数値 (小数、整数、分数)
- 長さ - 長さを表す数値 (小数、整数、分数)
- 直径 - 直径を表す数値 (小数、整数、分数)
変数の名前 (およびその参照先) を入力します。
- エンティティを選択して間隔を測定します。
- 必要に応じて残りのフィールドに入力します。
名前フィールドには、英数字と下線 (_) のみを使用してください。変数名は大文字と小文字が区別され、数字で始めることはできません。
- タイプを選択します。
-
をクリックします。
変数フィーチャーの [From テーブル] オプションを使用すると、CSV テーブルの行と列のサブセットを格納する単一の変数を作成できます。[行] オプションは行を絞り込み、[変数] の結果タイプ (単一値、配列、またはマップ) を決定します。次に、[列] オプションで各行を絞り込み、最終変数の各エントリのタイプを決定します。
- Part Studio で
をクリックして [変数] ダイアログボックスを開き、[From テーブル] をクリックします。
- ダイアログで、次の操作を行います。
- 変数の名前 (およびその参照先) を入力します。
- Under CSV file, click the Select CSV file field to open the dialog:

[現在のドキュメント] または [その他のドキュメント] から CSV ファイルを選択するか、ダイアログの下部にある [インポート] ボタンをクリックしてデバイスから CSV ファイルを選択します。
選択したらファイルをクリックします。ファイルが [CSV ファイルを選択] フィールドに読み込まれます。
- Fill out the Row and Column fields according to your requirements:
- アクセスタイプ - [インデックス別]、[インデックス範囲別]、[ラベル別]、または [すべての値] を選択します。
- インデックス - [インデックス別] を選択した場合は、インデックスの値を 1 つ入力します。
- 最小/最大インデックス - [インデックス範囲別] を選択した場合は、インデックスの最小値と最大値の両方を入力します。
- 値 - [ラベル別] を選択した場合は、ラベルの文字列値を入力します。
- 正規表現 - ターゲット文字列のセットがパターンマッチしているかどうかをチェックします。
- 結果タイプ - [単一値]、[配列]、または [マップ] を選択します。
- ラベル列/行インデックス - 結果タイプがマップの場合は、数値のインデックス値または変数を入力します。
- アクセスタイプ - [インデックス別]、[インデックス範囲別]、[ラベル別]、または [すべての値] を選択します。
- ある単位から別の単位に変換する場合 (たとえば、テーブルでインチを使用し、これらの値をセンチメートルに変換したい場合など) は、変換係数を確認して、測定単位で値を入力してください。

- オプションで、使用されている変数または CSV ファイルの詳細についての説明を入力します。
名前フィールドには、英数字と下線 (_) のみを使用してください。変数名は大文字と小文字が区別され、数字で始めることはできません。
-
をクリックします。
例
以下のすべての例では、次の 3x3 の CSV テーブルを使用しています。
-
配列の配列 - 行と列の両方でアクセスタイプ: すべての値と結果タイプ: 配列を設定すると、CSV ファイル全体に対応する配列が作成されます。
-
最初の列でインデックス化された行 - CSV 行を最初の列の値でインデックス化するには、[行]で アクセスタイプ: すべての値、結果タイプ: マップ、ラベル列インデックス: 0 を選択します。これにより、テーブルの最初の列がマップキーとして設定されます。
[列] で、[アクセスタイプ: インデックス範囲別] を選択し、テーブルの列の最小/最大インデックスの範囲を設定します (下の例では、最小/最大インデックスの範囲に 1/2 と入力されており、テーブルの 2 番目と 3 番目の列の配列になります)。最後に、[結果タイプ: 配列] を選択します。
-
最初の列 - 最初の列のみにアクセスするには、[行] でアクセスタイプ: すべての値と結果タイプ: 配列を設定します。次に、[列] でアクセスタイプ: インデックス別 (0) と結果タイプ: 単一値を選択します。
-
最初の行 - 最初の行のみにアクセスするには、[行] でアクセスタイプ: インデックス別 (0) と結果タイプ: 単一値を設定します。次に、[列] でアクセスタイプː すべての値と結果タイプː 配列を選択します。
注記
-
変数の結果を表示するには、フィーチャー名の上にマウスのカーソルを合わせます。ツールチップに CSV ファイルの結果が表示されます。
-
変数はテーブルから取得されるため、変数テーブル内の変数タイプと値は読み取り専用です (以下の例ではディメンション変数)。
寸法を作成し、[寸法] フィールドに # と変数名を入力します (下に示すように、必要に応じて式の一部として)。
および
寸法を保存します。変数は値に置換され、式 (該当する場合) が解決されます。
編集用に寸法をダブルクリックすると、変数 (および式) が表示されます。
変数を含まない式をスケッチ寸法に使用すると、寸法値の左側に変数を含まない式アイコン (
) が表示されます。変数を含む式をスケッチ寸法に使用すると、寸法値の左に変数を含む式アイコン (
) が表示されます。「スケッチに式を表示する」を参照してください。
Part Studio で数式を使用する任意の場所で、変数を使用します。たとえば、押し出し操作や回転操作などです。
通常どおり操作を開始します (この場合は [回転])。数値フィールドに # と変数名 (または、必要に応じて式の一部として) を入力します。
フィーチャーを確定します。
フィーチャーを編集すると、ソリューションが数値フィールドに表示されます。
フィールドをクリックすると、変数 (および該当する場合は式) が表示されます。
変数オートフィルフィーチャー
変数を定義した場合は、数値ダイアログフィールドにハッシュタグ (またはシャープ記号、アンダースコア、または任意の文字) を入力すると、以下のように変数の自動入力フィーチャーが開きます。
左ː ダイアログで変数を使用。右ː スケッチの寸法フィールドで変数を使用。
リストを妥当なオプションに絞り込むために入力を続けることができ、矢印キーを使用してリストを上下に移動したり、Enter キーを使用して一覧の変数が強調表示されたときにその変数を受け入れることができます。マウスのスクロールホイールを使用して変数リストをスクロールし、マウスをクリックして特定の変数を選択することもできます。シャープ記号を使用しない場合は、FeatureScript 関数もリストに含まれることに注意してください。
また、次の点に注意してください。
- Esc キーを使用すると、何も選択せずにドロップダウンが閉じます。ドロップダウンからフォーカスを削除すると、何も選択せずに閉じます。
- 計算値は薄い灰色で表示され、挿入されません (変数名または関数名のみが挿入されます)。同様に、関数入力の場合も、入力プレースホルダ名が挿入されないためです。
- フィーチャーリストのさらに下の変数は表示されず、現在のコンテキストに存在する変数のみが表示されます。
変数値には式を含めることができます。インデックスを持つ配列を指定することができ、インデックスは変数にすることもできます。これにより、インデックス変数の値を変更することで、変数の値を変更できます。
変数で配列を使用するには、まず 0 から始まるインデックスを設定する必要があります。
- 変数を作成し、名前を「config」に設定します。タイプとして [数値] を選択し、#config の値を 2 に設定します。
- 変数を作成し、名前を「直径」に設定します。#diameter の値を [0.25, 0.5, 1] [#config] に設定します。
-
変数を作成し、名前を「長さ」に設定します。#length の値を [2, 4, 10] [#config] に設定します。
- 円を作成します。
- 線を作成します。
- 円の直径を「#diameter」に設定します。
#config=2 なので、円の直径は 1 です。
- 線の長さを「#length」に設定します。
#config=2 なので、線の長さは 10 です。
これは、配列のインデックスポインタとして機能する括弧 [#config] の 2 番目のセットです。
すべての配列変数のインデックスを変更するには、インデックス変数の値を変更します。
たとえば、[フィーチャー] ダイアログボックス内のフィールドに数値を入力する場合、必要に応じて変数を作成できます。変数は、フィーチャーリストでのその時点での操作に先行して保存されます。
たとえば、スケッチを作成する場合、寸法用の数値を入力する代わりに寸法フィールドが表示され、ポンド記号 #、および新しい変数用のオプションに沿って表示される既存の変数のリストを入力することができます。
新しい変数を選択して [変数] ダイアログを開き、新しい変数を作成して現在のフィールドで使用します (使用可能であれば既存の変数の 1 つを選択することもできます)。
[変数の作成] ダイアログには、フィーチャー (既定) またはコンフィギュレーション用の変数を作成するオプションがあります。
新しい変数の名前と値を入力します。チェックマークをクリックして新しい変数を保存し、開いたフィーチャーで使用します。
FeatureScript の構文に従って、変数で FeatureScript 関数を使用できます。
たとえば、「Adjust」という名前の「任意」型の変数を作成して、指定した長さを 2 倍にし、2.5 mm を加算する関数を次のように格納します。
関数 (len){ return len * 2 + 2.5 mm; }
その変数を次のように式の中で参照します。
#Adjust (20mm)
- 変数の値を変更すると (フィーチャーと同じように編集)、その変数を使用するすべての操作が自動的に更新されます。
- 変数の名前を変更すると、その変数が使用されるすべての箇所に変更を伝播する選択ができます。

[すべての参照を更新] の横にチェックマークを付けます。
ラーニングセンターに関するその他のリソースについては、こちらの技術説明記事「パラメトリック変数とコンフィギュレーション変数 (Onshape アカウントが必要です)」を参照してください。また、「変数と式 (Onshape アカウントが必要です)」というコースに登録することもできます。