2023-12-27 09:14:10 | 我爱编程网
你是想学PYTHON编程还是只是想只得到这个PYTHON文件。可以给你提供一条简洁的途径用modelbuilder来实现,将多个SHP文件拖入进去,再把MERGE工具拖进去,双击modelbuilder中的merge工具框设置,再双击output
dataset框设置输出。然后将这些shp文件用倒数第二个按钮添加链接的功能将他们一个个与merge工具框链接起来。最后点击model-export-to
srcipt-python
就会输出一个python文件,可以用记事本打开查看里面的代码。
要计算ArcGIS面要素在某一方向上的最长距离,可以使用以下步骤:
使用arcpy库中的Polygon对象读取面要素。
计算要截取的平行线的起点和终点坐标,可以使用math库中的sin和cos函数计算。
使用arcpy库中的Polyline对象创建平行线。
使用arcpy库中的Intersect_analysis函数计算面要素和平行线的交点。
使用math库中的sqrt函数计算每个交点到起点的距离。
找到最长的距离并返回。
下面是一个示例代码:
import arcpyimport math
# 读取面要素polygon = arcpy.Polygon(arcpy.Array([arcpy.Point(*coords) for coords in polygon_coords]))
# 角度
angle = 112# 起点坐标
start_x, start_y = polygon.centroid.X, polygon.centroid.Y
# 计算终点坐标我爱编程网
end_x = start_x + math.cos(math.radians(angle)) * 1000 # 1000是平行线长度
end_y = start_y + math.sin(math.radians(angle)) * 1000# 创建平行线
line_array = arcpy.Array([arcpy.Point(start_x, start_y), arcpy.Point(end_x, end_y)])line = arcpy.Polyline(line_array)
# 计算交点
intersect_points = arcpy.Intersect_analysis([polygon, line], arcpy.Geometry())
# 计算每个交点到起点的距离
distances = [math.sqrt((point.X - start_x) ** 2 + (point.Y - start_y) ** 2) for point in intersect_points]
# 找到最长距离
max_distance = max(distances)
print('最长距离:', max_distance)
注意,上述代码中的polygon_coords是一个包含面要素坐标的列表。另外,代码中使用了ArcGIS的arcpy库,需要安装ArcGIS软件并配置Python环境才能正常运行。
我爱编程网(https://www.52biancheng.com)小编还为大家带来关于arcgis的python脚本编程, shape文件出png图片问题的相关内容。
1、点类型的转栅格:
PointToRaster example 1 (Python
window)
Converts point features to a raster dataset.
import arcpy
from arcpy import env
env.workspace = "c:/data"
arcpy.PointToRaster_conversion("ca_ozone_pts.shp", "ELEVATION",
"c:/output/ca_elev", "MAXIMUM", "", 2000)
PointToRaster example 2
(stand-alone script)
Converts point features to a raster dataset.
# Name: PointToRaster_Ex_02.py
# Description: Converts point features to a raster dataset.
# Requirements: ArcInfo
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Set local variables
inFeatures = "ca_ozone_pts.shp"
valField = "ELEVATION"
outRaster = "c:/output/ca_elev02"
assignmentType = "MAXIMUM"
priorityField = ""
cellSize = 2000
# Execute PointToRaster
arcpy.PointToRaster_conversion(inFeatures, valField, outRaster,
assignmentType, priorityField, cellSize)
2、面类型的转栅格:
PolygonToRaster example 1
(Python window)
Converts polygon features to a raster dataset.
import arcpy
from arcpy import env
env.workspace = "c:/data"
arcpy.PolygonToRaster_conversion("ca_counties.shp", "NAME",
"c:/output/ca_counties.img",
"MAXIMUM_AREA", "MALES", 0.25)
PolygonToRaster example 2
(stand-alone script)
Converts polygon features to a raster dataset.
# Name: PolygonToRaster_Ex_02.py
# Description: Converts polygon features to a raster dataset.
# Requirements: ArcInfo
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Set local variables
inFeatures = "ca_counties.shp"
valField = "NAME"
outRaster = "c:/output/ca_counties"
assignmentType = "MAXIMUM_AREA"
priorityField = "MALES"
cellSize = 0.5
# Execute PolygonToRaster
arcpy.PolygonToRaster_conversion(inFeatures, valField, outRaster,
assignmentType, priorityField, cellSize)
3、线类型转栅格
PolylineToRaster example 1
(Python window)
Converts polyline features to a raster dataset.
import arcpy
from arcpy import env
env.workspace = "c:/data"
arcpy.PolylineToRaster_conversion("roads.shp", "CLASS", "c:/output/roads.img",
"MAXIMUM_COMBINED_LENGTH", "LENGTH", 30)
PolylineToRaster example 2
(stand-alone script)
Converts polyline features to a raster dataset.
# Name: PolylineToRaster_Ex_02.py
# Description: Converts polyline features to a raster dataset.
# Requirements: ArcInfo
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Set local variables
inFeatures = "roads.shp"
valField = "CLASS"
outRaster = "c:/output/roads.tif"
assignmentType = "MAXIMUM_COMBINED_LENGTH"
priorityField = "LENGTH"
cellSize = 30
# Execute PolylineToRaster
arcpy.PolylineToRaster_conversion(inFeatures, valField, outRaster,
assignmentType, priorityField, cellSize)
java如何调用c语言源文件并进行执行?要在java中调用c语言的库,需要使用Java提供了JNI。\x0d\x0a举例说明\x0d\x0a在c语言中定义一个voidsayHello()函数(打印HelloWorld);然后在Java中调用这个函数显示HelloWord.\x0d\x0a现在分别从Java和C语言两部分说明:\x0d\x0a1.Java部分\x0d\x0a首先定义一个Hell
java程序打包成exe文件1、首先全局快捷键Ctrl加Alt加Shift加S。2、其次新建JAR,选择有依赖关系的模块。3、最后选择要打包的项目,选择要执行的main函数和jar包路径,即可将java程序打包成exe文件。怎样将编译好的java程序打包成可执行文件?需要的工具myeclipse、jar2exe步骤:1、将Java项目导出成.jar包,鼠标右键项目名,选
如何将java源程序打包成可执行文件把java项目打包成exe可执行文件!打包跨平台的.exe文件。安装后运行左窗窗口标有十步。第1步:完全略过,直接点Next第2步:选择“JARinEXEmode”就是选择已经有制作好的jar文件。第3步:上面是项目名称,可随便填写,下面一个写出想要将打包后的exe文件输出的目录的是“桌面\project\”。
如何利用Python制作exe文件[适合初学者]如何在Python中为初学者开始exe文件?exe是可在Windows环境中使用的可执行文件的扩展名,下面我们使用pyinstaller来制作exe,请看一下详细内容。在此之前,我们首先要对Python熟悉掌握。【推荐教程:Python视频教程】一:什么是exe?exe是Windows环境中的文件扩展名之一,它是一个可执行文件,虽
php常用bc函数PHP中提供了多个实用的bc函数,以处理高精度数学运算,包括基本的算术运算和数论相关的计算。以下是其中一些关键函数的简介:bcadd:用于两个任意精度数字的加法计算,提供精确的结果。bcsub:执行减法操作,确保在大数值场景下的准确性。bcmul:执行乘法运算,对于需要高精度乘积的场景非常有用。bcdi
怎么将java项目打包并生成start.bat文件运行2.编写一个start.bat执行文件 start.bat文件中的内容如下: java-classpathcxf-rt-ws-addr-2.5.1.jar;demiddleware.jarclient.MuleClientTest在这段内容中,需要把该java项目所用到的jar包都要引入进来,jdk本身的jar包不需导入。client.M
如何用myeclipse编译一个java文件MyEclipse是自动编译java文件的。1、在建立类的时候,就进行编译了2、当修改类源码的时候,会点击保存这个动作,在这个时候,又会重新编译类为.class文件3、点击菜单栏Project,选择BuildAutomatically这个会也会自动编译的如何在MyEclipse中编译java程序?如何运行java程序?第一种方法
java读取excel表格数据前言:小编读写Excel使用的是EasyExcel,EasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目。详细了解和使用请参考官方文档:EasyExcel一、Excel示例二、代码实现1、引入依赖dependencygroupIdcom.alibaba/groupIdartifactIdeasyexcel/artifact
2025-02-01 20:24:39
2025-02-12 03:21:37
2025-02-10 15:19:48
2025-01-28 17:58:32
2024-11-22 05:08:01
2024-09-10 08:50:00