FeatureModelData

new CooSDK.FeatureModelData(props)

用于加载矢量数据,可使用多种符号化手段来展示矢量数据效果。


矢量数据加载效果图
Name Type Description
props Object

包含如下属性的Object:

Name Type Default Description
altitudeSymbol AltitudeSymbol optional

贴地符号对象。

bufferFilter String optional

缓冲区构建符号化操作。

bufferSymbol BufferSymbol optional

缓冲区符号对象。

buildGeometryFilter String optional

几何构建符号化操作。

building String optional

批量符号化挤出操作(不支持拾取)。

buildTextFilter String optional

文字构建符号化操作。

cylinderSymbol CylinderSymbol optional

管井符号对象。

distance Number null optional

自定义定位:视点距离数据中心点距离,该值为null时则无法进行自定义定位。

extrudeGeometryFilter String optional

几何挤出构建符号化操作。

featureObjArray Array.<FeatureObj> null optional

要素对象数组,用以动态创建矢量要素。

flyTime Number 3.0 optional

自定义定位:定位飞行时间,单位:秒。

geometryType EnumGeometryType EnumGeometryType.POLYGON optional

要素的几何类型,需要在isDynamic为ture时使用。

iconSymbol IconSymbol optional

图标符号对象。

isAutoTileSize Boolean false optional

是否自动计算瓦片大小。

isDynamic Boolean false optional

是否动态创建。

isHasTexture Boolean false optional

矢量数据是否有纹理.仅在分析时有效。

isJoinPick Boolean true optional

是否可以被拾取。

isLighted Boolean false optional

是否开启灯光,如开启后不配置lightSymbol,场景会有一个默认的环境光存在。

isLocate Boolean false optional

矢量数据定位开关,如果设置为 true,相机目标点会自动飞行至矢量数据中心位置。

isReverseCoord Boolean false optional

请求wfs数据时是否对xy坐标进行反转,1.0.0的Shape中坐标为lon lat,1.1.0与2.0.0的Shape中坐标为lat lon,如果服务不符合此规范,可用此参数进行反转。

isVisible Boolean true optional

矢量数据显隐开关,如果设置为 false,数据会在场景中隐藏。

layerName String optional

矢量数据图层名称,用于WFS服务时需配置,可参考WFS配置

liftUp Number 0 optional

矢量数据整体抬高高度,单位(m)。

lightSymbol LightSymbol optional

灯光符号对象。

lineExtrusionSymbol LineExtrusionSymbol optional

线挤出符号对象。

linePointArray Array.<PositionObj> null optional

动态线关键点数组,需要注意的是,在使用该参数时,请把url设置为本地矢量路径,且该矢量文件不存在。

lineSymbol LineSymbol optional

线符号对象。

maxRange Number 2000 optional

矢量数据最大显示范围,该值必须>MinRange。

minRange Number 0 optional

矢量数据最小显示范围,该值必须<MaxRange。

modelSymbol ModelSymbol optional

模型符号对象。

pickColor ColorObj null optional

拾取颜色。

pipeLineExtrusionSymbol PipeLineExtrusionSymbol optional

管线挤出符号对象。

pitch Number -45.0 optional

自定义定位:俯仰角角度。

pointExtrusionSymbol PointExtrusionSymbol optional

点挤出符号对象。

pointSymbol PointSymbol optional

点符号对象。

polygonExtrusionSymbol PolygonExtrusionSymbol optional

面挤出符号对象。

polygonSymbol PolygonSymbol optional

面符号对象。

priorityOffset Number 0.0 optional

矢量数据调度优先级,数值越大优先级越高。

renderOrder Number 0 optional

矢量数据绘制顺序,数值越大绘制越往后,无特殊需求无需设置。

roof String optional

屋顶符号化操作。

rotate Number 0.0 optional

自定义定位:方位角角度。

screen CooMap | ScreenObj null optional

所属窗口,默认为CooMap所拥有的主窗口。

skinSymbol SkinSymbol optional

纹理符号对象。

sphereSymbol SphereSymbol optional

管点符号对象。

substituteModelFilter String optional

模型、图标构建符号化操作。

textSymbol TextSymbol optional

文字符号对象。

themeColorsArray Array.<Array.<String, ColorObj>> null optional

专题配色数组,属性值与颜色一一对应。

themeField String null optional

专题配色指定唯一值字段,在themeFilter配置时必须配置,格式:"[XXX]"。

themeFilter String optional

专题符号化操作。

then CBOCallback optional

对象创建完成后触发的回调事件,传出参数为FeatureModelData对象本体。

