ArcGIS for Desktop

  • ドキュメント
  • 価格
  • サポート

  • My Profile
  • ヘルプ
  • Sign Out
ArcGIS for Desktop

ArcGIS Online

組織のマッピング プラットフォーム

ArcGIS for Desktop

完全なプロ仕様の GIS

ArcGIS for Server

エンタープライズ GIS

ArcGIS for Developers

位置情報利用アプリの開発ツール

ArcGIS Solutions

各種業界向けの無料のテンプレート マップおよびテンプレート アプリケーション

ArcGIS Marketplace

組織で使えるアプリとデータを取得

  • ドキュメント
  • 価格
  • サポート
Esri
  • サイン イン
user
  • マイ プロフィール
  • サイン アウト

ヘルプ

  • ホーム
  • はじめに
  • マップ
  • 解析
  • データ管理
  • ツール
  • その他...

スカイライン グラフ (Skyline Graph)

3D Analyst のライセンスで利用可能。

  • サマリ
  • 図
  • 使用法
  • 構文
  • コードのサンプル
  • 環境
  • ライセンス情報

サマリ

天空の可視領域を計算し、オプションでテーブルと極座標グラフを生成します。

テーブルとグラフは、観測点からスカイラインの各頂点に向かう水平角と対頂角を表します。

図

Skyline Graph

使用法

  • 入力として、観測ポイントとスカイライン (3D ライン) が必要です。
  • 観測ポイントから各頂点への方位角と対頂角が計算されます。
  • ツールは常に天空の可視領域の割合 (0 ~ 1) を返します。たとえば、0.8 は空の 80% が見えることを表します。
  • オプションで角度のテーブルを出力できます。テーブルを出力する場合は、オプションで極座標グラフも出力できます。
  • 天空の可視領域の割合は、最小および最大の対頂角と共に、常に [結果] ウィンドウに (ウィンドウが表示されていない場合は、結果情報に) 表示されます。
  • テーブルを出力する場合、テーブルの行には 2 つ以上の倍精度数値が含まれます。各行には少なくとも水平角と天頂角の値が含まれます。どちらも単位は度です。
  • [追加フィールド] を選択すると、スカイラインの頂点に続くエッジのソース (FEATURE_ID)、観測ポイントから頂点までの距離、頂点の座標などの情報を含む、追加の列が生成されます。ソースは、スカイラインに含まれるフィーチャの FID、またはスカイラインがサーフェス上にあることを示すコードです。
  • テーブルに必ず出力されるフィールドは、次のとおりです。

    • HORIZ_ANG - 水平角
    • ZENITH_ANG - 天頂角
  • 追加フィールドには、次のものがあります。

    • VERTEX_X - 頂点の X 座標
    • VERTEX_Y - 頂点の Y 座標
    • VERTEX_Z - 頂点の Z 座標
    • DIST_2D - 観測ポイントから頂点までの水平距離
    • DIST_3D - 観測ポイントから頂点までの傾斜距離
  • 追加フィールドは、グラフの生成に必ずしも必要ありません。

  • 数学座標の水平角は、90 から方位角を引いた値に等しくなります。また、天頂角は 90 から対頂角を引いた値です。数学座標の水平角は、0 で東、90 で北を表します。天頂角は、90 で水平、0 で真上を表します。

  • オプションのグラフは極座標グラフで、観測ポイントを中心とする球の表面上に投影されたスカイライン (3D ポリライン) を、球の中心の上空から見下ろしているような外観になります。
  • 極座標グラフは、中心から外に向かって線形です。つまり、赤道を表す円の半径は、45 度の標高角度を表す円の半径の 2 倍であり、グラフの中心は 90 度の標高角度 (天頂角が 0) を表していると想定しています。
  • 天空の可視領域の割合は、常に結果に表示されます。この値は、スカイラインより上の面積をベース表示角度より上の面積で割った値に等しく、スカイラインの方位角範囲内のみで計算されます (ベース表示角度はパラメーターの 1 つで、デフォルト値の 0 は観測ポイントと同じ標高を表します)。
  • グラフは、ツールが ArcMap、ArcGlobe、または ArcScene で実行されている場合のみ表示されます。

