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& ...
随机推荐
- Docker安装MySQL集群【读写分离】
Centos7系统Docker安装 目录 Centos7系统Docker安装 目录 Centos7系统Docker安装 1.下载mysql镜像 2.创建Master实例并启动 参数说明 3.创建Sla ...
- LeetCode入门指南 之 动态规划思想
推荐学习labuladong大佬的动态规划系列文章:先弄明白什么是动态规划即可,不必一次看完.接着尝试自己做,没有思路了再回过头看相应的文章. 动态规划一般可以由 递归 + 备忘录 一步步转换而来,不 ...
- mysql switch语句
SELECT CASE the_order_status WHEN 4 THEN '待收货' WHEN 5 THEN '已收货' ELSE '其他' END AS statuss ,order_id ...
- shell运算方式
1.(())--整数运算 [root@m01 /server/scripts]# a=1 [root@m01 /server/scripts]# b=2 [root@m01 /server/scrip ...
- Python常见问题 - 写入数据到 excel 报 ValueError: invalid literal for int() with base 10 错误
背景 在上写入数据到excel中,报了以下错误 出现原因 对于写入excel场景下出现该错误的话,很大概率是写入数据的单元格原本的数据格式有问题 解决方法 清理掉单元格的旧数据,然后再写入就可以了
- 知乎大佬图文并茂的epoll讲解,看不懂的去砍他
select.poll.epoll的文章很多,自己也看过不少经典好文.不过第一次看到讲的如此通俗易懂.又图文并茂的.因此拿来分享下,供后续翻看学习. 原文链接:https://zhuanlan.zhi ...
- redis存取数据String
一.连接不同数据库和存取String类型值 1.连接数据库 2.set和get多个 3.取值并赋值 取值返回的是赋值改变之前的值: 4.递增和递减 5.字符串尾部加值 6.商品编号自增应用
- 获取input对应的的选项
需求是把所有题目中的选项ABCDEF等对应保存到后台, 这个问卷中有多选项和单选项 var data = {}; $(".u-box .u-item").each(function ...
- bean的作用域和生命周期
一.Bean作用域 二.生命周期 其中,这个类实现各种接口重写各种方法,会按bean的声明周期按序执行: 其中,自定义的初始化和自定义销毁的方法不是实现接口重写,而是成员方法,并且在装配bean即在x ...
- 通过HttpURLConnection下载图片到本地--批量下载
一.背景说明 这篇文章讲述的是批量下载附件,在上一篇文章中,介绍了下载单个附件(上一篇文章). 二.实现思路 主要的实现思路:创建文件夹->文件夹中创建需要下载的文件->压缩文件夹-> ...