3D Analyst 工具

工具里有又细分如下分类:



注:以下代码的参数需要另行配置,不能直接执行;Python2不支持中文变量!

1、3D 要素

# Process: 3D 内部
arcpy.Inside3D_3d("", "", 输出表, "SIMPLE") # Process: 3D 差异
arcpy.Difference3D_3d("", "", 输出要素类, 输出表__2_) # Process: 3D 相交
arcpy.Intersect3D_3d("", 输出要素类__2_, "", "SOLID") # Process: 3D 线与多面体相交
arcpy.Intersect3DLineWithMultiPatch_3d("", "", "IDS_ONLY", 输出点, 输出线) # Process: 3D 缓冲
arcpy.Buffer3D_3d("", 输出要素类__3_, "", "STRAIGHT", "20", "") # Process: 3D 联合
arcpy.Union3D_3d("", 输出要素类__4_, "", "ENABLE", "ENABLE", 输出表__3_) # Process: 3D 邻近
arcpy.Near3D_3d("", "", "", "NO_LOCATION", "NO_ANGLE", "NO_DELTA") # Process: 依据属性实现要素转 3D
arcpy.FeatureTo3DByAttribute_3d("", 输出要素类__6_, "", "") # Process: 封闭多面体
arcpy.EncloseMultiPatch_3d("", 输出多面体要素类, "0.15") # Process: 是否为闭合 3D
arcpy.IsClosed3D_3d("") # Process: 更新要素 Z
arcpy.UpdateFeatureZ_3d("", "", "LINEAR", "") # Process: 最小包围体
arcpy.MinimumBoundingVolume_3d("", "", 输出要素类__8_, "CONVEX_HULL", "NONE", "", "NO_MBV_FIELDS") # Process: 添加 Z 信息
arcpy.AddZInformation_3d("", "", "NO_FILTER") # Process: 规则化建筑物覆盖区
arcpy.RegularizeBuildingFootprint_3d("", 输出要素类__10_, "RIGHT_ANGLES", "", "", "0.25", "1.5", "0.1", "1000000")

2、CityEngine

# Process: 基于 CityEngine 规则转换要素
arcpy.FeaturesFromCityEngineRules_3d("", "", 输出要素) # Process: 导出为 3D Web 场景
arcpy.ExportTo3DWebScene_3d("", Web_场景)

3、功能性表面

# Process: 3D 线与表面相交
arcpy.Intersect3DLineWithSurface_3d("", "", 输出线, 输出点) # Process: 插值 Shape
arcpy.InterpolateShape_3d("", "", 输出要素类, "", "1", "LINEAR", "DENSIFY", "0", "EXCLUDE") # Process: 添加表面信息
arcpy.AddSurfaceInformation_3d("", "", "", "LINEAR", "", "1", "0", "NO_FILTER") # Process: 表面体积
arcpy.SurfaceVolume_3d("", 输出文本文件, "ABOVE", "", "1", "0") # Process: 重叠剖面
arcpy.StackProfile_3d("", "", 输出表, 输出图表名称)

4、可见性

