キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 
キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 
How to use Archicad - NEW
リニューアルしたHow to use Archicadです! みなさんのArchicadの使い方を教えてください!

GDLスクリプトによるオブジェクトの作り方(初級編)【旧サイトから転載】

※本記事は、旧サイト「How to use Archicad」より、Yutaro Kijimaさん の2018年3月9日の記事を転載しています。

 

GDLスクリプトによるオブジェクトの作り方(初級編)
blockコマンドを使ってカラーボックスを作ってみましょう。
1.パラメータ
 
1)パラメータの設計
側板、棚板で構成され、全体サイズ、部材厚さ、材質が変更できるようにします。棚板は高さの中心に1段のみ設置します。変数は基本的に自由ですが、規定変数であるグローバル変数とは重複しないように注意する必要があります。

2-1-620x423.png


2)値を変更します。

3-1.png


3)パラメータを追加します。
パラメータ設定画面の「新規」をクリックし、パラメータが追加されたら
左側の▲▼をドラッグして、一番下に移動します。

4-1.png


4)側板の厚さの「変数」を変更し、「名前」「値」を入力します。

5-1.png


5)棚板の厚さのパラメータも同様に追加、入力します。

6.png


6)材質のパラメータを追加します。
パラメータを追加し「変数」「名前」を入力した後、「タイプ」を「材質」に変更します。
「値」は材質一覧から選択します。

7.png


2.側板の作成
 
1)側板の材質を設定します
material m_side
materialコマンドで変数を指定します。形状コマンドの実行前に設定します。次にmaterialが記述されるまでこの材質で表現されます。
 
2)側板のコマンドを入力します。
block t_side,b,zzyzx
幅はt_side、奥行はb、高さはzzyzxとして記述します。「スクリプトを確認」をクリックし、問題無ければ「3D表示」をクリックして形状を確認します。

8-1.png


3)座標原点を移動します(座標変換)。
add a-t_side,0,0
座標変換とは、block等コマンドを実行する前に座標の移動や回転させることを言います。
addは移動で x,y,z同時に指定できます。X方向にa-t_side座標原点を移動します。

9-1.png


4)右側の側板のコマンドを入力します。
block t_side,b,zzyzx

10.png


5)座標変換を元に戻します。
del 1
座標変換の回数をdelの後に指定します。座標変換を元に戻さないと、その後のコマンドが、移動位置から実行されます。

11-1.png

delを指定していない状態

12-1.png

delを指定した状態
2.棚板の作成
 
1)棚板の材質を設定します。
material m_tana
 
2)座標変換します。
add t_side,0,0
側板の厚さ分、座標原点を移動します。
 
3)下側の棚板のコマンドを入力します。
block a-t_side*2,b,t_tana
幅はa-側板厚×2に設定します。

13-1.png


4)座標変換します。
add 0,0,zzyzx/2-t_tana/2
※高さ/2-棚板厚さ/2に座標を移動します。
 
5)真ん中の棚板のコマンドを入力します。
block a-t_side*2,b,t_tana

14-1.png


6)座標変換します。
add 0,0,zzyzx/2-t_tana/2
 
7)上側の棚板のコマンドを入力します。
block a-t_side*2,b,t_tana
 
8)座標変換を元に戻します。
del 3
 
(参考)3Dスクリプト全文
material m_side
block t_side,b,zzyzx
add a-t_side,0,0
block t_side,b,zzyzx
del 1
 
material m_tana
add t_side,0,0
block a-t_side*2,b,t_tana
add 0,0,zzyzx/2-t_tana/2
block a-t_side*2,b,t_tana
add 0,0,zzyzx/2-t_tana/2
block a-t_side*2,b,t_tana
del 3

15-1.png


3.2Dスクリプト。
project2 3,270,2
※基礎編と記述内容は同じです。

16-1.png


4.検証
設定したパラメータが、3D、2Dとも想定通りに変化しているか確認します。問題無ければファイルに保存します。

0件の返信0