3D 編集用のフィーチャの高さ(Z)の設定
3D 編集を行えると、地理データにコンテキストを提供できます。フィーチャを作成して配置したものをよりリアルに視覚化できるとともに、3D 空間内で簡単にエラーを修正したり、値を変更したりできます。編集対象の GIS フィーチャの高さ、つまり Z 値の設定は、3D 編集を行う際の必要不可欠な部分です。
標高サーフェス上に配置されるベンチや道路など、多くのフィーチャは、Z 値をまったく必要とせず、表示される高さがリアルタイムで下のサーフェス レイヤから割り当てられる 2 D フィーチャに該当します。構造の最上部にある観測点や 3D 飛行経路など、その他のフィーチャは、サーフェスとは異なる 3D 空間内の位置を定義するために Z 値を必要とします。
ラスタ DEM、TIN、テレイン データセットなど、サーフェスからリアルタイムにフィーチャを適用できない場合にのみフィーチャの Z 値を作成および維持するのが最も効果的な方法です。
フィーチャが Z 値を必要としない場合は、フィーチャへの標高値(Z 値)の保存方法に関して、ジオメトリ(Shape)フィールド内に保存するか、フィーチャ属性として保存するかという 2 つのオプションがあります。ポイント フィーチャの場合は、どちらのオプションも推奨されます。ライン フィーチャまたはポリゴン フィーチャの場合、データで頂点ごとに異なる高さが必要とされる場合は、Z 値をフィーチャ ジオメトリ内に保存する必要があります。マルチパッチ フィーチャの場合、3D オブジェクト(建物など)の相対的な高さはフィーチャ ジオメトリ内に保存しなければなりません。
フィーチャ レイヤの Z 値の取得元の定義
フィーチャ レイヤの標高ソースを設定するためにさまざまなオプションが用意されています。レイヤの標高プロパティは、ArcScene の [レイヤ プロパティ] ダイアログ ボックスにある [基準高度] タブで設定できます。標高ソースの定義に使用可能な各オプションには、標高をサーフェスから取得する、直接フィーチャから取得する、レイヤに対する定数オフセットとして取得するがあります。これらのオプションについては、以下で詳しく定義します。
フィーチャ レイヤの標高(Z 値)を定義するのに編集セッションで作業している必要はありません。
標高のソース
- サーフェスの標高:サーフェス上のレイヤをドレープすると、フィーチャの Z 値を定義して維持する必要がなくなります。また、下にあるサーフェスが変更された場合は、サーフェス上にドレープされているフィーチャの高さの表示も自動的に変更されます。
- フィーチャの標高:この場合、データによってオプションが異なります。
- o フィーチャの高度値を使用しない - レイヤの 3D ジオメトリを使用して高さを取得したくない場合はこのオプションを選択します。これは、2D フィーチャのデフォルトです。標高サーフェスが定義されている場合、フィーチャはちょうど地表面上に配置されます。
- o フィーチャの高度値を使用する - これは、3D フィーチャ レイヤのデフォルトです。フィーチャはフィーチャの Z 値によって指定された高さで表示されます。このオプションは、2D フィーチャには使用できません。
- 定数または式を使用 - フィーチャの標高を決定するために定数またはカスタム表現を適用します。式の中でフィーチャ属性を使用することもできます。その場合は、フィーチャの 1 つ以上の属性に基づいて高さが設定されます。
- レイヤ オフセット:このオプションでは、フィーチャ レイヤ内のすべてのフィーチャに対する定数オフセットを指定できます。ArcScene では、これはシーン座標単位になります。指定したオフセットが現在の Z 値に追加されます。
上記の 3 つのオプションは付加的であり、相互独立ではありません。たとえば、飛行機に、地表面からの高さという属性があるとします。このフィーチャを正しい標高で表示するには、そのベース(標高)プロパティをドレープとして設定する(オプション 1: サーフェスの標高)とともに、属性からのオフセット(オプション 2: フィーチャの標高をフィーチャ属性を使用する式として)設定する必要があります。
フィーチャ ジオメトリを使用したフィーチャの高度設定
ジオメトリに Z 値が格納されているフィーチャの編集時は、以下のことを行えます。
- 対話的にフィーチャをサーフェス上、または他の既存のフィーチャの上に置く(既存の建物の屋上に樹木を植える場合など)
- 対話的に既存のフィーチャを上下に動かしてフィーチャの高さを設定する
- フィーチャの正確な Z 値を入力する
フィーチャクラスが Z 対応でない場合は、予測した結果が得られないことがあります。たとえば、建物の屋上に樹木を植える場合に trees フィーチャクラスが Z 対応でないと、作成される新しいフィーチャは、実際には、高さが 0 に等しい 2D フィーチャとなり、フィーチャが、期待した配置場所である屋上ではなくビル内部の場所に配置されてしまう可能性があります。したがって、フィーチャを作成および管理するときはデータを理解しておくことが重要です。
レイヤ ベースの設定を使用したフィーチャの高度設定
ジオメトリに Z 値が含まれていないフィーチャの編集時は、以下のことを行えます。
- フィーチャを直接、標高サーフェス上に配置する(公園のベンチなど)
- 属性を使用して、絶対高度を持つフィーチャを定義する(ヘリコプターの位置など)
- 属性を使用して、サーフェスを基準(オフセット)としてフィーチャを定義する(地下鉄の駅など)