类参考介绍
在使用Python API进行开发之前,有几个基础类以及他们的关系需要了解一下,包括:
1.应用程序类:TXGlobeControl
2.图层类:TXLayer
3.要素类:TXGeoMarker
4.样式类:TXMarkerStyle
5.工具类:TXCoordConvertUtility
应用程序类:TXGlobeControl
该类是应用程序句柄,在Python当中要操作正在运行的图新地球桌面端C++应用程序,需要先获得这样的一个句柄,才完成对应用程序或者说三维地图的操作。 比如添加图层,删除图层、刷新地图等
该类新建插件,会默认在run方法中作为全局变量进行初始化。
Python
# 定义run方法,程序的默认执行入口,方法名称及定义不可修改,否则插件无法正常启动
def run(app):
# 定义三维地球对象
global globe
# 获取三维地球对象
globe = TXGlobeControl(app)
图层类TXLayer
图层是应用程序数据组织的基本类型,不论是倾斜摄影、还是影像、地形、矢量数据都是以图层为单位进行管理,可以控制图层的显示隐藏,要素的管理(增、删、改、查)
该类可通过TXGlobe对象的AddLayer方法的返回值获取
并进行要素的管理
Python
layer_marker = globe.AddLayer('D:/marker.kml')
marker = TXGeoMarker()
# 设置marker的属性:坐标、文字、图标等
....
layer_marker.AddMarker(marker)
要素类(TXGeoMarker)
要素是点线面的类的实例,要素有多重类型,点、线、面、图像叠加层、文件夹等多种类型。此处以点对象(Marker)为例进行说明。
要素需要放到图层里面进行管理
要素由坐标和样式组成,需要通过样式类进行设置。
Python
marker = TXGeoMarker()
position = TXPoint(lon_value, lat_value, 0)
marker.SetPosition(position)
current_layer.AddMarker(marker)
样式类(TXMarkerStyle)
样式类,主要用于设定图层或者要素的样式风格,如点对象的图标,文字颜色;线对象的线宽、线型、颜色;面对象的填充色、边框等
Python
marker = TXGeoMarker()
position = TXPoint(lon_value, lat_value, 0)
marker.SetPosition(position)
current_style = TXMarkerStyle()
current_style.SetIconPath("D:\\部门工作档案\\2023年部门工作档案\\内部立项\\图新地球Python "
"API产品立项\\文档\\图新地球\\LocaSpaceViewer4.4.5.20230815\\LocaSpaceViewer4\\Resource"
"\\image\\line_green.png")
current_style.SetIconAlign(AlignMode_TopCenter)
current_style.SetIconScale(5.0)
current_text_style = TXTextStyle()
current_text_style.SetAlign(AlignMode_TopCenter)
current_style.SetTextStyle(current_text_style)
marker.SetText(name_value)
marker.SetStyle(current_style)
marker.SetName(name_value)
current_layer.AddMarker(marker)
globe.Refresh()
工具类(TXCoordConvertUtility)
工具类主要用于提供常用的GIS工具集合,如坐标转换、影像格式转换等 如按照投影文件,把平面坐标转为经纬度坐标
Python
data_pnt = TXPoint(528010.664, 3770581.344, 1644.805)
sys_pnt: TXPoint = TXPoint()
prj_file = r'C:\Users\15862\Desktop\测试.prj'
TXCoordConvertUtility.DataToSysPnt(data_pnt, sys_pnt, prj_file)