エンジニアは効率が大好きです, それについては疑いの余地はありません. 繰り返しに気づいたとき, 私たちは通常、自動化の方法を模索しています. エンジニアリングオートメーションの主要プロバイダーの1つとして, 私たちは何年にもわたってますます効率的なプロセスを作成したいという願望を監視してきました.
パラメトリックデザインの世界で最も人気のあるツールの1つはGrasshopperです 🦗 …Rhino3d 🦏 プラグイン – うん, 動物の名前はこのあたりの共通のテーマのようです! これは非常に強力なモデル生成ツールと見なされます, これが、Grasshopperと完全に機能的に統合されている理由です。 SkyCiv – Grasshopperプラグイン.
Rhinoは強力な3Dモデリングソフトウェアであり、すべてのモデリングエンティティに十分に文書化されたAPIを提供します. Grasshopperはビジュアルプログラミング言語です, 意味, あなたは様々なドロップすることができます “コンポーネント” 特定のタスクがあるビューポートに. 次に、あるコンポーネントからの出力を別のコンポーネントにフィードします. プログラミング用語で, バッタのコンポーネントは機能です. 始めるには何百もの組み込みコンポーネントがありますが、Pythonを使用して独自のコンポーネントを作成できる方が優れています, C#, VB, またはさらに簡単に, 既存のコンポーネントの組み合わせ.
それでは、腰を落ち着けて、「HelloWorld」スクリプトに相当する構造エンジニアを作成しましょう。; ポータルフレームシェッド!
これを2つのセクションに分けます:
- Grasshopperを使用してポータルフレームシェッドのジオメトリを作成する方法;
- 分析のためにジオメトリをSkyCiv構造に変換する.
ステージの終わりまでに 1, 以下に示すように、ポータルフレームシェッドの基本的なジオメトリを生成するパラメトリックスクリプトがあります。.
図 1. ポータルフレームシェッドのジオメトリを作成するための単純なGrasshopperスクリプト.
チュートリアル
まず最初に, に向かいます Rhino3dダウンロードページ お使いのコンピュータに適したパッケージをダウンロードしてインストールします. 執筆時点, Rhino7を使用しています.
次に、Rhinoを開き、から新しいプロジェクトを作成します。 “標準テンプレート” セクション. おそらくどちらか 大きなオブジェクト – 足 または 大きなオブジェクト – メートル, 私はメーターを使用しますが、これは最初の段階では何の違いもありません. これで、ビューポートが分割されているはずです 4 さまざまなビュー, 単一のビューが必要な場合, パースペクティブをクリックするだけです.
次, Grasshopperを起動します, 標準メニューにあるか、コマンドフィールドに「Grasshopper」と入力して見つけることができます.
図 2. バッタの発射.
これで、Grasshopperビューへのコンポーネントの追加を開始できます. これはいくつかの方法で行うことができます, コンポーネントの名前を知っている場合, スペースバーをタップするか、Grasshopperビューの任意の場所をダブルクリックするだけです, 名前を入力します, Enterキーを押します. あるいは, メニューのコンポーネントをクリックしてから、配置する場所をクリックできます.
UIに慣れるために簡単に説明しましょう.
数値スライダーを追加することから始めます: スペースバー→「数字スライダー」→入力. これにより、下限が「0」のスライダーがビューにドロップされます。, 「1」の上限, と「0.001」のステップサイズ. スライダーをダブルクリックしてこれらのパラメーターを調整できますが、より高速な方法があります! スペースバー→「0..30.00」→入力. これにより、下限が「0.00」のスライダーが作成されます。, 「30.00」の上限, と「0.01」のステップサイズ (「30.00」を使用したため). 0.00..30 同じ結果を達成します.
もう1つの優れたツールは パネル ツール, これは基本的に、コンポーネントの出力値を表示する付箋です。. パネルのショートカットは、単一の二重引用符とそれに続く内容です。. だから今タップ スペースバー→「→入力 パネルがあります. 数値スライダーの出力ノードをドラッグして、パネルの入力ノードにドロップします. スライドすると、パネルにスライダーの更新値が表示されます。!
次, 追加します 構築ポイント 成分. 座標系の原点にあるRhinoウィンドウに点が表示されます。. スライダーの値を1つまたは複数のポイント座標に接続します (直接またはパネルを介して) スライダーでポイントを移動できるようになります, 素晴らしい権利? Ctrlキーを押しながらワイヤーを外すことができます (またはCmd) そしてそれらを再描画します. コンストラクトポイントなどのGrasshopperのコンポーネントをクリックする, Rhinoでは緑色で表示されます.
2点を線で結んでみてください; ヒント: を見てください カーブ→プリミティブ メニュー. 線なし, これはあなたが今実験すべきもののようなものです.
図 4. GrasshopperからのRhino3dのプロットポイント.
これで、基本に慣れました。, 小屋の作成を始めましょう! 参照 図 1, 色付きのコンテナで定義された各グループを処理します, 左端の紫色のグループから始めます.
バイオレット
これは通常、スクリプトから始める場所です, コードの先頭にある変数宣言に似ています. 使用したいパラメータと必要なパラメータについて考えてください, ジオメトリを定義する. 先に進み、スライダーを作成します, ショートカットを練習する!
- 建物の幅 – ポータルの列から列までの距離.
- ひさしの高さ – 列の高さ.
- 尾根の高さ – 高さ 地面から 尾根へ.
- ステップ – 各ポータル間の距離.
- ポータル – ポータルの数, これは整数であることに注意してください: スペース→ 1..20 →入力.
注意: スクリプトを整理したい場合 (強くお勧めします), 複数のアイテムをドラッグして選択できます, 次に、空のスペースを右クリックして、アイテムをグループ化します. 「コントロール」を表示するコンポーネントはScribbleと呼ばれます. 次に、緑色のグループを右クリックして、必要に応じてカスタマイズできます.
オレンジ
オレンジ色のグループで, 入力に基づいて必要となる他の変数を計算しています. これはまた、紹介する良い機会です リレー. ワイヤーをダブルクリックしてリレーを追加します, それらはすべてを整理し、分岐できるようにするのに役立ちます. リレーをもう一度ダブルクリックして削除します.
最初のコンポーネントは 表現 いくつかの変数をプラグインできるコンポーネント, 数式を書いて結果を渡す (R) でる. ズームインすると, a ➕ そして ➖ コンポーネントに変数を追加または削除するためのボタンが表示されます. これは他の多くのコンポーネントにも当てはまります. コンポーネントをダブルクリックして入力します x / 2 式フィールドに. これで、稜線をプロットするのに役立つハーフスパンができました。.
2番目のオレンジ色のグループ, 私たちは使用しています シリーズ 各ポータルのY座標を提供する一連の数値を作成するコンポーネント. 直列コンポーネントの入力は次のとおりです。 “開始” (S), “刻み幅” (N), そして “カウント” (C). 提供しない場合 S 入力付き, デフォルトは 0. マウスを上に振ってこれを確認します S. ステップスライダーをNに接続し、ポータルスライダーをCに接続します. シリーズの出力に手を振るか、信頼できるパネルに接続して出力値を確認します. これで一連のY位置ができましたが、…Grasshopperはこれらの値を単純に数値として解釈しています。, Y座標ではありません. この数値の配列をYベクトルに送信することにより、それらをYベクトルに変換します。 ユニットY 成分, スペースバー→Y→入力. 出力を見てみると、数値が座標に処理されていることがわかります。. 直列部品の出力線が太いことに注意してください. これは、出力に複数の値があることを示しています (配列) 単一の値だけではありません.
図 5. 一連の座標を作成する.
青
青いグループで, 最初のポータルを構成するポイントをプロットしています; ポータルごとに5ポイント. 5つ追加します 構築ポイント 以前に使用したコンポーネントを使用して、正しい入力を接続してみてください. 使用する 図 1 行き詰まった場合の参考のために. コンポーネントを右クリックして、ラベルを付けることができます. オフにする必要があるかもしれません アイコンを描く アイコンではなくコンポーネントの名前を表示します. これはで見つけることができます 表示 メニュー (ウィンドウ表示メニュー, グラスホッパーの表示メニューではありません!).
これで、スライダーを使用してポータルノードを調整できるようになります。.
ピンク
今ではあなたは気付くかもしれません, 私たちの目標を達成する方法は何百万もあり、より効率的な方法もたくさんあります. 私たちがたどる道, さまざまなジオメトリ要素を別々のコンポーネントに保持し、いくつかの異なるツールを導入するため、大きな出力を1つのコンポーネントで終わらせないため、適切なオプションであると判断しました。, アイテムのごちゃごちゃ混乱.
に 移動 成分. このコンポーネントはかかります ジオメトリ (G) そして モーション (T). 複数を提供する場合、それを知るのに十分賢いです モーション 値, それらを繰り返し、それぞれをジオメトリパラメータに適用する必要があります. 一連のYベクトルを伴う各ポータルポイントを接続すると、複数のポータルが一列に表示されます。. ステップとポータルのスライダーを調整して、変更を確認します.
ブルーゾーンのポイントコンポーネントの1つをクリックするとどうなるかに注意してください, Rhinoに1つのポイントが表示されます, 次に、をクリックします 移動 フィード先のコンポーネントと同じ位置に緑色の点が表示され、他のコンポーネントも表示されます. これは重要! 各コンポーネントは ない 前のコンポーネントを調整する, むしろ, 複製を作成しています, 次に、その重複を調整します. これでポイントの行ができました, 青いグループのすべてのコンポーネントをドラッグしてハイライトします, 空のスペースを右クリック, 選択します プレビューオフ, Rhinoでこれらを見る必要はもうありません. これらのオプションは、中クリックするとラウンドメニューにも表示されます。. Magic Mouseを使用している場合は、次の方法でこのメニューを入手できます。 オプション+スペースバー.
緑
緑のセクションで, 尾根と軒先を ポリライン. これにより、頂点の順序付きリストが取得されます (V ) それらを通る線をプロットします. 他のパラメータ (C) 行を閉じる必要があるかどうかを示します, つまり、最後のポイントを最初のポイントに接続します. あなたは接続するかもしれません ブールトグル これにしかし私達はしません. 柱の基部を接続する2本の線は冗長である可能性が高いため、省略できます.
黄
このセクションで, 列と垂木線を作成しています. ここでは少し複雑な魔法が使われているので、初めて理解しなくても自分に負担をかけすぎないでください.
最後から, の ポリライン コンポーネントには、接続するポイントの順序付きリストが必要です. 最初の列の場合, 地面に沿って一列のポイントがあり、軒に沿って一列のポイントがあります. このデータを2つのポイントのグループに操作する必要があります, 各列の開始点, およびエンドポイント. 使用できます マージ これらの2行のポイントをまとめるコンポーネント, したがって、2つの行をにフィードします マージ コンポーネントそして次に ポリライン 成分, Z字型が作成されていることに気付くでしょう. これは当然のことです, の マージ コンポーネントは、2つのリストを1つに結合するだけです, より大きなリスト. 手を振る マージ 入力すると、「データ」のようなものが表示されます 1 なので 木」, これは、マージを実行する前に、ポイントの配列をツリーに変換する必要があることを意味します. 上のD1とD2の両方を右クリックします マージ コンポーネントをクリックし、それぞれの「グラフト」をクリックします, a ⬆️ 各入力の横に表示されます. これで、列は問題ないように見えます…しかし、なぜですか? プラグを差し込む マージ パネルに出力し、グラフトをオンとオフにフリックするときに違いを確認します.
図 6. マージされたツリーデータ.
深く潜りすぎずに, “グラフト” アイテムのリストを取得し、それらを独自のグループに入れます, 各グループにリストを含めることができます. したがって、2つのツリーをマージしようとすると, それぞれに同数のグループが含まれています, 同じインデックスを持つグループをマージします.
先に進み、柱と垂木を接続します. ここに, こんにちは小屋!
結びの考え
これで、Grasshopperがユーザーフレンドリーで非常に強力であることがわかりました。. 少し練習して, このようなスクリプトを30分で作成できるようになります. あなたがいくつかのまともなリソースを割り当てる場合の可能性を想像してみてください. パートを探してください 2 ここで使用します SkyCivグラスホッパープラグイン 小屋で構造解析を実行するには.