ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • 帮助
  • Sign Out
ArcGIS Desktop

ArcGIS Online

专为贵组织打造的制图平台

ArcGIS Desktop

全面的专业性 GIS

ArcGIS Enterprise

面向企业的 GIS

ArcGIS Developers

用于构建位置感知应用程序的工具

ArcGIS Solutions

适用于行业的免费模板地图和应用程序

ArcGIS Marketplace

获取适用于组织的应用程序和数据

  • 文档
  • 支持
Esri
  • 登录
user
  • 我的个人资料
  • 登出

ArcMap

  • 主页
  • 入门
  • 地图
  • 分析
  • 管理数据
  • 工具
  • 扩展模块

天际线图

  • 描述
  • 插图
  • 使用方法
  • 语法
  • 代码示例
  • 环境
  • 许可信息

描述

计算天空的可见性,并选择性地生成表和极线图。

所生成的表和图表示从观察点到天际线上每个折点的水平角和垂直角。

插图

天际线图

使用方法

  • 评估从观察点到每个折点的方位角和垂直角,并可以通过指定输出角度表将其导出至独立表。此表中会显示下列字段:

    • HORIZ_ANG - 水平角。
    • ZENITH_ANG - 天顶角。

    如果选择了附加字段:

    • FEATURE_ID - 遮挡观察点天空视野的天际线要素。
    • VERTEX_X - 折点的 X 坐标。
    • VERTEX_Y - 折点的 Y 坐标。
    • VERTEX_Z - 折点的 Z 坐标。
    • DIST_2D - 从观察点到折点的水平距离。
    • DIST_3D - 从观察点到折点的坡面距离。
  • 结果窗口将返回所有观察点的可见天空的平均百分比,以及最大垂直角和最小垂直角。该值可表示为 0 到 1 之间的值,其中 0.8 表示天际线可见性的 80%。

  • 算术水平角等于 90 减去方位角,而天顶角等于 90 减去垂直角。(算术水平角为 0 时表示正东,而 90 时表示正北;天顶角为 90 时表示水平,而 0 时表示竖直向上。)

  • 可见天空的百分比始终在结果中列出。此值等于天际线上方的区域除以基本可见角(参数之一,默认值为零,表示与观察点在同一高程)上方的区域,并且只能在天际线的方位角范围内进行计算。

语法

arcpy.ddd.SkylineGraph(in_observer_point_features, in_line_features, {base_visibility_angle}, {additional_fields}, {out_angles_table}, {out_graph})
参数说明数据类型
in_observer_point_features

包含一个或多个观察点的输入要素。

Feature Layer
in_line_features

表示天际线的线要素。

Feature Layer
base_visibility_angle
(可选)

用作计算可见天空百分比的基线的垂直角。0 表示水平,90 表示竖直向上;-90 表示竖直向下。默认值为 0。

Double
additional_fields
(可选)

指定是否有附加字段添加到角度表中。

  • NO_ADDITIONAL_FIELDS —不添加附加字段。这是默认设置。
  • ADDITIONAL_FIELDS —将添加附加字段。
Boolean
out_angles_table
(可选)

创建用于输出角度的表。

Table
out_graph
(可选)

指定名称将创建第一个观察点的天际线轮廓的极线图。该图代表可以从观察点的位置看到的潜在天空,并具有由该观察点定义的原点。必须生成一个表以便创建该图,且只有在 ArcMap、ArcGlobe 或 ArcScene 中执行该工具时才能显示该图。

Graph

派生输出

名称说明数据类型
out_visibility_ratio

所有观察点的可见天空的平均百分比。该值可表示为 0 到 1 之间的值,其中 0.8 表示天际线可见性的 80%。

双精度型

代码示例

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)

环境

  • 当前工作空间
  • 范围
  • 地理变换

许可信息

  • Basic: 需要 3D Analyst
  • Standard: 需要 3D Analyst
  • Advanced: 需要 3D Analyst

相关主题

  • 可见性工具集概述
  • 有关表面的基础知识
  • 分析可见性

ArcGIS Desktop

  • 主页
  • 文档
  • 支持

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

关于 Esri

  • 关于我们
  • 招贤纳士
  • Esri 博客
  • 用户大会
  • 开发者峰会
Esri
分享您的想法。
Copyright © 2021 Esri. | 隐私政策 | 法律声明