tileSize Number maxRange*0.1 optional

单个瓦片的大小。大小根据MaxRange设置,一般为MaxRange的1/10左右。其阈值范围为100-3000。

tileSizeFactor Number 1.0 optional

矢量数据瓦片大小的影响因子。

url String optional

矢量数据路径,支持本地路径及WFS服务路径,动态创建时可不传。

vacuateOrder Number 0 optional

抽稀文字优先级,数值越大优先级越高。

wall String optional

墙壁符号化操作。

Example:
// 创建矢量数据对象并添加至三维场景中
var featureModelData = new CooSDK.FeatureModelData({
     url: "D:\\Works\\CooGisSDKDemoApplication_V6.1.0.20380\\data\\Vector\\point.shp",
     pointSymbol: new CooSDK.PointSymbol({
         color: new CooSDK.ColorObj(1.0, 1, 0, 0.5)
     }),
     buildGeometryFilter: "PointSymbol"
});
Demo:

Members

altitudeSymbol : AltitudeSymbol

获取或者设置矢量数据的贴地符号化。

bufferFilter : String

获取或者设置缓冲区构建符号化操作。

bufferSymbol : BufferSymbol

获取或者设置矢量数据的缓冲区符号化。

buildGeometryFilter : String

获取或者设置几何构建符号化操作。

building : String

获取或者设置批量符号化挤出操作(不支持拾取)。

buildTextFilter : String

获取或者设置文字构建符号化操作。

cylinderSymbol : CylinderSymbol

获取或者设置矢量数据的管井挤出符号化。

readonlydataType : String

获取矢量数据类型名称。

distance : Number

获取或者设置自定义定位的视点距离数据中心点距离,该值不设置则无法进行自定义定位。

Default Value: null

extrudeBuildingsFilter : String

获取或者设置几何挤出构建符号化操作(批量)。

extrudeGeometryFilter : String

获取或者设置几何挤出构建符号化操作。

flyTime : Number

获取或者设置自定义定位的定位飞行时间,单位:秒。

Default Value: 3.0

iconSymbol : IconSymbol

获取或者设置矢量数据的图标符号化。

readonlyid : Number

获取矢量数据唯一标识符id。

isAutoTileSize : Boolean

获取或者设置矢量数据是否开启瓦片大小自动计算。

Default Value: false

isHasTexture : Boolean

获取或者设置矢量数据是否有纹理。

Default Value: false

isJoinPick : Boolean

获取或者设置是否可以被拾取。

Default Value: true

isLighted : Boolean

获取或者设置是否开启灯光,如开启后不配置lightSymbol,场景会有一个默认的环境光存在。

Default Value: false

isLocate : Boolean

获取或者设置矢量数据定位状态。

Default Value: false

isVisible : Boolean

获取或者设置矢量数据显隐状态。

Default Value: true

layerName : String

获取或者设置矢量图层名称(用于wfs服务),可参考WFS配置

liftUp : Number

获取或者设置矢量数据整体抬高高度,单位(m)。

Default Value: 0.0

lightSymbol : LightSymbol

获取或者设置矢量数据的灯光挤出符号化。

lineExtrusionSymbol : LineExtrusionSymbol

获取或者设置矢量数据的线挤出符号化。

linePointArray : Array.<PositionObj>

获取或者设置动态线关键点数组,需要注意的是,在使用该参数时,请把url设置为本地矢量路径,且该矢量文件不存在。

Default Value: null

lineSymbol : LineSymbol

获取或者设置矢量数据的线符号化。

maxRange : Number

获取或者设置矢量数据最大显示范围。

Default Value: 2000

minRange : Number

获取或者设置矢量数据最小显示范围。

Default Value: 0

modelSymbol : ModelSymbol

获取或者设置矢量数据的模型符号化。

pickColor : ColorObj

获取或者设置拾取颜色。

Default Value: null

pipeLineExtrusionSymbol : PipeLineExtrusionSymbol

获取或者设置矢量数据的管线挤出符号化。

pitch : Number

获取或者设置自定义定位的俯仰角角度。

Default Value: -45.0

pointExtrusionSymbol : PointExtrusionSymbol

获取或者设置矢量数据的点挤出符号化。

pointSymbol : PointSymbol

获取或者设置矢量数据的点符号化。

polygonExtrusionSymbol : PolygonExtrusionSymbol

获取或者设置矢量数据的面挤出符号化。

polygonSymbol : PolygonSymbol

获取或者设置矢量数据的面符号化。

priorityOffset : Number

获取或者设置矢量数据调度优先级。