# Process: 可见性
arcpy.Visibility_3d("", "", 输出栅格, 输出地平面以上的栅格, "FREQUENCY", "ZERO", "1", "FLAT_EARTH", "0.13", "", "", "", "", "", "", "", "", "") # Process: 天际线
arcpy.Skyline_3d("", 输出要素类, "", "1000 Meters", "0 Meters", "", "FULL_DETAIL", "0", "360", "1", "0 Meters", "NO_SEGMENT_SKYLINE", "100", "VERTICAL_ANGLE", "SKYLINE_MAXIMUM", "NO_CURVATURE", "NO_REFRACTION", "0.13", "0", "NO_CREATE_SILHOUETTES") # Process: 天际线图
arcpy.SkylineGraph_3d("", "", "0", "NO_ADDITIONAL_FIELDS", 输出角度表, 输出图表名称) # Process: 天际线障碍
arcpy.SkylineBarrier_3d("", "", 输出要素类__2_, "0 Meters", "0 Meters", "NO_CLOSED", "0 Meters", "NO_PROJECT_TO_PLANE") # Process: 太阳阴影体
arcpy.SunShadowVolume_3d("", "2021/10/7 9:24:07", 输出要素类__3_, "ADJUSTED_FOR_DST", "China_Standard_Time", "", "0", "DAYS") # Process: 构造视线
arcpy.ConstructSightLines_3d("", "", 输出, "<None>", "<None>", "<None>", "1", "NOT_OUTPUT_THE_DIRECTION") # Process: 视域
arcpy.Viewshed_3d("", "", 输出栅格__2_, "1", "FLAT_EARTH", "0.13", 输出地平面以上的栅格__2_) # Process: 视域 2
arcpy.Viewshed2_3d("", "", 输出栅格__3_, 输出地平面以上的栅格__3_, "FREQUENCY", "0 Meters", 输出观察点_区域关系表, "0.13", "0 Meters", "", "1 Meters", "", "GROUND", "", "GROUND", "0", "360", "90", "-90", "ALL_SIGHTLINES") # Process: 视点分析
arcpy.ObserverPoints_3d("", "", 输出栅格__4_, "1", "FLAT_EARTH", "0.13", 输出地平面以上的栅格__4_) # Process: 通视分析
arcpy.LineOfSight_3d("", "", 输出要素类__4_, 输出障碍点要素类, "NO_CURVATURE", "NO_REFRACTION", "0.13", "0", "") # Process: 通视性
arcpy.Intervisibility_3d("", "", "VISIBLE")

5、数据管理

数据管理—LAS数据集

# Process: LAS 高度度量
arcpy.LasHeightMetrics_3d("", "", "height_", "", "", "2 Meters", "4", "20 Meters") # Process: 使用要素设置 LAS 类代码
arcpy.SetLasClassCodesUsingFeatures_3d("", "", "NO_COMPUTE_STATS") # Process: 分类 LAS 噪点
arcpy.ClassifyLasNoise_3d("", "ISOLATION", "CLASSIFY", "NO_WITHHELD", "NO_COMPUTE_STATS", "", "", "", "", "", "", "DEFAULT", "PROCESS_EXTENT", 输出要素类) # Process: 分类 LAS 地面点
arcpy.ClassifyLasGround_3d("", "STANDARD", "RECLASSIFY_GROUND", "", "COMPUTE_STATS", "DEFAULT", "", "PROCESS_EXTENT") # Process: 分类 LAS 建筑物
arcpy.ClassifyLasBuilding_3d("", "", "0 Unknown", "COMPUTE_STATS", "DEFAULT", "", "PROCESS_EXTENT", "", "RECLASSIFY_BUILDING", "NOT_PHOTOGRAMMETRIC_DATA", "STANDARD", "NO_CLASSIFY_ABOVE_ROOF", "", "") # Process: 分类 LAS 重叠
arcpy.ClassifyLasOverlap_3d("", "", "DEFAULT", "PROCESS_EXTENT", "NO_COMPUTE_STATS") # Process: 切片 LAS
arcpy.TileLas_3d("", "", "切片", 输出_LAS_数据集__3_, "COMPUTE_STATS", "", "", "NO_COMPRESSION", "REARRANGE_POINTS", "", "XY_COORDS", "250", "", "", "") # Process: 按区域统计 LAS 点
arcpy.LasPointStatsByArea_3d("", "", "") # Process: 按邻域查找 LAS 点
arcpy.LocateLasPointsByProximity_3d("", "", "", "COUNT", 输出要素类__2_, "MULTIPOINT", "", "NO_COMPUTE_STATS") # Process: 按高度分类 LAS
arcpy.ClassifyLasByHeight_3d("", "GROUND", "3 5;4 25;5 50", "NONE", "NO_COMPUTE_STATS", "DEFAULT", "PROCESS_EXTENT", "") # Process: 提取 LAS
arcpy.ExtractLas_3d("", "", "DEFAULT", "", "PROCESS_EXTENT", "", "MAINTAIN_VLR", "REARRANGE_POINTS", "COMPUTE_STATS", 输出_LAS_数据集__7_, "SAME_AS_INPUT") # Process: 更改 LAS 类代码
arcpy.ChangeLasClassCodes_3d("", "", "NO_COMPUTE_STATS", "DEFAULT", "", "PROCESS_EXTENT") # Process: 着色 LAS
arcpy.ColorizeLas_3d("", "", "", "", "_colorized", "1.4", "7", "NO_COMPRESSION", "REARRANGE_POINTS", "NO_COMPUTE_STATS", 输出_LAS_数据集__8_) # Process: 稀疏化 LAS 点
arcpy.ThinLas_3d("", "", "3D", "", "", "CLOSEST_TO_CENTER", "", "thinned", 输出_LAS_数据集__9_, "", "", "", "", "", "", "NO_COMPRESSION", "MAINTAIN_VLR", "REARRANGE_POINTS", "NO_COMPUTE_STATS")

