【Revit Dynamo入門】柱を作成する|初心者のためのチュートリアルA06

Dynamo入門

「デジケン」管理人のpannaです。今回のチュートリアルではDynamoを使用して柱を作成します。

今回は0から柱の作り方を解説します。今回は非常に便利なCode Blockについての情報も載せているので確認しましょう。梁の作り方が気になる方は前回の記事をCheckしてみて下さい。

初心者のためのチュートリアルA05|梁を作成する

スポンサーリンク

初心者のためのチュートリアルA06|柱を作成する

柱を作成するには「StructuralFraming.ColumnByCurve」を使用します。

「StructuralFraming.ColumnByCurve」 は線分、レベルと柱のタイプを入力として渡してあげることで、Revit内に柱を作成します。この通りノードをつなげれば上の画像のように柱(例ではT型断面の柱)はできてしまうのですが、細かいテクニックを入れていますので一つずつ解説します。

Code Blockのテクニックを覚えよう

まず次の画像を見てください。

ここでは大きく分けて2つの事をしています。「点を作成すること」と「点から線を作成すること」ですね。これは前回以前の内容で習得済です。新しい内容は「Code Block」の使い方にあります。

Code Blockで数列を作成する

「Code Block 1」では、点を作るノードに入力させるデータとして「0..1000..1000」という見慣れない表記があります。 実はこの「0..1000..1000」 という表記だけで数列を作成することができます。各数字の意味は下記の通りです。通常の場合、Code Blockの行の最後には ; (セミコロン)を書くルールがありますのでお忘れなく。

初期値 .. 最大値 .. 増分;

もう一度「点を作成する」ノードグループを見ると、どのような点が作成されているか分かると思います。ここでは、X,Y座標には(0)が、Z座標には(0, 1000)という数字が入力されているので、(0,0,0), (0,0,1000)の位置に点が作成されています。

鋭い方はなぜXY座標には一つずつしか入力がなく、Z座標には2つ入力があるのかよく分からないとおっしゃると思います。この点についてはチュートリアルを進めることで理解できるように書きますので今はそうなる事実を優先して下さい。

話は戻りますが、点は次の画像のように (0,0,0), (0,0,1000)の位置に 作成されます。

Code Blockでインデックスを指定してリストからアイテムを取り出そう

「Code Block 2」には、「Point01=IN[0];」のように謎の文章が書かれています。プログラミングに精通している方であればすぐに察しが付くと思いますが、下記の様な意味があります。

リスト「IN」から、インデックス「0」のアイテムを取り出してPoint01に格納する

つまり、入力データ(リスト)の0番目のアイテムを取り出しますよ、という事です。今Dynamoで作成している点はすぐ上の画像の2点でした。そして、作成した2点にはそれぞれ次の画像のようにインデックスがつけられています。

文字にすると、インデックス「0」は点 (0,0,0)、インデックス「1」は点 (0,0,1000)です。もう一度選を点と線を作成するノードを見てみましょう。

作成した2点のうちインデックス「0」を始点とし、インデックス「1」を終点とする線分を作成していると理解できると思います。

線分から柱を作成する

作成した線分を参照線として柱を作成します。下記をご覧ください。

「StructuralFraming.ColumnByCurve」にcurveという入力項目がありますが、ここに割くほど作成した線分をつなげます。そのほかに、レベルと柱のファミリタイプを入力させることで、柱が作成されます。今回はT型断面のファミリを使用しているのでT型断面の柱が作成できました。

まとめ

今回は少々盛りだくさんでしたね。内容をおさらいすると次の通りです。

  • 柱を作成するには「StructuralFraming.ColumnByCurve」
  • CodeBlockで数列を作成できる「 初期値 .. 最大値 .. 増分; 」
  • Code Blockを使ってリストからインデックス指定でアイテムを取り出せる「 A=IN[0]; 」

次ページ: 初心者のためのチュートリアルA07|壁を作成する

【Revit Dynamo入門】初心者のためのチュートリアル目次

コメント

タイトルとURLをコピーしました