ArchiCAD29にて、3Dゾーンに直接室名ラベルを張るGDLを、Geminiサポートにて簡単に作成できます。
ぜひお試しください。
※どこまで実用性があるかは疑問ですが、一応、とある方からの「3D画面でゾーンの室名が視覚的に確認できたらいいのに」という素朴な投げかけから、できた成果物です。
Geminiに下記プロンプトを投げてみてください。
---以下をコピー&ペースト---
ArchicadのGDLオブジェクトを一から作成したいです。GND(一般GDLオブジェクト)のサブタイプのままで、配置されたゾーン(部屋)の「室名」を自動取得して、2D(平面図)と3D空間の両方に表示するオブジェクトのスクリプトを作成してください。
じめて作成するので、以下の「満たすべき仕様」を最初からすべて組み込んだ、コピペするだけの完成版スクリプト(マスター、2D、3D)を出力してください。
【満たすべき仕様】
1. 【パラメータの追加指示】
ユーザーが事前にオブジェクトの「パラメータ」画面で、変数名「st_zone_name」(タイプ:文字列)を手動追加する必要があることを、手順として最初にアナウンスしてください。
2. 【マスタースクリプト】
`REQUEST ("Zone_relations", ...)` を使用して室名を取得し、3D空間でも「ZONE OUT」エラーにならずに部屋名が表示されるよう、取得した部屋名を上記パラメータ `st_zone_name` にキャッシュ(代入)する処理を記述してください。
3. 【3Dスクリプト】
- 文字の高さ(大きさ)は200mm、フォントは「MS Gothic」、配置は中央揃え(アンカー5)に設定してください。
- 文字の後ろにうっすら出る不要な影を消すため、`shadow off` を記述してください。
- オブジェクト自体の高さパラメータ「ZZYZX」と連動させ、`addz ZZYZX` を使って設定画面から3Dテキストの配置高さを自由に変更できるようにしてください。
- 文字の厚みは10mm(0.01)で水平に配置してください。
4. 【2Dスクリプト】
- 平面図の原点に、3Dと同じ部屋名が中央揃えで表示されるように記述してください。
余計な解説や分割されたコードではなく、各スクリプトにそのまま貼り付けられる「きれいなひとまとめのコード」でお願いします。