数据管理—Terrain数据集

# Process: 从 Terrain 中移除要素类
arcpy.RemoveFeatureClassFromTerrain_3d("", "") # Process: 创建 Terrain
arcpy.CreateTerrain_3d("", "", "", "50000", "", "WINDOWSIZE", "ZMIN", "NONE", "1") # Process: 删除 Terrain 点
arcpy.DeleteTerrainPoints_3d("", "", "") # Process: 向 Terrain 添加要素类
arcpy.AddFeatureClassToTerrain_3d("", "") # Process: 更改 Terrain 分辨率界限
arcpy.ChangeTerrainResolutionBounds_3d("", "", "", "", "OVERVIEW") # Process: 更改 Terrain 参考比例
arcpy.ChangeTerrainReferenceScale_3d("", "", "") # Process: 替换 Terrain 点
arcpy.ReplaceTerrainPoints_3d("", "", "", "") # Process: 构建 Terrain
arcpy.BuildTerrain_3d("", "NO_UPDATE_EXTENT") # Process: 添加 Terrain 金字塔等级
arcpy.AddTerrainPyramidLevel_3d("", "", "") # Process: 移除 Terrain 金字塔等级
arcpy.RemoveTerrainPyramidLevel_3d("", "") # Process: 追加 Terrain 点
arcpy.AppendTerrainPoints_3d("", "", "", "")

数据管理—TIN

# Process: 创建 TIN
arcpy.CreateTin_3d(输出_TIN, "", "", "DELAUNAY") # Process: 复制 TIN
arcpy.CopyTin_3d("", 输出_TIN__2_, "CURRENT") # Process: 描绘 TIN 数据区
arcpy.DelineateTinDataArea_3d("", "", "PERIMETER_ONLY") # Process: 编辑 TIN
arcpy.EditTin_3d("", "", "DELAUNAY")

6、栅格插值

# Process: 克里金法
arcpy.Kriging_3d("", "", 输出表面栅格, "None #", "", "VARIABLE 12", 输出预测栅格数据的方差) # Process: 反距离权重法
arcpy.Idw_3d("", "", 输出栅格, "", "2", "VARIABLE 12", "") # Process: 含障碍的样条函数
arcpy.SplineWithBarriers_3d("", "", "", "", 输出栅格__2_, "0") # Process: 地形转栅格
arcpy.TopoToRaster_3d("", 输出表面栅格__2_, "", "DEFAULT", "20", "", "", "ENFORCE", "CONTOUR", "20", "", "1", "0", "2.5", "100", 输出河流折线要素, 输出其余汇点要素, 输出诊断文件, 输出参数文件, "", 输出残差点要素, 输出河流和悬崖错误点要素, 输出等值线错误点要素) # Process: 样条函数法
arcpy.Spline_3d("", "", 输出栅格__3_, "", "REGULARIZED", "0.1", "12") # Process: 自然邻域法
arcpy.NaturalNeighbor_3d("", "", 输出栅格__4_, "") # Process: 趋势面法
arcpy.Trend_3d("", "", 输出栅格__5_, "", "1", "LINEAR", 输出_RMS_文件) # Process: 通过文件实现地形转栅格
arcpy.TopoToRasterByFile_3d("", 输出表面栅格__3_, 输出河流折线要素__2_, 输出其余汇点要素__2_, 输出残差点要素__2_, 输出河流和悬崖错误点要素__2_, 输出等值线错误点要素__2_)

