3D Analyst Tools(3D Analyst 工具)
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 工具)的更多相关文章
- Spatial Analyst Tools(Spatial Analyst 工具)
Spatial Analyst Tools 1.区域分析 # Process: 以表格显示分区几何统计 arcpy.gp.ZonalGeometryAsTable_sa("", & ...
- 多比Web 3D展示(3D机房/3D监控)中间件多比Web 3D展示(3D机房/3D监控)中间件免费下载购买地址
多比3D是实现3D场景搭建的软件开发包,可以创建广泛的3D应用,适用于高端制造.能源.国防军工.教育科研.城市规划及建筑环艺.生物医学等领域的虚拟仿真,应用于虚拟展示.虚拟设计.方案评审.虚拟装配.虚 ...
- 使用webgl(three.js)搭建一个3D建筑,3D消防模拟——第三课
项目背景 消防安全一直是各大都市关注的重要课题,在消防体系中,特别是高楼消防体系中,消防系统整体布控与监控,火情有效准确定位,防火器材定位,人员逃生路径规划,火情预警,消防演习都是特别重要的环节.所以 ...
- 如何用webgl(three.js)搭建一个3D库房,3D密集架,3D档案室,-第二课
闲话少叙,我们接着第一课继续讲(http://www.cnblogs.com/yeyunfei/p/7899613.html),很久没有做技术分享了.很多人问第二课有没有,我也是抽空写一下第二课. 第 ...
- (转)stage 3d or unity 3d
这个是这样子的.stage3d如果不使用flascc的话,性能会卡在as上面.你没卡是因为你用的效果还不够高级.往深了走的高端应用就是卡as性能上.这不是你代码能优化了的.我们后来都改用flascc写 ...
- 物联网3D,物业基础设施3D运维,使用webgl(three.js)与物联网设备结合案例。搭建智慧楼宇,智慧园区,3D园区、3D物业设施,3D楼宇管理系统——第八课
写在前面的废话: 很久没有更新文章了,这段时间一直忙于项目落地,虽然很忙,但是感觉没有总结,没有提炼的日子,总是让人感觉飘飘忽忽的. 所幸放下一些事,抽出一些时间,把近期的项目做一些整理与记录.也算是 ...
- 如何用three.js实现数字孪生、3D工厂、3D工业园区、智慧制造、智慧工业、智慧工厂-第十课
文章前,先聊点啥吧. 最近元宇宙炒的挺火热,在所有人都争相定义元宇宙的时候,资本就开始着手入场了.当定义明确,全民皆懂之后,风口也就过去了. 前两天看到新闻,新世界CEO宣布购入最大的数字地块,这块虚 ...
- 如何用three.js(webgl)搭建3D粮仓、3D仓库、3D物联网设备监控-第十二课
序: 最近因为疫情,居家办公,索性翻翻之前的项目案例,总结总结. 这次疫情,深圳停摆,群众也挺恐慌的,封闭前一天,超市被抢购一空,虽然官方媒体一再强调,材米油盐蔬菜肉类管够,但是任然挡不住群众们的抢购 ...
- 4-Highcharts 3D图之3D普通饼图
<!DOCTYPE> <html lang='en'> <head> <title>4-Highcharts 3D图之3D普通饼图</title& ...
随机推荐
- Go错误处理正确姿势
1. panic 在什么情况下使用panic? 在程序启动的时候,如果有强依赖的服务出现故障时panic退出 在程序启动的时候,如果发现有配置明显不符合要求,可以panic退出(预防编程) 其他情况下 ...
- mybaits源码分析--日志模块(四)
一.日志模块 首先日志在我们开发过程中占据了一个非常重要的地位,是开发和运维管理之间的桥梁,在Java中的日志框架也非常多,Log4j,Log4j2,Apache Commons Log,java.u ...
- java IO操作,看完你应该就清晰了。
前言: java中IO里的一些知识对于一个java新手来说,是比较难理解的.因为里面存在一些很绕的概念,比如: 1.到底是读入写出,还是读出写入: 2.我要将一个文件的内容拷贝到另一个文件是先用Inp ...
- Selenium系列(十九) - Web UI 自动化基础实战(6)
如果你还想从头学起Selenium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1680176.html 其次,如果你不懂前端基础知识, ...
- Flask - 访问返回字典的接口报错:The view function did not return a valid response. The return type must be a string, tuple, Response instance, or WSGI callable, but it was a dict.
背景 有一个 Flask 项目,然后有一个路由返回的是 dict 通过浏览器访问,结果报错 关键报错信息 TypeError: 'dict' object is not callable The vi ...
- 基本ServletWEB项目
项目搭建 项目链接https://gitee.com/zhangjzm/smbms.git 前置知识,Servlet JSP 结构图 搭建maven web项目 1.搭建一个maven web项目 2 ...
- junit5 yaml和json 数据驱动
使用yaml 数据驱动测试 新建用例数据类,用于动态修改测试数据 对应yaml文件,第一层结构为列表 第二层结构为具体序列化class对象 测试成功 public class TestYaml { @ ...
- Linux残留的EFI启动项删除后又恢复的问题
电脑Windows + Fedora双系统,UEFI启动,共用同一个EFI分区.现在删除了Fedora系统,那么应该将EFI分区中的Fedora启动项也删除之. 按照网上的办法,在Windows上,尝 ...
- JAVA安全基础之代理模式(一)
JAVA安全基础之代理模式(一) 代理模式是java的一种很常用的设计模式,理解代理模式,在我们进行java代码审计时候是非常有帮助的. 静态代理 代理,或者称为 Proxy ,简单理解就是事情我不用 ...
- IO流实现GBK写入文件然后转换UTF-8
public static void main(String[] args) throws IOException { File file = new File("olol\\a.txt&q ...