三维空间分析
let measure = new DC.Measure(viewer)
构造函数
measure角度
{Object} options:配置返回值 this
area([options])
面积
{Object} options:配置返回值 this
areaSurface([options])
表面面积
{Object} options:配置返回值 this
distance([options])
距离
{Object} options:配置返回值 this
distanceSurface([options])
表面距离
{Object} options:配置返回值 this
heading([options])
偏航角
{Object} options:配置返回值 this
height([options])
高度
{Object} options:配置返回值 this
triangleHeight([options])
三角测量
{Object} options:配置返回值 this
activate(type,[options])
根据类型分析
{String} type:分析类型,参考 DC.MeasureType,{Object} options:配置this//属性参数(可选)
{
"icon_center": "**.png", // 自定义的中心点图标
"icon_anchor": "**.png", //自定义的锚点图标
"icon_midAnchor": "**.png", //自定义的中心锚点图标
"icon_size": [12, 12], //自定义的中心锚点大小
"clampToModel": false //点位是否获取模型表面坐标
}
释放空间分析
this三维场景分析
let analysis = new DC.Analysis(viewer)
构造函数
analysis等高线
{Color} lineColor:颜色{Number} lineWidth:宽度{Number} lineSpacing:间隔返回值 this
shadows(startTime, multiplier)
日照分析
{Date} startTime:日期{Number} multiplier:倍率返回值 this
sightLine(startPosition, endPosition, excludes, lerpNum)
通视分析(线)
{Position|Array|String|Object} startPosition:起点{Position|Array|String|Object} endPosition:终点{Array<Overlay>} excludes:非包含覆盖物{Number} lerpNum:插值数量,默认:10,数量越大越准确,同时计算量也会增加返回值 this
sightCircle(center, radius, excludes, lerpNum)
通视分析(圆)
{Position|Array|String|Object} center:圆心{Number} radius:半径{Array<Overlay>} excludes:非包含覆盖物{Number} lerpNum:插值数量,默认:10,数量越大越准确,同时计算量也会增加返回值 this
viewshed(position, radius, fov, aspectRatio, options)
可视域分析
{Position|Array|String|Object} position:视点{Number} radius:半径{Number} fov:横向视角{Number} aspectRatio:横纵比例{Object} options:属性设置this//属性参数
{
"mixNum":1, // 混合度
"visibleColor":DC.Color.GREEN,//可见颜色
"disVisibleColor":DC.Color.RED,//不可见颜色
"showHelp": false, //显示辅助覆盖物
"gridColor": DC.Color.YELLOW, //辅助覆盖物格子颜色
"lineColor": DC.Color.YELLOW.withAlpha(0.3) //辅助覆盖物边线颜色
}
释放分析
{String} type:分析类型,参考 DC.AnalysisType。类型为空时,将清除所有分析this视频图层,继承于Layer
let layer = new DC.CameraVideoLayer('id')
viewer.addLayer(layer)
构造函数
{String} id:图层唯一标识videoLayer是否显示辅助视锥
{Boolean} show:是否显示{Overlay} videoOverlay:视频覆盖物{Color} color:边线颜色this视频融合要素,继承于Overlay
let position = new DC.Position(120, 20, 200, -20, 19)
let videoEl = new document.getElementById('video')
let cameraVideo = new DC.CameraVideo(position, videoEl)
layer.addOverlay(cameraVideo)
构造函数
{Position} position:坐标{Element} video:视频节点{String} [maskUrl]: 羽化图片地址cameraVideo{Position} position:坐标{Element} video:视频节点{String} maskUrl: 羽化图片地址设置样式
{Object} style:样式this// 样式参数(可选)
{
"fov": 60, //视场角
"near": 1, //近平面的距离
"far": 5000, //远平面的距离
"aspectRatio": 1, //视锥的宽度与高度的纵横比
"alpha": 1, //透明度
"clearBlack": true, //清除空白
"disViewColor": DC.Color.WHITE //设置视频不可见颜色
}
平面视频图层,继承于Layer
let layer = new DC.PlaneVideoLayer('id')
viewer.addLayer(layer)
构造函数
{String} id:图层唯一标识videoLayer是否显示辅助视锥
{Boolean} show:是否显示{Overlay} videoOverlay:视频覆盖物{Color} color:边线颜色this平面视频要素,继承于Overlay
let position = new DC.Position(120, 20, 200, -20, 19)
let videoEl = new document.getElementById('video')
let cameraVideo = new DC.PlaneVideo(position, videoEl)
layer.addOverlay(cameraVideo)
构造函数
{Position} position:坐标{Element} video:视频节点cameraVideo{Position} position:坐标{Element} video:视频节点设置样式
{Object} style:样式this// 样式参数(可选)
{
"fov": 60, //视场角
"near": 1, //近平面的距离
"far": 5000, //远平面的距离
"aspectRatio": 1 //视锥的宽度与高度的纵横比
}
要素工具
let coords = DC.GeoTools.pointBuffer(
'120.71259021075333,31.22148081085083',
100
)
let coords1 = DC.GeoTools.polygonBuffer(
'120.71259021075333,31.22148081085083;120.71611354431036,31.221447256684566;120.7140691869497,31.21875584696343',
150
)
点缓冲
{Array|String|Position} position:坐标{Number} radius:半径{Number} steps:步数,默认:8返回值 array
polylineBuffer(positions, radius, steps)
线缓冲
{Array|String|Array<Position>} positions:坐标串{Number} radius:半径{Number} steps:步数,默认:8返回值 array
polygonBuffer(positions, radius, steps)
面缓冲
{Array|String|Array<Position>} positions:坐标串{Number} radius:半径{Number} steps:步数,默认:8返回值 array
transformPolylineScale(positions, factor)
比例线
{Array|String|Array<Position>} positions:坐标串{Number} factor:比例返回值 array
transformPolygonScale(positions, factor)
比例面
{Array|String|Array<Position>} positions:坐标串{Number} factor:比例返回值 array
transformPolylineRotate(positions, angle)
旋转线
{Array|String|Array<Position>} positions:坐标串{Number} angle:角度返回值 array
transformPolygonRotate(positions, angle)
旋转面
{Array|String|Array<Position>} positions:坐标串{Number} angle:角度array地球裁剪
let globClipping = new DC.GlobClipping(viewer)
构造函数
{Viewer} viewer:场景{Object} options:属性globClipping// 属性参数(可选)
{
"edgeWidth": 0, // 边缘宽度
"edgeColor": DC.Color.WHITE // 边缘颜色
}
{Array<Position>} positions:坐标串{Number} distance: 距离{Boolean} enable: 是否启用{String} state: 状态 readonly地形裁剪
let terrainClipping = new DC.TerrainClipping(viewer)
构造函数
{Viewer} viewer:场景{Object} options:属性terrainClipping// 属性参数(可选)
{
"edgeWidth": 0, // 边缘宽度
"edgeColor": DC.Color.WHITE, // 边缘颜色
"lerpInterval": 50, // 插值数量
"bottomImage": "", // 底部图片
"sideImage": "" // 侧边图片
}
{Array<Position>} positions:坐标串{Number} height: 高度{Boolean} enable: 是否启用{String} state: 状态 readonly