7、栅格表面

# Process: 含障碍的等值线
arcpy.ContourWithBarriers_3d("", 输出等值线要素, "", "POLYLINES", "", "NO_EXPLICIT_VALUES_ONLY", "0", "", "0", "", "1") # Process: 坡向
arcpy.Aspect_3d("", 输出栅格, "PLANAR", "METER") # Process: 坡度
arcpy.Slope_3d("", 输出栅格__2_, "DEGREE", "1", "PLANAR", "METER") # Process: 填挖方
arcpy.CutFill_3d("", "", 输出栅格__3_, "1") # Process: 山体阴影
arcpy.HillShade_3d("", 输出栅格__4_, "315", "45", "NO_SHADOWS", "1") # Process: 曲率
arcpy.Curvature_3d("", 输出曲率栅格, "1", 输出剖面曲线栅格, 输出平面曲线栅格) # Process: 等值线
arcpy.Contour_3d("", 输出要素类, "", "0", "1", "CONTOUR", "") # Process: 等值线列表
arcpy.ContourList_3d("", 输出折线要素, "")

8、栅格计算

# Process: 乘
arcpy.Times_3d("", "", 输出栅格) # Process: 减
arcpy.Minus_3d("", "", 输出栅格__2_) # Process: 加
arcpy.Plus_3d("", "", 输出栅格__3_) # Process: 转为整型
arcpy.Int_3d("", 输出栅格__4_) # Process: 转为浮点型
arcpy.Float_3d("", 输出栅格__5_) # Process: 除
arcpy.Divide_3d("", "", 输出栅格__6_)

9、栅格重分类

# Process: 使用 ASCII 文件重分类
arcpy.ReclassByASCIIFile_3d("", "", 输出栅格, "DATA") # Process: 使用表重分类
arcpy.ReclassByTable_3d("", "", "", "", "", 输出栅格__2_, "DATA") # Process: 分割
arcpy.Slice_3d("", 输出栅格__3_, "", "EQUAL_INTERVAL", "1") # Process: 查找表
arcpy.Lookup_3d("", "", 输出栅格__4_) # Process: 重分类
arcpy.Reclassify_3d("", "", "", 输出栅格__5_, "DATA")

10、表面三角化

# Process: 在两个 TIN 间拉伸
arcpy.ExtrudeBetween_3d("", "", "", 输出要素类) # Process: 定位异常值
arcpy.LocateOutliers_3d("", 输出要素类__2_, "NO_APPLY_HARD_LIMIT", "0", "0", "APPLY_COMPARISON_FILTER", "0", "150", "0.5", "2500") # Process: 抽稀 TIN 结点
arcpy.DecimateTinNodes_3d("", 输出_TIN, "", "NO_BREAKLINES") # Process: 表面坡向
arcpy.SurfaceAspect_3d("", 输出要素类__3_, "", "AspectCode", "0") # Process: 表面坡度
arcpy.SurfaceSlope_3d("", 输出要素类__4_, "PERCENT", "", "SlopeCode", "1", "0") # Process: 表面差异
arcpy.SurfaceDifference_3d("", "", 输出要素类__5_, "0", "0", 输出栅格, "10", "", "", "CLOSEST_TO_MEAN", "CLOSEST_TO_MEAN", "DEFAULT", "") # Process: 表面等值线
arcpy.SurfaceContour_3d("", 输出要素类__6_, "", "0", "Contour", "0", "", "Index_Cont", "1", "0") # Process: 面体积
arcpy.PolygonVolume_3d("", "", "", "BELOW", "Volume", "SArea", "0") # Process: 面插值为多面体
arcpy.InterpolatePolyToPatch_3d("", "", 输出要素类__8_, "1024", "1", "Area", "SArea", "0")

11、转换

从LAS数据集转出