構文

SkylineGraph_3d (in_observer_point_features, in_line_features, {base_visibility_angle}, {additional_fields}, {out_angles_table}, {out_graph})
パラメータ説明データ タイプ
in_observer_point_features

1 つ以上の観測点を含む入力フィーチャ。

Feature Layer
in_line_features

スカイラインを表すライン フィーチャクラス。

Feature Layer
base_visibility_angle
(オプション)

天空の可視領域の割合を計算する際にベースラインとして使用する対頂角。0 は水平を表し、90 は真上を表します。また、-90 は真下を表します。デフォルトは 0 です。

Double
additional_fields
(オプション)

テーブルに、2 つの角度の値だけでなく追加フィールドを出力するかどうかを指定します。

  • NO_ADDITIONAL_FIELDS —追加フィールドを出力しません。これがデフォルトです。
  • ADDITIONAL_FIELDS —追加フィールドを出力します。
Boolean
out_angles_table
(オプション)

角度を出力するために作成するテーブル。デフォルトは空です。この場合、テーブルは出力されません。

Table
out_graph
(オプション)

オプションのグラフの名前。グラフを作成するには、テーブルを生成する必要があります。グラフが表示され、表示されたグラフを保存または編集できます。デフォルトは空です。この場合、グラフは出力されません。

Graph

コードのサンプル

SkylineGraph (スカイライン グラフ) の例 1 (Python ウィンドウ)

次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。

import arcpy
from arcpy import env

arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.SkylineGraph_3d("observers.shp", "skyline_outline.shp", 0, "ADDITIONAL_FIELDS", "table.dbf")
SkylineGraph (スカイライン グラフ) の例 2 (スタンドアロン スクリプト)

次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。

'''****************************************************************************
Name: Skyline Example
Description: This script demonstrates how to use the 
             Skyline tool.
****************************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback
from arcpy import env

try:
    # Obtain a license for the ArcGIS 3D Analyst extension
    arcpy.CheckOutExtension('3D')
    # Set environment settings
    env.workspace = 'C:/data'
    # Set Local Variables
    inPts = "observers.shp"
    inLines = "skyline_outline.shp"
    baseVisibility = 25
    # Ensure output table has unique name
    outTable = arcpy.CreateUniqueName("angles_table.dbf")
    
    #Execute SkylineGraph
    arcpy.SkylineGraph_3d(inPts, inLines, 0, "ADDITIONAL_FIELDS", outTable)


except arcpy.ExecuteError:
    print arcpy.GetMessages()
except:
    # Get the traceback object
    tb = sys.exc_info()[2]
    tbinfo = traceback.format_tb(tb)[0]
    # Concatenate error information into message string
    pymsg = 'PYTHON ERRORS:\nTraceback info:\n{0}\nError Info:\n{1}'\
          .format(tbinfo, str(sys.exc_info()[1]))
    msgs = 'ArcPy ERRORS:\n {0}\n'.format(arcpy.GetMessages(2))
    # Return python error messages for script tool or Python Window
    arcpy.AddError(pymsg)
    arcpy.AddError(msgs)

環境

  • 現在のワークスペース
  • テンポラリ ワークスペース
  • 範囲
  • 地理座標系変換

ライセンス情報

  • ArcGIS for Desktop Basic: 次のものが必要 3D Analyst
  • ArcGIS for Desktop Standard: 次のものが必要 3D Analyst
  • ArcGIS for Desktop Advanced: 次のものが必要 3D Analyst

関連トピック

  • 可視性ツールセットの概要
  • サーフェスの基礎
  • 可視領域の特定
このトピックへのフィードバック

ArcGIS for Desktop

  • ホーム
  • ドキュメント
  • 価格
  • サポート

ArcGIS プラットフォーム

  • ArcGIS Online
  • ArcGIS for Desktop
  • ArcGIS for Server
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Esri について

  • 会社概要
  • 採用情報
  • スタッフ ブログ
  • ユーザ カンファレンス
  • デベロッパ サミット
Esri
© Copyright 2016 Environmental Systems Research Institute, Inc. | プライバシー | リーガル