3Data Expert
６．テクスチャ作業の手順
6.1 テクスチャの機能
3Data Expert を使用して、STL や VRML 形式で入力された三角化モデルにテクスチャ画像を貼り付ける手順について説明します。3Data Expert は、テクスチャ画像の精度を高める方法として、STL モデルを面に分解しています。
STL モデルの修正や分割については、既に説明しました。今回は、通常の STL モデルにテクスチャ画像を貼り付け、更にその上にテクスチャ画像を貼り付け、そして VRML 形式でファイル出力します。

また、VRML モデルのテクスチャ画像の削除や変更についても説明します。モデル修正で失われたテクスチャ画像を復元することもできます。モデルは、拡張子.zpr のファイル形式でも出力可能で、Z 社のプリンターにも使用できます。

6.2 ロゴの貼り付け (Adding a logo)
STL モデルに DeskArtes 社のロゴを貼り付けます。基本的な操作は、Render/Define STL
Texture command を使用します。最初に Tutorial/GeomFiles から モデル slubox.stl を入力します。
このモデルが正しく作成されているか、Solid/Repair command あるいは Solid/Verifycommand を選択して、デフォルトのパラメーターを適用して、エラーがないか確認して下さい。
ロゴを貼り付ける前に、パートの基本色を変更しておきます。3Data Expert は、STL モデルが入力されると、デフォルト色としてピンクになっています。Model Tree Window のColor button（下図のグリーンで囲まれたボタン）をクリックして、グリーンに変更して下さい。

これから、画面に表示された slubox.stl に、DeskArtes 社のロゴを貼り付けます。まず、Render/Define STL Texture command を選択します。次のダイアログが表示されます。

このダイアログの詳細については、help の Define STL Texture command を参照下さい。
ここでは、単純に画像を選択し、テクスチャ画像の投影方向と有効な奥行範囲を設定します。最初に、X-方向からのビュー表示にし、fit command で画面の中央に slubox.stl を表示します。
（イメージは、下図の通りです。）
View direction button をクリックし、テクスチャ画像の投影面を決定します。今、画面は、X-方向に表示され、パート上にテクスチャ画像を貼り付けることができます。ピンクのワイヤーフレームの三角が画面上に表示されています。これは投影面を意味します。次に、
Set image button をクリックし、テクスチャ画像を選択します。3Data Expert では Texture
directory のための file open window が表示されます。dalogo.bmp

を選択して、入力し下さい。DeskArtes のロゴが image window に表示されます。

Pick area---button がアクティブに代わっています。この段階で、STL パートの上にテクスチャ画像を貼り付ける範囲を設定できます。
Pick area ---button をクリックして、テクスチャ領域を設定して下さい。ダイアログのボタンは、全てイナクティブの状態になっています。マウスを動かして、ポイントを左クリックで Pick します。赤い十字マークが表示され、テクスチャ領域を設定するための最初の点となります。次に、パート上でマウスをドラッグ移動し、rubberband box がどのようになるかを確認して下さい。この領域が、後でテクスチャが表示される領域です。また、マウス位置から最初の十字マークまでのラインが、STL Texture dialog のテクスチャ画像の左側のエッジに対応します。任意の画像サイズで、マウスの左ボタンをクリックし、サイズと位置を決定して下さい。画面は、下図のようになります。

レッドのボックス線は、テクスチャ画像の貼り付け位置を示しています。もし、この領域を変更したい場合には、Pick area button をクリックして再設定できます。最初の点と左側のエッジのもう一つの点に沿ってテクスチャ画像が貼り付けられます。領域のサイズは、画面下のステータスバーに表示されています。

len フィールドは、3D 画像の左側エッジの長さを、calc wid フィールドは、テクスチャ領域の幅を表現しています。この計算は、左側のエッジ長さとテクスチャ画像のアスペクト比に基づいて計算されています。
テクスチャ画像の位置に問題がなければ、STL Texture Mapping dialog の Apply button
をクリックして、STL パートに画像を貼り付けます。もし、テクスチャ画像の位置を変更したければ、カーソルキーで、テクスチャ領域を移動できます。シフトキーとカーソルキーで拡大、縮小できます。下図の左側は、Apply が適用され、テクスチャ画像が貼り付けられたパートです。

右側の図は、アイポイントで少し回転し、テクスチャ領域の有効範囲をデフォルト状態でのフルモデルで表示しています。
この例では、手前の最も近い面にテクスチャ画像を貼り付けていますが、テクスチャ効果のため Show Advanced button を選択し奥行などを設定することもできます。ここには、テクスチャ画像の投影をコントロールするためのパラメーターがあります。下図を参照して下さい。丸で囲まれた上向きの矢印を使用して、Texture effect box の最小座標値を変更することができます。グリーンで囲まれた上向きの矢印をクリックすると、下図の右側の画像のようになります。Box の後方の最後の部分が、テクスチャの側面に近づいています。
正しい結果を得るには、パートを回転、ズーム、移動などで位置調整を必要とします。