# Process: LAS 数据集转 TIN
arcpy.LasDatasetToTin_3d("", 输出_TIN, "NONE", "", "", "5000000", "1", "CLIP")

由Terrain转出

# Process: Terrain 转 TIN
arcpy.TerrainToTin_3d("", 输出_TIN, "0", "5000000", "CLIP") # Process: Terrain 转栅格
arcpy.TerrainToRaster_3d("", 输出栅格, "FLOAT", "LINEAR", "OBSERVATIONS 250", "0") # Process: Terrain 转点
arcpy.TerrainToPoints_3d("", 输出要素类, "0", "<NONE>", "MULTIPOINT")

由TIN转出

# Process: TIN 三角形
arcpy.TinTriangle_3d("", 输出要素类, "PERCENT", "1", "", "") # Process: TIN 线
arcpy.TinLine_3d("", 输出要素类__2_, "Code") # Process: TIN 结点
arcpy.TinNode_3d("", 输出要素类__3_, "", "Tag_Value") # Process: TIN 范围
arcpy.TinDomain_3d("", 输出要素类__4_, "LINE") # Process: TIN 转栅格
arcpy.TinRaster_3d("", 输出栅格, "FLOAT", "LINEAR", "OBSERVATIONS 250", "1") # Process: TIN 边
arcpy.TinEdge_3d("", 输出要素类__5_, "DATA") # Process: TIN 面标签
arcpy.TinPolygonTag_3d("", 输出要素类__6_, "Tag_Value")

由栅格转出

# Process: 栅格范围
arcpy.RasterDomain_3d("", 输出要素类, "LINE") # Process: 栅格转 TIN
arcpy.RasterTin_3d("", 输出_TIN, "", "1500000", "1") # Process: 栅格转多点
arcpy.RasterToMultipoint_3d("", 输出要素类__2_, 输出_VIP_表, "NO_THIN", "MIN", "1")

由要素类转出

# Process: 多面体覆盖区
arcpy.MultiPatchFootprint_3d("", 输出要素类, "") # Process: 要素类 Z 转 ASCII
arcpy.FeatureClassZToASCII_3d("", "", "pf.txt", "GENERATE", "SPACE", "AUTOMATIC", "3", "DECIMAL_POINT") # Process: 3D 图层转要素类
arcpy.Layer3DToFeatureClass_3d("", 输出要素类__2_, "")

