3.2 MapManagerCOM
MapManagerCOM是三维地图组件,负责创建并管理SDK在使用过程中涉及到的对象,包括图层对象、响应器对象、更新对象、漫游对象、导航对象等。
三维地图组件对象可通过SDKCtrl的GetIMapMgrPtr()方法创建。
接口方法:
1.CreateLayerOptions
说明:
创建图层配置对象。图层配置对象是图层配置参数的容器,图层对象在创建或更新时所需要的参数都是由图层配置对象传入。
语法:
Javascript调用
CreateLayerOptions(name)
C++调用
HRESULT CreateLayerOptions([in] BSTR name, [out,retval] IUnknown** iLayerOptions)
C#调用
ILayerOptions CreateLayerOptions(string name)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
name | string | 图层配置对象名称,名称任意 |
返回值: iLayerOptions
iLayerOptions表示图层配置对象
2.CreateLayer
说明:
创建图层对象。根据图层配置对象创建相应类型的图层对象。
语法:
Javascript调用
CreateLayer(layerType, opt)
C++调用
HRESULT CreateLayer([in] BSTR layerType, [in] IUnknown* opt, [out,retval] IUnknown** iLayerObject)
C#调用
ILayerObject CreateLayer(string layerType, ILayerOptions opt)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
layerType | string | 图层配置类型 |
opt | ILayerOptions | 图层配置对象 |
图层配置类型:
配置类型 | 说明 |
---|---|
ModelLayer | 模型图层 |
ImageLayer | 影像图层 |
ElevationLayer | 地形高程图层 |
FeatureModelLayer | 矢量图层 |
AnalysisLayer | 分析测量图层 |
DynamicPathLayer | 路径漫游图层 |
AnimationLayer | 模型动画图层 |
返回值: iLayerObject
iLayerObject表示图层对象
3.AddLayer
说明:
添加图层对象。图层添加至场景后,场景会将图层中的数据进行展示。
语法:
Javascript调用
AddLayer(iLayerObject)
C++调用
HRESULT AddLayer([in]IUnknown* iLayerObject, [out,retval] VARIANT_BOOL* state)
C#调用
bool AddLayer(ILayerObject iLayerObject)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
iLayerObject | ILayerObject | 图层对象,图层对象需调用CreateLayer方法进行创建 |
返回值: state
state表示图层是否添加成功。true-成功;false-失败。
4.GetLayerCount
说明:
获取已经添加至场景的图层数量。
语法:
Javascript调用
GetLayerCount()
C++调用
HRESULT GetLayerCount([out,retval] LONG* count)
C#调用
long GetLayerCount()
返回值: count
count表示图层数量。
5.GetLayerByIndex
说明:
根据图层索引获取图层对象。
语法:
Javascript调用
GetLayerByIndex(index)
C++调用
HRESULT GetLayerByIndex([in] LONG index, [out,retval] IUnknown** layer)
C#调用
ILayerObject GetLayerByIndex(long index)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
index | long | 图层索引值 |
注意: 该方法配合GetLayerCount()]使用,可以获取场景中的所有图层对象。
返回值: layer
layer表示图层对象。
6.GetLayerObject
说明:
通过图层Id获取图层对象。
语法:
Javascript调用
GetLayerObject(layerID)
C++调用
HRESULT GetLayerObject([in] LONG layerID, [out,retval] IUnknown** iLayerObject)
C#调用
ILayerObject GetLayerObject(long layerID)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
layerID | long | 图层ID |
返回值: iLayerObject
iLayerObject表示图层对象。如果图层不存在,则返回空对象。
7.RemoveLayer
说明:
移除图层对象。
语法:
Javascript调用
RemoveLayer(layer)
C++调用
HRESULT RemoveLayer([in] IUnknown* layer, [out,retval] VARIANT_BOOL* state)
C#调用
bool RemoveLayer(ILayerObject layer)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
layer | ILayerObject | 图层对象 |
返回值: state
state表示图层是否移除成功。true-成功;false-失败。
8.CreateLayerGroup
说明:
创建图层组对象。图层组对象用于管理一组或一类图层对象,通过图层组控制这组图层对象的添加、显隐和删除操作。
语法:
Javascript调用
CreateLayerGroup(name)
C++调用
HRESULT CreateLayerGroup([in] BSTR name, [out,retval] IUnknown** iLayerGroup)
C#调用
ILayerGroup CreateLayerGroup(string name)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
name | string | 图层组名称 |
返回值: iLayerGroup
iLayerGroup表示图层组对象。
9.AddLayerGroup
说明:
添加图层组对象。
语法:
Javascript调用
AddLayerGroup(iLayerGroup)
C++调用
HRESULT AddLayerGroup([in]IUnknown* iLayerGroup)
C#调用
void AddLayerGroup(ILayerGroup iLayerGroup)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
iLayerGroup | ILayerGroup | 图层组对象,图层组对象需要调用CreateLayerGroup()方法创建 |
10.GetLayerGroupCount
说明:
获取已经添加至场景的图层组对象数量。
语法:
Javascript调用
GetLayerGroupCount()
C++调用
HRESULT GetLayerGroupCount([out,retval] LONG* count)
C#调用
long GetLayerGroupCount()
返回值: count
count表示图层组对象的数量。
11.GetLayerGroupByIndex
说明:
根据索引值获取图层组对象。
语法:
Javascript调用
GetLayerGroupByIndex(index)
C++调用
HRESULT GetLayerGroupByIndex([in] LONG index, [out,retval] IUnknown** group)
C#调用
ILayerGroup GetLayerGroupByIndex(long index)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
index | long | 索引值 |
返回值: group
group表示图层组对象。
12.GetLayerGroupChildByIndex
说明:
根据索引获取图层组子图层组对象。
语法:
Javascript调用
GetLayerGroupChildByIndex(fatherGroup, index)
C++调用
HRESULT GetLayerGroupChildByIndex([in] IUnknown* fatherGroup, [in] LONG index, [out,retval] IUnknown** iLayerGroup)
C#调用
ILayerGroup GetLayerGroupChildByIndex(ILayerGroup fatherGroup, long index)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
fatherGroup | ILayerGroup | 父图层组对象 |
index | long | 索引值 |
返回值: iLayerGroup
iLayerGroup表示图层组对象。
13.RemoveLayerGroup
说明:
移除图层组对象。将图层组对象从场景移除,移除时图层组对象里的图层都会被移除。
语法:
Javascript调用
RemoveLayerGroup(iLayerGroup)
C++调用
HRESULT RemoveLayerGroup([in] IUnknown* iLayerGroup, [out,retval] VARIANT_BOOL* state)
C#调用
bool RemoveLayerGroup(ILayerGroup iLayerGroup)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
iLayerGroup | ILayerGroup | 图层组对象 |
返回值: state
state表示图层组是否移除成功。true-成功;false-失败。
14.RemoveAll
说明:
移除所有图层及图层组对象。将已经添加至场景中所有的图层与图层组对象都移除。
语法:
Javascript调用
RemoveAll()
C++调用
HRESULT RemoveAll([out,retval] VARIANT_BOOL* state)
C#调用
bool RemoveAll()
返回值: state
state表示图层组是否移除成功。true-成功;false-失败。
15.CreateDataSourceOptions
说明:
创建数据源配置对象。数据源配置对象用于数据源对象的创建。
语法:
Javascript调用
CreateDataSourceOptions(dataSourceTypeName)
C++调用
HRESULT CreateDataSourceOptions([in] BSTR dataSourceTypeName, [out,retval] IUnknown** iDataSourceOptions)
C#调用
IDataSourceOptions CreateDataSourceOptions(string dataSourceTypeName)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
dataSourceTypeName | string | 数据源配置类型 |
数据源配置主要有以下类型:
类型名称 | 说明 |
---|---|
c3s | 本地c3s格式模型数据 |
cpm | 本地wrl格式模型数据(具有LOD层级) |
gms | 网络wrl格式模型数据(具有LOD层级) |
ogr | 本地矢量数据(shp/dxf) |
wfs | wfs服务发布的数据 |
sde | 矢量数据(sde) |
gdal | 本地原始的高程影像数据 |
mtd | 本地切割后的高程影像数据 |
mtds | 网络切割后的高程影像数据 |
rest | ArcGis发布的Rest服务 |
smesh | 本地倾斜摄影数据(OSGB) |
smeshs | 网络倾斜摄影数据(OSGB) |
wms | wms服务发布的数据 |
wmts | ArcGis发布的wmts服务 |
返回值: iDataSourceOptions
iDataSourceOptions表示数据源配置对象。
16.CreateDataSource
说明:
创建数据源对象,数据源对象用于获取对应数据的参数配置。
语法:
Javascript调用
CreateDataSource(iDataSourceOptions)
C++调用
HRESULT CreateDataSource([in] IUnknown* iDataSourceOptions, [out,retval] IUnknown** iDataSource)
C#调用
IDataSourceObject CreateDataSource(IDataSourceOptions iDataSourceOptions)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
iDataSourceOptions | IDataSourceOptions | 数据源配置对象 |
返回值: iDataSource
iDataSource表示数据源对象。
17.CreateSymbol
说明:
创建符号对象,符号对象用于配置对应类型符号化的相关参数,
语法:
Javascript调用
CreateSymbol(type)
C++调用
HRESULT CreateSymbol([in] BSTR type, [out,retval] IUnknown** iSymbol)
C#调用
ISymbolObject CreateSymbol(string type)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
type | string | 符号化配置对象类型 |
符号化配置对象共有以下几种类型:
参数名 | 说明 |
---|---|
PointSymbol | 线符号配置对象,要将矢量绘制为点时,需要此符号 |
LineSymbol | 线符号配置对象,要将矢量绘制为线时,需要此符号 |
PolygonSymbol | 面符号配置对象,要将矢量绘制为面时,需要此符号 |
TextSymbol | 文字符号配置对象,要在场景中显示文字时,需要此符号 |
IconSymbol | 图片符号配置对象,要将矢量显示为图片时,需要此符号 |
ModelSymbol | 模型符号配置对象,要将矢量显示为模型时,需要此符号 |
PointExtrusionSymbol | 点挤出符号配置对象,要将矢量点挤出为面时,需要此符号 |
LineExtrusionSymbol | 线挤出符号配置对象,要将矢量的线挤出为面或管线时,需要此符号 |
PolygonExtrusionSymbol | 面挤出符号配置对象,要将矢量的面挤出为体块时,需要此符号 |
SkinSymbol | 纹理符号配置对象,要为矢量显示纹理时,需要此符号 |
BufferSymbol | 缓冲区符号配置对象,要将矢量绘制为缓冲区时,需要此符号 |
AltitudeSymbol | 矢量贴地符号配置对象,要将矢量贴地时,需要此符号 |
返回值: iSymbol
iSymbol表示符号对象。
18.CreateStyle
说明:
创建样式对象。样式对象用于设置矢量符号化时使用的样式。在配置矢量样式时需要将样式对象添加至样式表对象中。
语法:
Javascript调用
CreateStyle(name)
C++调用
HRESULT CreateStyle([in] BSTR name, [out,retval] IUnknown** iStyle)
C#调用
IStyle CreateStyle(string name)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
name | string | 样式配置对象名称。 名称任意 |
返回值: iStyle
iStyle表示样式对象。
19.CreateResource
说明:
创建资源对象。资源对象用于设置矢量符号化时需用到的资源(图标、模型等),资源对象的名称必须与符号对象名称相匹配。
语法:
Javascript调用
CreateResource(symbol)
C++调用
HRESULT CreateResource([in] BSTR symbol, [out,retval] IUnknown** iResourceObj)
C#调用
IResourceObject CreateResource(string symbol)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
symbol | string | 资源类型,与符号对象名称相同 |
返回值: iResourceObj
iResourceObj表示资源对象。
20.CreateResourceLibrary
说明:
创建资源库对象。用于管理资源对象,并且资源库对象的名称必须和使用的样式对象名称保持一致。
语法:
Javascript调用
CreateResourceLibrary(name)
C++调用
HRESULT CreateResourceLibrary([in] BSTR name, [out,retval] IUnknown** iResLib)
C#调用
IResourceLibrary CreateResourceLibrary(string name)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
name | string | 资源库名称 |
返回值: iResLib
iResLib表示资源库对象。
21.CreateStyleSheet
说明:
创建样式表对象。在进行矢量图层创建时,需要将样式对象、资源库对象等添加到样式表对象中,再将样式表对象添加到矢量图层配置对象中。
语法:
Javascript调用
CreateStyleSheet()
C++调用
HRESULT CreateStyleSheet([out,retval] IUnknown** iStyleSheet)
C#调用
IStyleSheet CreateStyleSheet()
返回值: iStyleSheet
iStyleSheet表示样式表对象。
22.GetFeatureModelLayer
说明:
获取要素图层对象,要素图层对象包含了对矢量图层的要素对象操作,包括添加、删除、获取等操作。
语法:
Javascript调用
GetFeatureModelLayer(layerId)
C++调用
HRESULT GetFeatureModelLayer([in] LONG layerId, [out,retval] IUnknown** iFMLayer)
C#调用
IFeatureModelLayer GetFeatureModelLayer(long layerId)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
layerId | long | 矢量图层ID |
返回值: iFMLayer
iFMLayer表示要素图层对象。
23.CreateFeature
说明:
创建要素对象。要素是矢量数据的一个基本单元,可以创建要素对象对矢量图层进行编辑操作。
语法:
Javascript调用
CreateFeature()
C++调用
HRESULT CreateFeature([out,retval] IUnknown** iFeature)
C#调用
IFeature CreateFeature()
返回值: iFeature
iFeature表示要素对象。
24.CreateResponserOptions
说明:
创建响应器配置对象。响应器配置对象用于创建/更新响应器对象。
语法:
Javascript调用
CreateResponserOptions(name)
C++调用
HRESULT CreateResponserOptions([in] BSTR name, [out,retval] IUnknown** iResponserOptions)
C#调用
IResponserOption CreateResponserOptions(string name)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
name | string | 响应器类型 |
响应器类型主要包括:
类型 | 说明 |
---|---|
PickModelResponser | 模型拾取 |
PickVectorResponser | 矢量拾取 |
PickObliqueResponser | 倾斜摄影单体化拾取 |
AxisEditResponser | 拖拽器 |
UILogoResponser | Logo响应器 |
UICrossResponser | 中心十字标响应器 |
UICompassResponser | 罗盘响应器 |
UITipsResponser | 提示文字响应器 |
UIStateResponser | 状态栏响应器 |
UIFullScreenResponser | 全屏按钮响应器 |
UICaptionResponser | 字幕响应器 |
SceneshotResponser | 截图响应器 |
返回值: iResponserOptions
iResponserOptions表示响应器配置对象
25.CreateResponser
说明:
创建响应器对象。根据配置项创建相应类型的响应器。
语法:
Javascript调用
CreateResponser(type, opt)
C++调用
HRESULT CreateResponser([in] BSTR type, [in] IUnknown* opt, [out,retval] IUnknown** iResponserObject)
C#调用
IResponserObject CreateResponser(string type, IResponserOption opt)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
type | string | 响应器配置类型 |
opt | IResponserOption | 响应器配置对象 |
响应器配置类型:
参数名 | 说明 |
---|---|
PickModelResponser | 模型拾取 |
PickVectorResponser | 矢量拾取 |
PickObliqueResponser | 倾斜摄影单体化拾取 |
AxisEditResponser | 拖拽器 |
UILogoResponser | Logo响应器 |
UICrossResponser | 中心十字标响应器 |
UICompassResponser | 罗盘响应器 |
UITipsResponser | 提示文字响应器 |
UIStateResponser | 状态栏响应器 |
UIFullScreenResponser | 全屏按钮响应器 |
UICaptionResponser | 字幕响应器 |
SceneshotResponser | 截图响应器 |
返回值: iResponserObject
iResponserObject表示响应器对象。
26.AddResponser
说明:
添加响应器对象。将响应器添加至场景以响应对应的操作。
语法:
Javascript调用
AddResponser(rsp)
C++调用
HRESULT AddResponser([in] IUnknown* rsp, [out,retval] VARIANT_BOOL* state)
C#调用
bool AddResponser(IResponserObject rsp)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
rsp | IResponserObject | 响应器对象 |
返回值: state
state表示是否添加成功。true-成功;false-失败。
27.RemoveResponser
说明:
移除响应器对象。
语法:
Javascript调用
RemoveResponser(type)
C++调用
HRESULT RemoveResponser([in] BSTR type, [out,retval] VARIANT_BOOL* state)
C#调用
bool RemoveResponser(string type)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
type | string | 响应器类型 |
响应器类型:
类型 | 说明 |
---|---|
PickModelResponser | 模型拾取 |
PickVectorResponser | 矢量拾取 |
PickObliqueResponser | 倾斜摄影单体化拾取 |
AxisEditResponser | 拖拽器 |
UILogoResponser | Logo响应器 |
UICrossResponser | 中心十字标响应器 |
UICompassResponser | 罗盘响应器 |
UITipsResponser | 提示文字响应器 |
UIStateResponser | 状态栏响应器 |
UIFullScreenResponser | 全屏按钮响应器 |
UICaptionResponser | 字幕响应器 |
SceneshotResponser | 截图响应器 |
返回值: state
state表示是否移除成功。true-成功;false-失败。
28.CreateOperationOptions
说明:
创建更新操作配置对象。
语法:
Javascript调用
CreateOperationOptions(name)
C++调用
HRESULT CreateOperationOptions([in] BSTR name, [out,retval] IUnknown** iOperationOptions)
C#调用
IOperationOption CreateOperationOptions(string name)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
name | string | 更新操作名称,名称任意 |
返回值: iOperationOptions
iOperationOptions表示更新操作配置对象。
29.CreateOperation
说明:
创建更新对象。
语法:
Javascript调用
CreateOperation(layerType,opt)
C++调用
HRESULT CreateOperation([in] BSTR layerType, [in] IUnknown* opt, [out,retval] IUnknown** iLayerObject)
C#调用
IOperationObject CreateOperation(string layerType,IOperationOption opt)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
layerType | string | 更新操作类型 |
opt | IOperationOption | 更新操作配置对象 |
返回值: iLayerObject
iLayerObject表示更新对象。
30.AddOperation
说明:
添加更新对象。更新操作添加到场景后,会自动触发更新操作。
语法:
Javascript调用
AddOperation(iOperationObject)
C++调用
HRESULT AddOperation([in] IUnknown* iOperationObject, [out,retval] VARIANT_BOOL* result)
C#调用
bool AddOperation(IOperationObject iOperationObject)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
iOperationObject | IOperationObject | 更新对象 |
返回值: result
result表示是否添加成功。true-成功; false-失败。
31.RemoveOperation
说明:
移除更新对象。
注意: 将更新对象从场景中移除时,之前对场景的更新会保留在场景中,因此如果要将更新效果也移除时,需要先通过更新将效果还原。
语法:
Javascript调用
RemoveOperation(iOperationObject)
C++调用
HRESULT RemoveOperation([in] IUnknown* iOperationObject, [out,retval] VARIANT_BOOL* result)
C#调用
bool RemoveOperation(IOperationObject iOperationObject)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
iOperationObject | IOperationObject | 更新对象 |
返回值: result
result表示是否移除成功。true-成功; false-失败。
32.CreatePosition
说明:
创建坐标对象。该对象用于封装场景三维坐标。
语法:
Javascript调用
CreatePosition(x, y, z)
C++调用
HRESULT CreatePosition([in] DOUBLE x, [in] DOUBLE y, [in] DOUBLE z, [out,retval] IUnknown** iPosition)
C#调用
IPosition CreatePosition(double x, double y, double z)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
x | double | 场景x轴坐标值 |
y | double | 场景y轴坐标值 |
z | double | 场景y轴坐标值 |
返回值: iPosition
iPosition表示坐标对象。
33.CreateNavigation
说明:
创建导航对象。导航对象用于飞行定位、获取场景视点信息等。
语法:
Javascript调用
CreateNavigation()
C++调用
HRESULT CreateNavigation([out,retval] IUnknown** iNavigation)
C#调用
INavigate CreateNavigation()
返回值: iNavigation
iNavigation表示导航对象。
34.CreateTransformation
说明:
创建坐标转换对象。坐标转换对象用于不同坐标系之间的坐标相互转换.
语法:
Javascript调用
CreateTransformation()
C++调用
HRESULT CreateTransformation([out,retval] IUnknown** iTrans)
C#调用
ITransformate CreateTransformation()
返回值: iTrans
iTrans表示坐标转换对象。
35.CreateRoam
说明:
创建漫游对象。漫游对象用于切换场景漫游类型。
语法:
Javascript调用
CreateRoam()
C++调用
HRESULT CreateRoam([out,retval] IUnknown** iRoam)
C#调用
IRoam CreateRoam()
返回值: iRoam
iRoam表示漫游对象。
36.SetParame
说明:
设置地图参数。目前该接口主要用于开启雾效,设置雾效颜色、浓度等效果。
语法:
Javascript调用
SetParame(parameType, parameValue)
C++调用
HRESULT SetParame([in] BSTR parameType, [in] BSTR parameValue, [out,retval] VARIANT_BOOL* result)
C#调用
bool SetParame(string parameType, string parameValue)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
parameType | string | 参数类型 |
parameValue | string | 参数值 |
返回值: result
result表示是否设置成功。true-成功; false-失败。
37.DeserializeLayer
说明:
反序列化图层。反序列化图层与图层对象的序列化图层操作对应,它会将序列化图层保存的图层还原到场景中,并返回新的图层对象。
语法:
Javascript调用
DeserializeLayer(filePath)
C++调用
HRESULT DeserializeLayer([in] BSTR filePath, [out,retval] IUnknown** iLayerObject)
C#调用
ILayerObject DeserializeLayer(string filePath)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
filePath | string | 序列化文件路径 |
返回值: iLayerObject
iLayerObject表示图层对象
38.SerializeMap
说明:
保存工程文件。该接口会将场景中的所有图层信息保存到文件当中。
语法:
Javascript调用
SerializeMap(filePath)
C++调用
HRESULT SerializeMap([in] BSTR filePath)
C#调用
void SerializeMap(string filePath)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
filePath | string | 工程文件保存路径 |
39.DeserializeMap
说明:
打开工程文件。该接口和SerializeMap对应,它会将工程文件中的所有图层还原到场景中。
语法:
Javascript调用
DeserializeMap(filePath, readType)
C++调用
HRESULT DeserializeMap([in] BSTR filePath, [in] LONG readType)
C#调用
void DeserializeMap(string filePath, long readType)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
filePath | string | 工程文件路径 |
readType | long | 读取类型。 1-开启独立线程执行;其他-直接打开工程文件 |
40.CreateParticleModifier
说明:
创建粒子修改器对象。
语法:
Javascript调用
CreateParticleModifier()
C++调用
HRESULT CreateParticleModifier([out,retval] IUnknown** iParticleModifier)
C#调用
IParticleModifier CreateParticleModifier()
返回值: iParticleModifier
iParticleModifier表示粒子修改器对象。
41.CreateParticleRender
说明:
创建粒子绘制类型对象。
语法:
Javascript调用
CreateParticleRender()
C++调用
HRESULT CreateParticleRender([out,retval] IUnknown** iParticleRender)
C#调用
IParticleRender CreateParticleRender()
返回值: iParticleRender
iParticleRender表示粒子绘制类型对象。
42.CreateParticleModel
说明:
创建粒子模板对象。
语法:
Javascript调用
CreateParticleModel()
C++调用
HRESULT CreateParticleModel([out,retval] IUnknown** iParticleModel)
C#调用
IParticleModel CreateParticleModel()
返回值: iParticleModel
iParticleModel表示粒子模板对象。
43.CreateParticleEmitter
说明:
创建粒子发射器对象。
语法:
Javascript调用
CreateParticleEmitter()
C++调用
HRESULT CreateParticleEmitter([out,retval] IUnknown** iEmitter)
C#调用
IParticleEmitter CreateParticleEmitter()
返回值: iEmitter
iEmitter表示粒子发射器对象。
44.CreateParticleZone
说明:
创建粒子区域对象。
语法:
Javascript调用
CreateParticleZone()
C++调用
HRESULT CreateParticleZone([out,retval] IUnknown** iZone)
C#调用
IParticleZone CreateParticleZone()
返回值: iZone
iZone表示粒子区域对象。
45.CreateParticleGroup
说明:
创建粒子组对象
语法:
Javascript调用
CreateParticleGroup()
C++调用
HRESULT CreateParticleGroup([out,retval] IUnknown** iParticleGroup)
C#调用
IParticleGroup CreateParticleGroup()
返回值: iParticleGroup
iParticleGroup表示粒子组对象。
46.GetParticleSystemLayer
说明:
获取粒子图层对象。
语法:
Javascript调用
GetParticleSystemLayer(layerId)
C++调用
HRESULT GetParticleSystemLayer([in] LONG layerId, [out,retval] IUnknown** iParticleSystemLayer)
C#调用
IParticleSystemLayer GetParticleSystemLayer(long layerId)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
layerId | long | 图层ID |
返回值: iParticleSystemLayer
iParticleSystemLayer表示粒子图层对象。
47.CreateRefrenceSystemOptions
说明:
创建参考系配置项对象。参考系配置对象是参考系配置参数的容器。
语法:
Javascript调用
CreateRefrenceSystemOptions()
C++调用
HRESULT CreateRefrenceSystemOptions([out,retval] IUnknown** refSysOpt)
C#调用
IParticleSystemLayer CreateRefrenceSystemOptions()
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
- | - | - |
返回值: IRefrenceSystemOptions
IRefrenceSystemOptions表示参考系配置对象。
48.CreateRefrenceSystem
说明:
创建参考系对象。参考系对象在创建窗口时使用,可根据该对象设定窗口使用的坐标参考系。
语法:
Javascript调用
CreateRefrenceSystem(refSysOpt)
C++调用
HRESULT CreateRefrenceSystem([in] IUnknown* refSysOpt, [out,retval] IUnknown** refSysObj)
C#调用
IRefrenceSystem CreateRefrenceSystem(IRefrenceSystemOptions refSysOpt)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
refSysOpt | IRefrenceSystemOptions | 坐标参考配置对象 |
返回值: IRefrenceSystem
IRefrenceSystem表示参考系对象。
49.GetRefrenceSystem
说明:
获取当前激活窗口的参考系对象。
语法:
Javascript调用
GetRefrenceSystem()
C++调用
HRESULT GetRefrenceSystem([out,retval] IUnknown** refSys)
C#调用
IRefrenceSystem GetRefrenceSystem()
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
- | - | - |
返回值: IRefrenceSystem
IRefrenceSystem表示参考系对象。
50.DestroyRefrenceSystem
说明:
销毁指定参考系对象。
语法:
Javascript调用
DestroyRefrenceSystem(refSys)
C++调用
HRESULT DestroyRefrenceSystem([in] IUnknown* refSys, [out,retval] VARIANT_BOOL* state)
C#调用
bool DestroyRefrenceSystem(IRefrenceSystem refSys)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
refSys | IRefrenceSystem | 坐标参考系对象 |
返回值: state
state表示是否移除成功。true-成功;false-失败。
51.CreateMapViewOptions
说明:
创建窗口配置项对象。
语法:
Javascript调用
CreateMapViewOptions()
C++调用
HRESULT CreateMapViewOptions([out,retval] IUnknown** mapViewOpt)
C#调用
IMapViewOptions CreateMapViewOptions()
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
- | - | - |
返回值: IMapViewOptions
IMapViewOptions表示窗口配置对象。
52.CreateMapView
说明:
创建窗口对象。根据坐标参考系对象和窗口配置对象创建并添加窗口对象。
语法:
Javascript调用
CreateMapView(refSys, mapViewOpt)
C++调用
HRESULT CreateMapView([in] IUnknown* refSys, [in] IUnknown* mapViewOpt, [out,retval] IUnknown** mapView)
C#调用
IMapViewObject CreateLayer(IRefrenceSystem refSys, IMapViewOptions mapViewOpt)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
refSys | string | 图层配置类型 |
opt | IRefrenceSystem | 坐标参考系对象 |
返回值: IMapViewObject
IMapViewObject表示窗口对象。
53.DestroyMapView
说明:
销毁指定窗口对象。
语法:
Javascript调用
DestroyMapView(mapView)
C++调用
HRESULT DestroyMapView([in] IUnknown* mapView, [out,retval] VARIANT_BOOL* state);
C#调用
bool DestroyMapView(IMapViewObject laymapViewer)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
layer | IMapViewObject | 窗口对象 |
返回值: state
state表示是否移除成功。true-成功;false-失败。
54.GetMapViewCount
说明:
获取已经创建的场景窗口数量。
语法:
Javascript调用
GetMapViewCount()
C++调用
HRESULT GetMapViewCount([out,retval] LONG* count)
C#调用
long GetMapViewCount()
返回值: count
count表示窗口数量。
55.GetMapViewIDByIndex
说明:
根据窗口索引获取窗口对象Id。
语法:
Javascript调用
GetMapViewIDByIndex(index)
C++调用
HRESULT GetMapViewIDByIndex([in] LONG index, [out,retval] LONG* id)
C#调用
Long GetMapViewIDByIndex(long index)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
index | long | 窗口索引值 |
注意: 该方法配合GetMapViewCount使用,可以获取场景中的所有窗口对象。
返回值: id
id表示窗口对象的Id。
56.GetMapViewByID
说明:
根据id获取窗口对象。
语法:
Javascript调用
GetMapViewByID(id)
C++调用
HRESULT GetMapViewByID([in] LONG id, [out,retval] IUnknown** mapView)
C#调用
IMapViewObject GetMapViewByID(long id)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
id | long | 窗口对象Id |
返回值:IMapViewObject
IMapViewObject表示窗口对象。如果窗口不存在,则返回空对象。
57.GetActivedMapViewID
说明:
获取当前激活的窗口Id.
语法:
Javascript调用
GetActivedMapViewID()
C++调用
HRESULT GetActivedMapViewID([out,retval] LONG* id)
C#调用
Long GetActivedMapViewID()
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
- | - | - |
返回值: id
id表示窗口对象的Id。
58.SetCurrentMapViewID
说明:
设置当前操作窗口。设置之后,后续的添加图层、响应器等对象,会直接添加到该窗口中。
语法:
Javascript调用
SetCurrentMapViewID(id)
C++调用
HRESULT SetCurrentMapViewID([in] LONG id)
C#调用
Long GetActivedMapViewID(id)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
id | long | 窗口id |
59.DeserializeMapView
说明:
反序列化窗口对象。反序列化窗口与窗口对象的序列化操作对应,它会将序列化窗口保存的窗口信息和图层对象信息还原到场景中。
语法:
Javascript调用
DeserializeMapView(filePath, readType)
C++调用
HRESULT DeserializeMapView([in] BSTR filePath, LONG readType);
C#调用
ILayerObject DeserializeLayer(string filePath, Long readType)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
filePath | string | 序列化文件路径 |
readType | Long | 反序列化类型。0-只反序列化图层对象信息;1-反序列化视口所有信息。 |
60.CreateAnimationFrame
说明:
创建动画帧配置对象。
语法:
Javascript调用
CreateAnimationFrame()
C++调用
HRESULT CreateAnimationFrame([out,retval] IUnknown** iFrame)
C#调用
IAnimatonFrame CreateAnimationFrame()
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
- | - | - |
返回值: IAnimatonFrame
IAnimatonFrame表示动画帧配置对象。
61.CreateAnimationAction
说明:
创建动画插值行为配置对象。
语法:
Javascript调用
CreateAnimationAction()
C++调用
HRESULT CreateAnimationAction([out,retval] IUnknown** iAction)
C#调用
IAnimationAction CreateAnimationAction()
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
- | - | - |
返回值: IAnimationAction
IAnimationAction表示动画插值行为配置对象。
62.GetLayerGroupById
说明:
通过图层组Id获取图层组对象。
语法:
Javascript调用
GetLayerGroupById(layerGroupID)
C++调用
HRESULT GetLayerGroupById([in] LONG layerGroupID, [out,retval] IUnknown** iLayerGroupObject)
C#调用
ILayerGroup GetLayerGroupById(long layerGroupID)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
layerID | long | 图层ID |
返回值: ILayerGroup
ILayerGroup表示图层对象。如果图层不存在,则返回空对象。
63.DeserializeLayerByUrl
说明:
反序列化图层。根据网络路径反序列化图层对象。
语法:
Javascript调用
DeserializeLayerByUrl(URL)
C++调用
HRESULT DeserializeLayerByUrl([in] BSTR URL, [out,retval] IUnknown** iLayerObject)
C#调用
ILayerObject DeserializeLayerByUrl(string URL)
参数:
参数名 | 参数类型 | 说明 |
---|---|---|
URL | string | 序列化文件路径 |
返回值: iLayerObject
iLayerObject表示图层对象