2022年4月24日日曜日

Dynamoで北側斜線

真北の角度

北側斜線を作成するには真北の角度が必要です。一般的には

  1. 平面図のプロパティ「向き」を真北に設定
  2. 管理タブ>プロジェクトの位置>真北を回転
で適切な角度に真北を回転します。この時の回転角度はプロジェクト基準点に格納されています。
プロジェクト基準点の真北の角度が真北の角度

この角度はプロジェクトの北(平面ビューの上・Y軸方向)からの振れ角を示しています。角度がわかっている場合はプロジェクト基準点のプロパティ「真北の角度」に直接角度を入力しても真北の角度を変更することができます。
この値を利用して北側斜線を作成してみます。

Dynamo

北側角度の取得

プロジェクト基準点の真北の角度を取得

  1. Revit>Selection>Categoriesで「外構-プロジェクト基準点」を選択。システムで規定されているカテゴリのみ選択できます。
  2. Revit>Selection>All Elements of Category でプロジェクト基準点を選択します。プロジェクト基準点はプロジェクト内に一つしかないのでこれ以上の絞り込みは必要ありません。
  3. Revit>Elements>Parameter>ParameterByNameで「真北の角度」を指定してパラメータを取得
  4. Revit>Elements>Parameter>Valueで角度を取得。

真南きベクトルの作成

ベクトルを作成する

  1. Geometry>Abstract>Vector>Rotate を使って、Yベクトル(Geometry>Abstract>Vector>YAxis)をZ軸(Geometry>Abstract>Vector>ZAxis)を中心に真北の角度分回転して真北ベクトルを作成します。
  2. Geometry>Abstract>Vector>Reverceで真北ベクトルを反転して真南ベクトルを作成します。

隣地境界線のジオメトリを取得
隣地境界線のジオメトリをリスト化する

  1. Revit>Selection>Select Model Elements でRevitの北側境界線を複数選択します。隣地斜線同様にモデル線分で作成しておきます。
  2. Revit>Elements>Element>Geometry で選択したモデル線分から幾何情報のみを取り出します。この時点では取得したLineがListのList、つまり階層化されています。
  3. List>Modify>Flattenで階層を1階層にします。

10m上方へコピーする
10m上方へコピー

  1. Geometry>Modifiers>Geometry>Translate(direction, distance)で、取得した隣地境界線のジオメトリを10m上方へコピーします。入力はdirection=Z方向、distanceはInput>Basic>Numberノードを使用して10000とします。

エラーの修正

ノードが黄色くなりエラーが表示されます。Dynamo>基本設定の一般のページでジオメトリのスケーリングを大に設定します。

南側へ10m
10m南にコピー

  1. 10m上方へコピーした線
  2. 真南ベクトル
  3. Geometry>Modifires>Geometry>Translate(direction, distance)ノードを追加し、作成した南向きのベクトルを使用して10m上方へコピーした線を南側へ10mコピーします。

上方へ12.5m(1.25倍)

1.25倍上へコピー

  1. 南側へ10mコピーした線
  2. Math>Operators>* を使用し1.25倍する
  3. Geometry>Modifires>Geometry>Translate(direction, distance)ノードを追加し、南10mへコピーした線を上方へ12.5mコピーします。

ロフト

ロフトで面を作成
  1. 敷地境界線のジオメトリ(List.Flattenの出力ポート)
  2. 10m上方へコピーした線
  3. 南へ10mコピーした線を上方へ12.5mコピーした線
  4. List>Generate>List Createを配置し+ボタンをクリック、入力ポートを2つにする。
  5. List>Organize>TransposeでListの組み合わせを反転する。これはちょうどエクセルで行列を入れ替えるのと同じです。
  6. Geometry>Surfaces>Suraface>ByLoft(crossSections)へつなぎます。

DirectShape

ダイレクトシェイプの作成
  1. List>Generate>List Createで作成したSurfaceをリストにします。
  2. Revit>Selection>Categoriesで外構や一般モデルなどのモデルカテゴリを設定します。
  3. Input>Basic>Stringノードを追加し、作成するダイレクトシェイプの名前およびマテリアルの名前を設定します。なお、
  4. Revit>Elements>Material>ByNameでマテリアルを指定します。マテリアルはあらかじめプロジェクトに同じ名前のマテリアルを作成しておく必要があります。
  5. Revit>Elements>DirectShape>ByGeometryで作成したジオメトリ(Surface)をRevit上に実体化します。
ダイレクトシェイプでモデリングする


グラフ全体

全体


グラフはこちらからダウンロードできます。

2022年4月9日土曜日

Dynamoで隣地斜線

面の要素

隣地斜線は敷地境界線の法線方向に傾いた「面」です。面の要素はRevitの要素で作成することはできませんが、Dynamoとダイレクトシェイプを利用することで作成することができます。隣地斜線を面の要素として作成してみましょう。

隣地斜線のモデルを作成する

動画のご案内

Dynamoの説明はなかなか文字と図では難しいので、動画を作成しました。AKNとYouTubeで公開していますのでご視聴ください。なお、法的な数値はあくまで参考として取り扱ってください。あくまでも考え方を説明した動画ととしてご視聴ください。


参考データ

ダイナモのグラフはこちらからダウンロードできます。