2017年12月9日土曜日

クレーンに挑戦!(5)

規格外の時のふるまい

クレーンの先端を自由に移動できるのはいいのですが、可動範囲を超えて移動してしまったとき、ユーザーに分かりやすくエラーを表示したいところです。エラーになったときは大きく✖を表示するようにしてみましょう。
今回のポイントは☑に対する式の設定方法です。
エラーは×でお知らせ
エラーになったときは「定格総荷重」の値が0になるので、このとき×を表示するようにします。

バツ印の作成


  1. 管理タブ>オブジェクトスタイル
  2. 「クレーン_エラー」というサブカテゴリを作成しOK。
    サブカテゴリを作成
  3. 平面図>参照レベルのビューを開く。
  4. 作成タブ>モデルパネル>立体文字
  5. 文字を編集ダイアログボックスで「×」を入力しOK
    ×
  6. 中央に配置する。
  7. 配置した立体文字を選択する。
  8. プロパティウィンドゥ>タイプを編集 でタイプを下の図のように編集します。
    お好みのフォントを指定する
    • 文字サイズは関連付けボタンをクリックして、「長さ」のパラメータに関連付けておきます。
      長さと関連付ける
  9. インスタンスパラメータを下の図のように設定します。
    • 水平位置合わせを[中心]
    • サブカテゴリを[クレーン_エラー]
    • マテリアルを関連付けボタンを押し、[マテリアルエラー表示]というタイプパラメータを作成して関連付ける。
    • 表示の関連付けボタンを押し、「エラー表示」というインスタンスパラメータを作成して関連付ける。
      ×印の表示をパラメータ化する
  10. プロパティパネル>ファミリタイプでマテリアルと仕上げのマテリアルエラー表示パラメータの値セルで[…]をクリックして、マテリアル編集ダイアログボックスを開く。
  11. [クレーンエラー]というマテリアルを作成し、任意の外観を設定しOK。
    クレーンエラーマテリアル・任意の外観を設定する
  12. OKを1回押して、ファミリタイプダイアログボックスに戻る。

×印の表示非表示の制御


[定格総荷重]パラメータの値が0のときに、×印の表示のチェックボックスがONになればいいので式を使ってこれを制御します。
エラー表示の□(チェックボックス)を式で制御する

  1. プロパティパネル>ファミリタイプでファミリタイプダイアログボックスを表示します。
  2. エラー表示の式に =定格総荷重=0 と入力します。
    ifは必要ない
    • チェックボックスの制御にはつい「=if(…」としたくなりますが、この場合ifは不要です。
    • 定格総荷重=0が正しければ結果としてTRUE(チェックボックスON)、正しくない(定格総荷重が0ではない)ときはFALSE(チェックボックスがOFF)の値が設定されます。
  3. OKを押します。
    ×印を中心に配置
  4. ファイルを保存します。

使ってみる

プロジェクトにロードして使ってみましょう。クレーンの先端をドラッグするとエラー表示がついたり消えたりするのが確認できればOKです。
ここまで完成したファミリはこちらからダウンロードできます。