「デジケン」管理人のpannaです。今回のチュートリアルではDynamoを使用して壁を作成します。
前回柱で使用した「Code Blockの使い方」を習得してからのほうが読みやすい内容です。前回の記事はこちらからどうぞ。
この記事のコンテンツ
初心者のためのチュートリアルA07|壁を作成する
壁を作成するには「Wall.ByCurveAndHeight」を使用します。レベルを使用する別の方法もありますが今回はこちらを使用します。
このノードは次の情報を入力データとして受け取って壁インスタンスを作成します。
- 配置基準線となる線分
- 壁高さ(線分と壁上端高さの距離)
- 参照するレベル
- 割り当てる壁Type
レーシングオプションを駆使して点を作成する
「点を作成する」のグループでは前回紹介したCode Blockの使い方を使って点を作成しています。
ここでは「Point.ByCoordinates」の右下が「|」ではなく「xxx」になっていることに注目してください。ここでは外積(Cross Product)が選択されています。
これは、レーシングオプションと呼ばれ、今回のようにノードに渡すリストの長さがそれぞれ違うときに重要になってきます。オプションには下記の3種類があります。
- 最短リスト(Shortest):最短のリスト長でリスト同士を組み合わせる
- 最長リスト (Longest) :最長のリスト長でリスト同士を組み合わせる
- 外積 (Cross Product) :すべての組み合わせで組み合わせる
【Revit+Dynamo】レーシングオプションを理解してリスト入力を簡単に組み合わせる | 建築デジタル研究会
「デジケン」管理人のpannaです。今回はDynamoの重要な機能であるレーシングオプションを解説します。 その他に初心者のためのチュートリアル記事もまとめていますので興味...
今回は外積を選択していますが、次の3つのリストのすべての組み合わせを取ります。
- X座標に入るリスト:(0, 1000)
- Y座標に入るリスト:(0)
- Z座標に入るリスト:(0, 1000)
そのため、次の点が作成されます。
- 点1(0,0,0)
- 点2(0,0,1000)
- 点3(1000,0,0)
- 点4(1000,0,1000)
そして、この4つの点のうち点1,3から壁の下端レベルの基準線を作成し、点2のZ座標を取り出して壁の高さとします。
もう少しパラメトリックに作ろうとする場合は、「点2と点1のZ座標の差を壁の高さ」とします。今回はWall.ByCurveAndHeightの使い方の紹介なのでそこまでは対応していません。
作成した点から壁を作成する
画像内の「壁を作る」グループを見ていきましょう。
Wall.ByCurveAndHeightに点1と点3を結んだ線分、点2のZ座標から取り出した壁高さ、レベル、壁のタイプを入力しています。
これで壁の完成です。
まとめ
- 壁を作成するには「Wall.ByCurveAndHeight」
- リストの組み合わせにはレーシングオプション
- レーシングオプションには3種類の組み合わせ方法がある
コメント