3D Analyst Tools(3D Analyst 工具)的更多相关文章

  1. Spatial Analyst Tools(Spatial Analyst 工具)

    Spatial Analyst Tools 1.区域分析 # Process: 以表格显示分区几何统计 arcpy.gp.ZonalGeometryAsTable_sa("", & ...

  2. 多比Web 3D展示(3D机房/3D监控)中间件多比Web 3D展示(3D机房/3D监控)中间件免费下载购买地址

    多比3D是实现3D场景搭建的软件开发包,可以创建广泛的3D应用,适用于高端制造.能源.国防军工.教育科研.城市规划及建筑环艺.生物医学等领域的虚拟仿真,应用于虚拟展示.虚拟设计.方案评审.虚拟装配.虚 ...

  3. 使用webgl(three.js)搭建一个3D建筑,3D消防模拟——第三课

    项目背景 消防安全一直是各大都市关注的重要课题,在消防体系中,特别是高楼消防体系中,消防系统整体布控与监控,火情有效准确定位,防火器材定位,人员逃生路径规划,火情预警,消防演习都是特别重要的环节.所以 ...

  4. 如何用webgl(three.js)搭建一个3D库房,3D密集架,3D档案室,-第二课

    闲话少叙,我们接着第一课继续讲(http://www.cnblogs.com/yeyunfei/p/7899613.html),很久没有做技术分享了.很多人问第二课有没有,我也是抽空写一下第二课. 第 ...

  5. (转)stage 3d or unity 3d

    这个是这样子的.stage3d如果不使用flascc的话,性能会卡在as上面.你没卡是因为你用的效果还不够高级.往深了走的高端应用就是卡as性能上.这不是你代码能优化了的.我们后来都改用flascc写 ...

  6. 物联网3D,物业基础设施3D运维,使用webgl(three.js)与物联网设备结合案例。搭建智慧楼宇,智慧园区,3D园区、3D物业设施,3D楼宇管理系统——第八课

    写在前面的废话: 很久没有更新文章了,这段时间一直忙于项目落地,虽然很忙,但是感觉没有总结,没有提炼的日子,总是让人感觉飘飘忽忽的. 所幸放下一些事,抽出一些时间,把近期的项目做一些整理与记录.也算是 ...

  7. 如何用three.js实现数字孪生、3D工厂、3D工业园区、智慧制造、智慧工业、智慧工厂-第十课

    文章前,先聊点啥吧. 最近元宇宙炒的挺火热,在所有人都争相定义元宇宙的时候,资本就开始着手入场了.当定义明确,全民皆懂之后,风口也就过去了. 前两天看到新闻,新世界CEO宣布购入最大的数字地块,这块虚 ...

  8. 如何用three.js(webgl)搭建3D粮仓、3D仓库、3D物联网设备监控-第十二课

    序: 最近因为疫情,居家办公,索性翻翻之前的项目案例,总结总结. 这次疫情,深圳停摆,群众也挺恐慌的,封闭前一天,超市被抢购一空,虽然官方媒体一再强调,材米油盐蔬菜肉类管够,但是任然挡不住群众们的抢购 ...

  9. 4-Highcharts 3D图之3D普通饼图

    <!DOCTYPE> <html lang='en'> <head> <title>4-Highcharts 3D图之3D普通饼图</title& ...

随机推荐

  1. 微信小程序学习笔记四 自定义组件

    1. 自定义组件 类似Vue或react中的自定义组件 小程序允许我们使用自定义组件的方式来构建页面 1.1 创建自定义组件 类似于页面, 一个自定义组件由json wxml wxss js 4个文件 ...

  2. 跟我一起用unity做小地图!

    lol的小地图 转载爬虫请自重,未问先转没排面 不爱多做铺垫,小地图对于一些游戏来说多重要大家都懂,不然你也不会来看我这篇文章的,对不对? 话不多说,开搞! 一.主体功能 一般来说,游戏里的迷你地图都 ...

  3. NVidia Jetson Ubuntu 18.04 安装ROS过程中运行sudo rosdep init指令出错

    参考:https://www.cnblogs.com/xuhaoforwards/p/9399744.html 安装ROS过程中运行sudo rosdep init后,出现如下错误LOG: ERROR ...

  4. VS C++ C# 混合编程

    创建C++ DLL 注意,32bit和64bit之间不兼容 创建普通dll工程 设置Properties -> Configuration Properties -> General -& ...

  5. Servlet 之文件下载

    Servlet 之文件下载 import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; impor ...

  6. 在python3.6环境下使用cxfreeze打包程序

    在python3.6环境下使用cxfreeze打包程序 环境:python3.6 打包程序:aliens_invasion 原本想使用pyintaller 进行打包,使用pip的安装过程也没有问题,打 ...

  7. kratos

    技术文章 日志库的使用姿势 通过 layout 探索 kratos 运行原理 发版日志 发布日志 - kratos v2.0.5 版本发布 发布日志 - kratos v2.0.4 版本发布

  8. C++11多线程编程

    1. 多线程编程 在进行桌面应用程序开发的时候, 假设应用程序在某些情况下需要处理比较复杂的逻辑, 如果只有一个线程去处理,就会导致窗口卡顿,无法处理用户的相关操作.这种情况下就需要使用多线程,其中一 ...

  9. C#简单工厂模式学习

    刚学习设计模式,还不是太了解,感觉只有多数据库的情况下才用的到,待学习 首先创建空白解决方案,依次创建类库Model,IDAL,SqlServerDAL,DALFactory,BLL,DBUtilit ...

  10. Weblogic漏洞分析之JNDI注入-CVE-2020-14645

    Weblogic漏洞分析之JNDI注入-CVE-2020-14645 Oracle七月发布的安全更新中,包含了一个Weblogic的反序列化RCE漏洞,编号CVE-2020-14645,CVS评分9. ...