!!!ユーザー定義の窓を配置 「[[ユーザーデータの定義|ユーザーデータ_shd]]」では、小物を配置する例を説明しましたが、壁に貼りつくことのできる窓属性より「半開き障子」を作ってみることにします。 !!shdファイルの作成 横幅が3400mmのものを原点位置に配置します。 {{ref_image syouji_01_20080725.jpg}} ブラウザでは以下のような構成になっています。 {{ref_image syouji_02_20080725.png}} 「2D」「3D」パートは小物を配置したときと同じです。単位行列のパートに、「2D」パートでは上から見た図、「3D」パートに形状情報を入れます。 「Hole」というパートがあります。これは、窓形状のみの属性で「ここを窓部分として壁をくりぬこう」という目安のようなもののようです。ブーリアンでのマイナス記号みたいなものかな。ここにポリゴンメッシュとして窓全体を囲った直方体を配置します。 以上でshdファイルの作成は終わりです。「和室_障子.shd」として保存します。 ついでに85x85pixelのレンダリング画像を「和室_障子_icon.png」として保存、 150x150pixelのレンダリング画像を「和室_障子_info.png」として保存します。 !!XMLファイルの記述 XMLファイルは、小物の場合と若干異なります。 floor 0 core 半開き障子 和室_障子_info.png - - - - タグで囲っています。これで「窓」であるという認識をしているようです。 タグでshdファイル名の指定と、マウス位置が中心となるように「rotate="90.0,0.0,0.0" translate="-1700,0,0"」としています。障子の横幅は3400mmとしていたのでそれの半分の1700分マイナスX方向に移動させます。 にてミリメートル単位でのオフセット値(ここでは0ですので指定しないのと同じだとは思いますが)、 にてcoreとしてます。これは何なのか不明。 後は、小物アイテムを配置するときと同じです。 このXMLファイルを「和室_障子.xml」としてUTF-8で保存し、library.xmlにて のような追加を行います。 Shade Home Designを起動すると、以下の画像のように「半開き障子」をドラッグで配置することができるようになりました。 {{ref_image syouji_03_20080725.jpg}}