Default Value: 0.0

renderOrder : Number

获取或者设置矢量数据绘制优先级。

Default Value: 0

roof : String

获取或者设置屋顶符号化操作。

rotate : Number

获取或者设置自定义定位的方位角角度。

Default Value: 0.0

screen : CooMap|ScreenObj

获取或者设置所属窗口,默认为CooMap所拥有的主窗口。

Default Value: null

skinSymbol : SkinSymbol

获取或者设置矢量数据的纹理符号化。

sphereSymbol : SphereSymbol

获取或者设置矢量数据的管点挤出符号化。

substituteModelFilter : String

获取或者设置模型、图标构建符号化操作。

textSymbol : TextSymbol

获取或者设置矢量数据的文字符号化。

themeColorsArray : Array.<Array.<String, ColorObj>>

获取或者设置专题配色数组,属性值与颜色一一对应。

Default Value: null

themeField : String

获取或者设置专题配色指定唯一值字段,在themeFilter配置时必须配置,格式:"[XXX]"。

Default Value: null

themeFilter : String

获取或者设置专题符号化操作。

then : CBOCallback

获取或者设置对象创建完成后触发的回调事件,传出参数为FeatureModelData对象本体。

Default Value: undefined

tileSize : Number

获取或者设置矢量数据瓦片大小。大小根据MaxRange设置,一般为MaxRange的1/10左右。其阈值范围为100-3000。

Default Value: maxRange*0.1

tileSizeFactor : Number

获取或者设置矢量数据瓦片大小的影响因子。

Default Value: 1.0

url : String

获取或者设置矢量数据路径地址。

vacuateOrder : Number

获取或者设置抽稀文字优先级,数值越大优先级越高。

Default Value: 0

wall : String

获取或者设置墙壁符号化操作。

Methods

addFeature(featureObjArray)

添加要素。

Name Type Description
featureObjArray Array.<FeatureObj>

待添加的要素数组。

Example:
featureModelData.addFeature(featureObjArray);

addLinePoints(linePointArray)Number

添加线要素(关键点数不可小于2),绘制路线,返回新增要素的id。需要注意的是:使用此方法,需要在之前创建对象的时候,设置linePointArray属性,方可生效。

Name Type Description
linePointArray Array.<PositionObj>

待添加的线要素关键点数组。

Returns:

添加的线要素id。

Example:
var fid = featureModelData.addLinePoints([
     new CooSDK.PositionObj(120.218669447638, 30.209710011899, 14.79994757846),
     new CooSDK.PositionObj(120.218909926579, 30.209710293357, 14.79994757846)
]);

deserialize(url)FeatureModelData

Name Type Description
url String

反序列化文件保存路径,支持本地路径和网络路径。

Returns:

矢量数据对象。

destroy()

从场景中销毁自身。

Returns:

null 空值。

Example:
// 销毁对象
featureModelData = featureModelData.destroy();

removeFeature(fid)

删除指定id的要素。

Name Type Description
fid Number

待删除的要素id。

Example:
featureModelData.removeFeature(fid);

saveLayer(savePath)

另存为到本地路径,支持shp与geojson格式

Name Type Description
savePath String

保存的本地文件路径,可保存为shp或geojson。

Example:
featureModelData.saveLayer("D:\\test.shp");

serialize(url)

Name Type Description
url String

序列化文件保存路径,仅支持本地路径。

update(props)

更新单个或者多个对象属性,使之立即生效。

一般用于多个属性的同时更新,避免性能开销过大。

Name Type Description
props Object optional

包含如下属性的Object:

Name Type Description
distance Number optional

自定义定位:视点距离数据中心点距离,该值为null时则无法进行自定义定位。

flyTime Number optional

自定义定位:定位飞行时间,单位:秒。

isLocate Boolean optional

矢量数据定位开关,如果设置为 true,相机目标点会自动飞行至影像数据中心位置。

isVisible Boolean optional

矢量数据显隐开关,如果设置为 false,数据会在场景中隐藏。

pitch Number optional

自定义定位:俯仰角角度。

pickColor ColorObj optional

拾取颜色。

rotate Number optional

自定义定位:方位角角度。

Example:
// 更新矢量数据部分属性
featureModelData.update({
   // 修改定位属性
   isLocate : true,
   // 修改显隐属性
   isVisible : false
});

updateFeature(fid, featureObj)

更新指定id的要素。

Name Type Description
fid Number

待更新的要素id。

featureObj FeatureObj

待更新的要素。

Example:
featureModelData.updateFeature(fid,featureObj);