Apply button を再度クリックして下さい。最も手前のテクスチャ画像のみが適用されます。
結果が適正でなければ、arrow button を使って、Texture effect Area を正しく設定し、Apply button をクリックして下さい。この操作で、テクスチャ画像を適切な位置に貼り付けて下さい。

テクスチャ画像を正しく配置ができれば、OK をクリックしてテクスチャ画像の貼り付け作業を終了します。結果は、次のようなものになります。
（Model Tree のノードを開いてどのようになっているかも確認して下さい。）

ここで、Model Tree の slubox のコンポーネントを開くと、三角化されたサーフェスがTexture 定義されているのが分ります。また、ノード STLSURFS̲が作成されています。このノードは、テクスチャ定義を含んでいます（画像、投影方向、Texture effect box 等）。このノードを、modify, delete で変更はできません。Define STL command によってのみ、自動的に変更、更新できます。
ノード 1.slubox (STL Repair)を選択し、拡張子に.zpr を選択し、File Save commandを実行して保存して下さい。この結果、直近の View 方向に基づいた.zpr 形式のファイルが作成されます。これは、Z 社のプリントソフトの場合とほぼ同様です。
Render/VR Export command で、一般的なカラーデータ出力の VRML ファイルを作成することもできます。また、VRML dialog の Browse button を使用して、file name とディレクトリを設定することもできます（この場合、Export Texture file の拡張子は JPEG です）。
出力された VRML ファイル、ロゴの box は、アニメーションや 3D カラープリンターの印刷で使用されます。
STL モデルに複数のテクスチャ画像を作成できます。また、Define STL Texture command を使って、ダイアログのドロップダウンリストで New texture area を選択して、新しいテクスチャ領域を作成することもできます。

テクスチャ画像の上に、更にテクスチャ画像を作成できます。後から作成されたテクスチ
ャ画像は、前のテクスチャ画像を見えなくします。例えば、木模様のテクスチャ画像とロゴを作成するには、最初に木模様のテクスチャ画像を作成し、次にロゴのテクスチャ画像を作成します。
（Tutorial/GeomFiles/slubox_tex2.da を使用して、試した結果は下図のようになります。
）

このように、ユーザーは Render/Define STL Texture command を使用して、VRML モデル上に、更に新しいテクスチャ画像を貼り付けることができます。

6.3 テクスチャ画像の復活 (Restoring the Texture)
テクスチャ画像が貼り付けられた STL パート、あるいは入力された VRML データを Solid やVerify menu commands を実行すると、テクスチャ画像に関する情報は消滅します。テクスチャ画像の情報は Resume VRML Texture command で復活できます。ここでは、VRML モデルを入力し、分割した後で、復活の作業について説明します。
最初に、表示機能が View/Display Texture/Texture Images が ON になっているか確認して下さい。次に、Tutorial/GeomFiles directory の slubox̲tex2.wrl を入力し、Y 軸方向からの表示にします。次に、Modify split command でモデルを分割します（分割と結合については、別の資料で既に説明しています）。結果は、テクスチャ画像のあるモデルが、テクスチャ画像のない２個のパートに分割され、下図のようになります。

実際のパートでは、ここで結合のためのピンを付加するのですが、テクスチャ画像の復活の手順に焦点をあてているので、その説明は省略します。ここで、再度 slubox̲tex2.wrlを入力すると、テクスチャ画像のモデルが表示されます。次に、multiple selection 機能を使います。Model Tree で、分割されたパート 1. sulubox̲tex21 (STL Split)を最初に選択し、そして VRML モデル 3.sllubox̲tex2 (VRML Input)を control キーを押しながら選択します。結果は下図のようになります。

引き続き、Render/Restore VRML Texture command を選択します。次のように画面が表示され、分割で消滅したテクスチャ画像を復活します。

分割された片方のパートにも、同様の手順で、試して下さい。これで、結果のパートは、suffixʼ(VRML Restore)ʼを持ち、拡張子.zpr ファイルあるいは VRML ファイルとして出力できます。
パートにテクスチャ画像が貼り付けたあとで、それを分割する場合には、分割前のオリジナルパートを disk に必ず保存しておきます。それで、次に Restore VRML Texture commandを実行する時に保存したコピーを使い、テクスチャ画像を復活することができます。
（本内容は、3Data Expert 7.1 のチュートリアルに基づいた操作手順で記載しています。）