GeoTilesetFlatten

三维模型压平处理类

new Cesium.GeoTilesetFlatten(options)

Name Type Description
options Object optional 参数选项:
Name Type Default Description
viewer Object viewer optional 定义三维球
isCartesian3Point Boolean true optional 压平区域的顶点是笛卡尔坐标还是经纬坐标
ellipsoid Ellipsoid Cesium.Ellipsoid.WGS84 optional 指定区域算法所使用的椭球体,默认:WGS84
Example:
1、3D场景应用示例
var flatten = new Cesium.GeoTilesetFlatten({viewer:viewer});
// 添加压平区域
flatten.addPlatArea([
    Cesium.Cartographic.fromDegrees(108.95911550999976, 34.2200680038265, 425),
    Cesium.Cartographic.fromDegrees(108.95975420176762, 34.2200635408074, 425),
    Cesium.Cartographic.fromDegrees(108.95975714818034, 34.21951076887783, 425),
    Cesium.Cartographic.fromDegrees(108.95909900669537, 34.21951736217999, 425)
]);
// 绑定Cesium3DTileset
flatten.bindTileset(tileset);

2、高斯平面场景应用示例
	var flatten = new GeoTilesetFlatten({viewer:viewer});
// 添加压平区域
	var platId=flatten.addPlatArea([
		new Cesium.Cartesian3(75809.02,53163.17,2220.0),//高斯坐标
		new Cesium.Cartesian3(75878.50,53094.93,2220.0),
		new Cesium.Cartesian3(75975.97,53199.29,2220.0),
		new Cesium.Cartesian3(75900.05,53270.24,2220.0)
	]);
// 绑定Cesium3DTileset
 flatten.bindTileset(tileset);
Demo:

Members

enabled : Boolean

是否开启压平
Default Value: true

flattenedPolygons : Number

压平区域个数
Default Value: 0

Methods

addPlatArea(pointArray)Number

以坐标的形式添加压平区域
Name Type Description
pointArray Array.<Cartographic> 压平区域的坐标数组
Returns:
返回压平区域的id

addPlatPolygon(platPloygon)Number

以polygon的形式添加压平区域
Name Type Description
platPloygon Object 压平区域多边形
Returns:
返回压平区域的id

bindTileset(tileset)

绑定3DTiles
Name Type Description
tileset Object 3DTiles模型对象

detachAllTileset()

解除所有3DTiles模型对象绑定

detachTileset(tileset)

解除3DTiles绑定
Name Type Description
tileset Object 3DTiles模型对象

getPlatArea(platId)Array.<Cartesian3>

获得指定id压平区域的坐标
Name Type Description
platId Number 压平区域的id
Returns:
获得指定id压平区域的坐标数组

getPlatPolygon()Number

获取所有压平区域
Returns:
返回压平区域个数

removeAllPlatArea()

移除所有压平区域

removePlatArea(platId)

移除指定id压平区域的压平效果
Name Type Description
platId Number 压平区域的id

replacePlatArea(platId, pointArray)Boolean

替换指定id压平区域的坐标
Name Type Description
platId Number 压平区域id
pointArray Array 压平区域的坐标数组
Returns:
是否替换成功

setPlatAreaHeight(platId, height)

为压平区域设置高度,platId=-1表示所有压平区域,height表示高度
Name Type Description
platId Number 压平区域id
height Number 为指定id压平区域设置压平高度

showPlatArea(platId, isShow)

是否显示指定id压平区域
Name Type Description
platId Number 压平区域id
isShow Boolean 若为true,则将指定区域压平,若为false,则将指定区域还原