瀏覽代碼

update examples

tags/3.0.0
Caven Chen 2 年之前
父節點
當前提交
340cfdf800
共有 39 個檔案被更改,包括 94 行新增2071 行删除
  1. 0
    77
      examples/analysis/camera_video.html
  2. 0
    77
      examples/analysis/camera_video_mask.html
  3. 0
    91
      examples/analysis/contourLine.html
  4. 0
    71
      examples/analysis/globe_clipping.html
  5. 0
    136
      examples/analysis/measure.html
  6. 0
    75
      examples/analysis/model_manager.html
  7. 0
    76
      examples/analysis/model_position.html
  8. 0
    76
      examples/analysis/model_primitive_position.html
  9. 0
    74
      examples/analysis/plane_video.html
  10. 0
    53
      examples/analysis/point_buffer.html
  11. 0
    64
      examples/analysis/polygon_buffer.html
  12. 0
    62
      examples/analysis/polygon_rotate.html
  13. 0
    64
      examples/analysis/polygon_scale.html
  14. 0
    66
      examples/analysis/polygon_sector.html
  15. 0
    64
      examples/analysis/polyline_buffer.html
  16. 0
    63
      examples/analysis/polyline_rotate.html
  17. 0
    78
      examples/analysis/shadows.html
  18. 0
    92
      examples/analysis/sight_circle.html
  19. 0
    137
      examples/analysis/sight_line.html
  20. 0
    90
      examples/analysis/terrain_clipping.html
  21. 0
    94
      examples/analysis/terrain_clipping_ch.html
  22. 0
    104
      examples/analysis/tileset_clipping.html
  23. 0
    78
      examples/analysis/tileset_position.html
  24. 0
    107
      examples/analysis/viewshed.html
  25. 10
    6
      examples/datav/e_airline.html
  26. 5
    8
      examples/datav/e_plane.html
  27. 6
    9
      examples/datav/e_pm2.5.html
  28. 6
    9
      examples/datav/e_pm2.5_2.html
  29. 7
    10
      examples/datav/e_qx.html
  30. 6
    11
      examples/datav/e_qx_2.html
  31. 7
    9
      examples/datav/e_rk.html
  32. 9
    9
      examples/datav/e_wl.html
  33. 6
    4
      examples/datav/heat.html
  34. 8
    4
      examples/datav/heat_building.html
  35. 8
    6
      examples/datav/heat_height.html
  36. 6
    9
      examples/datav/m_grid.html
  37. 4
    2
      examples/datav/m_grid_d.html
  38. 3
    3
      modules/material/shader/circle/CircleScanShader.glsl
  39. 3
    3
      modules/material/shader/radar/RadarScanShader.glsl

+ 0
- 77
examples/analysis/camera_video.html 查看文件

@@ -1,77 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container">
<video id="video" muted autoplay loop crossorigin controls>
<source src="../assets/data/demo.mp4" type="video/mp4" />
</video>
</div>

<script>
let viewer = undefined
let cameraVideo = undefined
function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
style:"img",
crs:"WGS84"
})
viewer.addBaseLayer(baselayer)
let layer1 = new DC.TilesetLayer('layer').addTo(viewer)
let tileset = new DC.Tileset(
'//resource.dvgis.cn/data/3dtiles/dayanta/tileset.json'
)
tileset.setHeight(-420)
layer1.addOverlay(tileset)
let layer = new DC.CameraVideoLayer('video-layer').addTo(viewer)
let position = new DC.Position(
108.9594135,
34.2184197,
100.25,
4.2,
-53.5,
)
viewer.flyToPosition(
position,
() => {
cameraVideo = new DC.CameraVideo(position,document.getElementById('video'))
cameraVideo.setStyle({
fov: 30,
far: 120,
near: 0.01,
aspectRatio: 1.3,
alpha:0.7
})
layer.addOverlay(cameraVideo)
}
)

}
DC.ready(initViewer)
</script>
</body>
</html>

+ 0
- 77
examples/analysis/camera_video_mask.html 查看文件

@@ -1,77 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container">
<video id="video" muted autoplay loop crossorigin controls>
<source src="../assets/data/demo.mp4" type="video/mp4" />
</video>
</div>
<script>
let viewer = undefined
let cameraVideo = undefined
function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
style:"img",
crs:"WGS84"
})
viewer.addBaseLayer(baselayer)
let layer1 = new DC.TilesetLayer('layer').addTo(viewer)

let tileset = new DC.Tileset(
'//resource.dvgis.cn/data/3dtiles/dayanta/tileset.json'
)
tileset.setHeight(-420)
layer1.addOverlay(tileset)
let layer = new DC.CameraVideoLayer('video-layer').addTo(viewer)
let position = new DC.Position(
108.9594135,
34.2184197,
100.25,
4.2,
-53.5,
)
viewer.flyToPosition(
position,
() => {
cameraVideo = new DC.CameraVideo(position,document.getElementById('video'),'../assets/analysis/mask.png')
cameraVideo.setStyle({
fov: 30,
far: 120,
near: 0.01,
aspectRatio: 1.3,
alpha:0.7
})
layer.addOverlay(cameraVideo)
}
)

}
DC.ready(initViewer)
</script>
</body>
</html>

+ 0
- 91
examples/analysis/contourLine.html 查看文件

@@ -1,91 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>
<script>
let viewer = undefined

function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
style:"img",
crs:"WGS84"
})
viewer.addBaseLayer(baselayer)
let terrain = DC.TerrainFactory.createUrlTerrain({
url: 'http://data.marsgis.cn/terrain'
})
viewer.addTerrain(terrain)
viewer.flyToPosition(
new DC.Position(
96.70456483909693,
28.883444927447762,
48977.26981733466,
0,
-31
)
)
viewer.use(new DC.Analysis())
viewer.analysis.contourLine()
addGuiController()
}

function addGuiController(){
let controls = {
enable: true,
color:"#FFFF00",
width: 1,
spacing: 100,
}
let gui = new dat.GUI()

gui.add(controls,'enable').onChange(value=>{
if(value){
viewer.analysis.contourLine(DC.Color.fromCssColorString(controls.color), controls.width, controls.spacing)
}else{
viewer.analysis.deactivate()
}
})

gui.addColor(controls,'color').onChange(value=>{
viewer.analysis.contourLine(DC.Color.fromCssColorString(value), controls.width, controls.spacing)
})

gui.add(controls,'width',1,5).step(1).onChange(value=>{
viewer.analysis.contourLine(DC.Color.fromCssColorString(controls.color), value, controls.spacing)
})

gui.add(controls,'spacing',50,300).step(10).onChange(value=>{
viewer.analysis.contourLine(DC.Color.fromCssColorString(controls.color), controls.width, value)
})

}

DC.ready(initViewer)
</script>
</body>
</html>

+ 0
- 71
examples/analysis/globe_clipping.html 查看文件

@@ -1,71 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>
<script>
let viewer = undefined
let globeClipping = undefined

function initViewer() {
viewer = new DC.Viewer('viewer-container')
viewer.setOptions({
showAtmosphere: false,
skyBox: {
show: false
}
})
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
crs:"WSG84",
style:"img"
})
viewer.addBaseLayer(baselayer)
globeClipping = new DC.GlobeClipping(viewer)
globeClipping.positions =
'119.89,32.08;121.406,32.08;121.406,30.75;119.89,30.75'
globeClipping.distance = 200000
globeClipping.enable = true
viewer.flyToPosition('120.54777855, 28.74389394,203988.73,0,-38')
addGuiController() // add controller
}

function addGuiController(){
let controls = {
enable:true,
distance: 2e5,
}
let gui = new dat.GUI()
gui.add(controls,'enable').onChange(value=>{
globeClipping.enable=value
})
gui.add(controls,'distance',5e4,3e5).step(2e3).onChange(value=>{
globeClipping.distance=value
})
}
DC.ready(initViewer)
</script>
</body>
</html>

+ 0
- 136
examples/analysis/measure.html 查看文件

@@ -1,136 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>
<div class="btn-box">
<ul>
<li><button onclick="gotoModel()">定位模型</button></li>
<li><button onclick="deactivate()">清空</button></li>
</ul>
<ul>
<li><button onclick="calcDistance()">空间测距</button></li>
<li><button onclick="calcArea()">空间面积</button></li>
<li><button onclick="calcAngle()">角度</button></li>
<li><button onclick="calcHeight()">高度</button></li>
<li><button onclick="calcHeading()">偏航角度</button></li>
<li><button onclick="calcTriangleHeight()">三角测量</button></li>
</ul>
<ul>
<li><button onclick="distanceSurface()">贴地测距</button></li>
<li><button onclick="areaSurface()">贴地面积</button></li>
<li><button onclick="calcModelAngle()">贴物角度</button></li>
<li><button onclick="calcModelHeight()">贴物高度</button></li>
<li><button onclick="calcModelTriangleHeight()">贴物三角</button></li>
</ul>
</div>
<script>
let viewer = undefined
let tileset = undefined

function calcDistance(){
viewer.measure.distance()
}

function distanceSurface(){
viewer.measure.distanceSurface()
}

function calcArea(){
viewer.measure.area()
}

function areaSurface(){
viewer.measure.areaSurface()
}

function calcAngle(){
viewer.measure.angle()
}

function calcModelAngle(){
viewer.measure.angle({
clampToModel:true
})
}

function calcHeight(){
viewer.measure.height()
}

function calcModelHeight(){
viewer.measure.height({
clampToModel:true
})
}

function calcHeading(){
viewer.measure.heading()
}

function areaHeight(){
viewer.measure.areaHeight()
}


function calcTriangleHeight(){
viewer.measure.triangleHeight()
}

function calcModelTriangleHeight(){
viewer.measure.triangleHeight({
clampToModel:true
})
}

function deactivate(){
viewer.measure.deactivate()
}

function gotoModel(){
viewer.flyTo(tileset)
}

function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
style:'img',
crs:"WGS84"
})
viewer.addBaseLayer(baselayer)
viewer.use(new DC.Measure())
let layer = new DC.TilesetLayer('layer').addTo(viewer)
tileset = new DC.Tileset(
'//resource.dvgis.cn/data/3dtiles/dayanta/tileset.json'
)
tileset.setHeight(-420)
layer.addOverlay(tileset)
viewer.flyTo(tileset)
}
DC.ready(initViewer)
</script>
</body>
</html>

+ 0
- 75
examples/analysis/model_manager.html 查看文件

@@ -1,75 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>
<div class="btn-box">
<ul>
<li><button onclick="manager.spread(10,5)">展开</button></li>
<li><button onclick="manager.combine(4)">合并</button></li>
<li><button onclick="manager.restore()">还原</button></li>
<li><button onclick="viewer.flyToPosition('120.72296587904076,31.24839628931203,40.25,338.95,-17.38')">定位</button></li>
</ul>
<ul>
<li><button onclick="manager.showModel(0)">一层</button></li>
<li><button onclick="manager.showModel(1)">二层</button></li>
<li><button onclick="manager.showModel(2)">三层</button></li>
<li><button onclick="manager.showModel(3)">四层</button></li>
<li><button onclick="manager.showModel(4)">五层</button></li>
<li><button onclick="manager.showModel(5)">六层</button></li>
<li><button onclick="manager.showModel(6)">七层</button></li>
<li><button onclick="manager.showModel(7)">八层</button></li>
<li><button onclick="manager.showModel(8)">九层</button></li>
<li><button onclick="manager.showModel(9)">十层</button></li>
</ul>
</div>

<script>
let viewer = undefined
let manager = undefined

function initViewer() {
viewer = new DC.Viewer('viewer-container')
viewer.setOptions({
globe:{
baseColor:DC.Color.BLACK
}
})
let layer = new DC.VectorLayer("layer").addTo(viewer)
for (let i = 0; i < 10; i++) {
let model = new DC.Model(
[120.722487, 31.249024, 3 * i - 2.5, 89],
'examples/data/model/floor.glb'
)
layer.addOverlay(model)
}
manager = new DC.ModelManager(viewer, layer.getOverlays())
viewer.flyToPosition('120.72296587904076,31.24839628931203,40.25,338.95,-17.38')
}
DC.ready(initViewer)
</script>
</body>
</html>

+ 0
- 76
examples/analysis/model_position.html 查看文件

@@ -1,76 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>
<div class="btn-box">
<ul>
<li><button onclick="translation()">移动</button></li>
<li><button onclick="rotation()">旋转</button></li>
<li><button onclick="stop()">结束</button></li>
<li><button onclick="locate()">定位</button></li>
</ul>
</div>
<script>
let viewer = undefined
let positionEditor = undefined

function translation(){
positionEditor.activate(DC.PositionEditorType.TRANSLATION,e=>{})
}

function rotation(){
positionEditor.activate(DC.PositionEditorType.ROTATION,e=>{})
}

function stop(){
positionEditor.deactivate()
}


function locate(){
viewer.flyTo(viewer.getLayer("layer"))
}

function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer = DC.ImageryLayerFactory.createBaiduImageryLayer({
style: 'dark',
crs:"WGS84"
})
viewer.addBaseLayer(baselayer)
let layer = new DC.VectorLayer("layer").addTo(viewer)
let model = new DC.Model("121.46748793889597,31.22345700031846,200","examples/data/model/Cesium_Air.glb")

layer.addOverlay(model)
positionEditor = new DC.PositionEditor(viewer)
positionEditor.overlay = model
viewer.flyTo(layer)
}
DC.ready(initViewer)
</script>
</body>
</html>

+ 0
- 76
examples/analysis/model_primitive_position.html 查看文件

@@ -1,76 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>
<div class="btn-box">
<ul>
<li><button onclick="translation()">移动</button></li>
<li><button onclick="rotation()">旋转</button></li>
<li><button onclick="stop()">结束</button></li>
<li><button onclick="locate()">定位</button></li>
</ul>
</div>
<script>
let viewer = undefined
let positionEditor = undefined

function translation(){
positionEditor.activate(DC.PositionEditorType.TRANSLATION,e=>{})
}

function rotation(){
positionEditor.activate(DC.PositionEditorType.ROTATION,e=>{})
}

function stop(){
positionEditor.deactivate()
}


function locate(){
viewer.flyToPosition("121.46739860539422,31.222994902679385,32,10,-33")
}

function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer = DC.ImageryLayerFactory.createBaiduImageryLayer({
style: 'dark',
crs:"WGS84"
})
viewer.addBaseLayer(baselayer)

let layer = new DC.PrimitiveLayer("layer").addTo(viewer)
let model = new DC.ModelPrimitive("121.46748793889597,31.22345700031846","examples/data/model/GroundVehicle.glb")
layer.addOverlay(model)
positionEditor = new DC.PositionEditor(viewer)
positionEditor.overlay = model
viewer.flyToPosition("121.46739860539422,31.222994902679385,32,10,-33")
}
DC.ready(initViewer)
</script>
</body>
</html>

+ 0
- 74
examples/analysis/plane_video.html 查看文件

@@ -1,74 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container">
<video id="video" muted autoplay loop crossorigin controls>
<source src="../assets/data/demo.mp4" type="video/mp4" />
</video>
</div>
<script>
let viewer = undefined
let planeVideo = undefined
function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer = DC.ImageryLayerFactory.createBaiduImageryLayer({
style: 'dark',
crs:'WGS84'
})
viewer.addBaseLayer(baselayer)
let layer1 = new DC.TilesetLayer('layer').addTo(viewer)
let tileset = new DC.Tileset(
'//resource.dvgis.cn/data/3dtiles/dayanta/tileset.json'
)
tileset.setHeight(-420)
layer1.addOverlay(tileset)
let layer = new DC.PlaneVideoLayer('video-layer').addTo(viewer)
let position = new DC.Position(
108.9594135,
34.2184197,
50,
)
viewer.flyToPosition(
"108.9596880295684,34.21388323284156,148.15,3.05,-11.5734",
() => {
planeVideo = new DC.PlaneVideo(position,document.getElementById('video'))
planeVideo.setStyle({
fov: 60,
far: 120,
near: 1,
aspectRatio: 1.3,
})
layer.addOverlay(planeVideo)
layer.showHelp(true,planeVideo)
}
)

}
DC.ready(initViewer)
</script>
</body>
</html>

+ 0
- 53
examples/analysis/point_buffer.html 查看文件

@@ -1,53 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>
<script>
let viewer = undefined

function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
crs:"WSG84"
})
viewer.addBaseLayer(baselayer)
let layer = new DC.VectorLayer('layer')
viewer.addLayer(layer)
let point = new DC.Point("120.71259021075333,31.22148081085083")
layer.addOverlay(point)
let coords = DC.GeoTools.pointBuffer("120.71259021075333,31.22148081085083",100)
let polygon = new DC.Polygon(coords)
polygon.setStyle({
material:DC.Color.RED.withAlpha(0.4)
})
layer.addOverlay(polygon)
viewer.flyTo(layer)
}
DC.ready(initViewer)
</script>
</body>
</html>

+ 0
- 64
examples/analysis/polygon_buffer.html 查看文件

@@ -1,64 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>
<script>
let viewer = undefined

function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
crs:"WSG84"
})
viewer.addBaseLayer(baselayer)
let layer = new DC.VectorLayer('layer')
viewer.addLayer(layer)
let polygon = new DC.Polygon("120.71259021075333,31.22148081085083;120.71611354431036,31.221447256684566;120.7140691869497,31.21875584696343")
polygon.setStyle({
zIndex:1,
material:DC.Color.YELLOW
})
layer.addOverlay(polygon)
let coords = DC.GeoTools.polygonBuffer("120.71259021075333,31.22148081085083;120.71611354431036,31.221447256684566;120.7140691869497,31.21875584696343",150)
let buffer = new DC.Polygon(coords)
buffer.setStyle({
material:DC.Color.RED.withAlpha(0.4)
})
layer.addOverlay(buffer)
viewer.flyTo(layer)
}
DC.ready(initViewer)
</script>
</body>
</html>








+ 0
- 62
examples/analysis/polygon_rotate.html 查看文件

@@ -1,62 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>
<script>
let viewer = undefined

function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
crs:"WSG84"
})
viewer.setOptions({
enableFxaa:true
})
viewer.addBaseLayer(baselayer)
let layer = new DC.VectorLayer('layer')
viewer.addLayer(layer)
let polygon = new DC.Polygon("120.71259021075333,31.22148081085083;120.71611354431036,31.221447256684566;120.7140691869497,31.21875584696343")
polygon.setStyle({
material:DC.Color.YELLOW
})
layer.addOverlay(polygon)
let coords = DC.GeoTools.transformPolygonRotate("120.71259021075333,31.22148081085083;120.71611354431036,31.221447256684566;120.7140691869497,31.21875584696343",45)
polygon = new DC.Polygon(coords)
polygon.setStyle({
zIndex:1,
material:DC.Color.RED.withAlpha(0.5)
})
layer.addOverlay(polygon)
viewer.flyTo(layer)
}
DC.ready(initViewer)
</script>
</body>
</html>



+ 0
- 64
examples/analysis/polygon_scale.html 查看文件

@@ -1,64 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>
<script>
let viewer = undefined

function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
crs:"WSG84"
})
viewer.addBaseLayer(baselayer)
let layer = new DC.VectorLayer('layer')
viewer.addLayer(layer)
let polygon = new DC.Polygon("120.71259021075333,31.22148081085083;120.71611354431036,31.221447256684566;120.7140691869497,31.21875584696343")
polygon.setStyle({
material:DC.Color.YELLOW
})
layer.addOverlay(polygon)
let coords = DC.GeoTools.transformPolygonScale("120.71259021075333,31.22148081085083;120.71611354431036,31.221447256684566;120.7140691869497,31.21875584696343",1.5)
let buffer = new DC.Polygon(coords)
buffer.setStyle({
zIndex:1,
material:DC.Color.RED.withAlpha(0.4)
})
layer.addOverlay(buffer)
viewer.flyTo(layer)
}
DC.ready(initViewer)
</script>
</body>
</html>








+ 0
- 66
examples/analysis/polygon_sector.html 查看文件

@@ -1,66 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>
<script>
let viewer = undefined

function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
crs:"WSG84"
})
viewer.addBaseLayer(baselayer)
let layer = new DC.VectorLayer('layer')
viewer.addLayer(layer)
let polygon = new DC.Polygon(DC.GeoTools.sector('120.71259021075333,31.22148081085083',100,20,60))
polygon.setStyle({
material: DC.Color.YELLOW,
extrudedHeight:8,
})
layer.addOverlay(polygon)

polygon = new DC.Polygon(DC.GeoTools.sector('120.71259021075333,31.22148081085083',100,220,260))
polygon.setStyle({
material: DC.Color.BLUE.withAlpha(.6),
outline:true,
extrudedHeight:1,
})
layer.addOverlay(polygon)

polygon = new DC.Polygon(DC.GeoTools.sector('120.71259021075333,31.22148081085083',100,300,340))
polygon.setStyle({
material: DC.Color.RED,
extrudedHeight:5,
})
layer.addOverlay(polygon)
viewer.flyTo(layer)
}
DC.ready(initViewer)
</script>
</body>
</html>

+ 0
- 64
examples/analysis/polyline_buffer.html 查看文件

@@ -1,64 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>
<script>
let viewer = undefined

function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
crs:"WSG84"
})
viewer.setOptions({
enableFxaa:true
})
viewer.addBaseLayer(baselayer)
let layer = new DC.VectorLayer('layer')
viewer.addLayer(layer)
let polyline = new DC.Polyline("120.71259021075333,31.22148081085083;120.71611354431036,31.221447256684566")
polyline.setStyle({
width:2,
material:DC.Color.YELLOW,
zIndex:1
})
layer.addOverlay(polyline)
let coords = DC.GeoTools.polylineBuffer("120.71259021075333,31.22148081085083;120.71611354431036,31.221447256684566",100)
let polygon = new DC.Polygon(coords)
polygon.setStyle({
material:DC.Color.RED.withAlpha(0.4)

})
layer.addOverlay(polygon)
viewer.flyTo(layer)
}
DC.ready(initViewer)
</script>
</body>
</html>



+ 0
- 63
examples/analysis/polyline_rotate.html 查看文件

@@ -1,63 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>
<script>
let viewer = undefined

function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
crs:"WSG84"
})
viewer.setOptions({
enableFxaa:true
})
viewer.addBaseLayer(baselayer)
let layer = new DC.VectorLayer('layer')
viewer.addLayer(layer)
let polyline = new DC.Polyline("120.71259021075333,31.22148081085083;120.71611354431036,31.221447256684566")
polyline.setStyle({
width:5,
material:DC.Color.BLUE
})
layer.addOverlay(polyline)
let coords = DC.GeoTools.transformPolylineRotate("120.71259021075333,31.22148081085083;120.71611354431036,31.221447256684566",80)
polyline = new DC.Polyline(coords)
polyline.setStyle({
width:5,
material:DC.Color.RED
})
layer.addOverlay(polyline)
viewer.flyTo(layer)
}
DC.ready(initViewer)
</script>
</body>
</html>



+ 0
- 78
examples/analysis/shadows.html 查看文件

@@ -1,78 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>
<div class="btn-box">
<ul>
<li><button onclick="start()">开始</button></li>
<li><button onclick="stop()">暂停</button></li>
</ul>
</div>
<script>
let viewer = undefined

function start(){
viewer.analysis.shadows(new Date(),1600)
}

function stop(){
viewer.analysis.deactivate(DC.AnalysisType.SHADOWS)
}

function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
crs:"WGS84"
})
viewer.addBaseLayer(baselayer)
let layer = new DC.TilesetLayer('layer')
viewer.addLayer(layer)
let tileset = new DC.Tileset(
'http://resource.dvgis.cn/data/3dtiles/ljz/tileset.json'
)
let style = new DC.TilesetStyle()
style.color = {
conditions: [
['${Height} >= 300', 'rgba(45, 0, 75, 0.5)'],
['${Height} >= 200', 'rgb(102, 71, 151)'],
['${Height} >= 100', 'rgb(170, 162, 204)'],
['${Height} >= 50', 'rgb(224, 226, 238)'],
['${Height} >= 25', 'rgb(252, 230, 200)'],
['${Height} >= 10', 'rgb(248, 176, 87)'],
['${Height} >= 5', 'rgb(198, 106, 11)'],
['true', 'rgb(127, 59, 8)']
]
}
tileset.setStyle(style)
layer.addOverlay(tileset)
viewer.use(new DC.Analysis())
viewer.flyTo(tileset)
}
DC.ready(initViewer)
</script>
</body>
</html>

+ 0
- 92
examples/analysis/sight_circle.html 查看文件

@@ -1,92 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>
<div class="btn-box">
<ul>
<li><button onclick="draw()">标绘</button></li>
<li><button onclick="removeAll()">清除</button></li>
<li><button onclick="gotoTerrain()">定位山区</button></li>
<li><button onclick="gotoModel()">定位模型</button></li>
</ul>
</div>
<script>
let viewer = undefined
let plot = undefined
let tileset = undefined

function draw(){
viewer.analysis.deactivate(DC.AnalysisType.SIGHT_CIRCLE)
plot.draw(DC.OverlayType.CIRCLE,overlay => {
viewer.analysis.sightCircle(overlay.center,overlay.radius,[])
})
}

function removeAll(){
viewer.analysis.deactivate(DC.AnalysisType.SIGHT_CIRCLE)
}

function gotoTerrain(){
removeAll()
viewer.flyToPosition("102.72499624,30.46623447,13002.32,13.57,-21.91")
}

function gotoModel(){
removeAll()
viewer.flyTo(tileset)
}

function initViewer() {
viewer = new DC.Viewer('viewer-container')
viewer.setOptions({enableFxaa:true})
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
style:"img",
crs:"WGS84"
})
viewer.addBaseLayer(baselayer)
let terrain = DC.TerrainFactory.createArcgisTerrain({
url:
'https://elevation3d.arcgis.com/arcgis/rest/services/WorldElevation3D/Terrain3D/ImageServer'
})
viewer.addTerrain(terrain)
let tilsetLayer = new DC.TilesetLayer('layer').addTo(viewer)
tileset = new DC.Tileset(
'//resource.dvgis.cn/data/3dtiles/dayanta/tileset.json'
)
tileset.setHeight(10)
tilsetLayer.addOverlay(tileset)
plot = new DC.Plot(viewer,{
clampToGround: false
})
viewer.use(new DC.Analysis())
viewer.flyToPosition("102.72499624,30.46623447,13002.32,13.57,-21.91")
}

DC.ready(initViewer)
</script>
</body>
</html>

+ 0
- 137
examples/analysis/sight_line.html 查看文件

@@ -1,137 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>

<div class="btn-box">
<ul>
<li><button onclick="drawStartPoint()">起点</button></li>
<li><button onclick="drawEndPoint()">终点</button></li>
<li><button onclick="removeAll()">清除</button></li>
<li><button onclick="gotoTerrain()">定位山区</button></li>
<li><button onclick="gotoModel()">定位模型</button></li>
</ul>
</div>
<script>
let viewer = undefined
let layer = undefined
let startPoint = undefined
let endPoint = undefined
let plot = undefined
let tileset = undefined

function drawStartPoint(){
startPoint && layer.removeOverlay(startPoint)
plot.draw(DC.OverlayType.BILLBOARD,overlay => {
startPoint = overlay
startPoint.size=[71,85]
startPoint.setStyle({
scale:0.5
})
layer.addOverlay(startPoint)
if(startPoint && endPoint){
viewer.analysis.deactivate(DC.AnalysisType.SIGHT_LINE)
viewer.analysis.sightLine( startPoint.position,endPoint.position,[startPoint,endPoint])
}
},{
image:"../assets/icon/start.png",
width:71,
height:85,
scale:0.5
})
}

function drawEndPoint(){
endPoint && layer.removeOverlay(endPoint)
plot.draw(DC.OverlayType.BILLBOARD,overlay => {
endPoint = overlay
endPoint.size=[71,85]
endPoint.setStyle({
scale:0.5
})
layer.addOverlay(endPoint)
if(startPoint && endPoint){
viewer.analysis.deactivate(DC.AnalysisType.SIGHT_LINE)
viewer.analysis.sightLine( startPoint.position,endPoint.position,[startPoint,endPoint])
}
},{
image:"../assets/icon/end.png",
width:71,
height:85,
scale:0.5
})

}

function removeAll(){
layer.clear()
startPoint = undefined
endPoint = undefined
viewer.analysis.deactivate(DC.AnalysisType.SIGHT_LINE)
}

function gotoTerrain(){
removeAll()
viewer.flyToPosition("102.72499624,30.46623447,13002.32,13.57,-21.91")
}

function gotoModel(){
removeAll()
viewer.flyTo(tileset)
}

function initViewer() {
viewer = new DC.Viewer('viewer-container')
viewer.setOptions({enableFxaa:true})
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
style:"img",
crs:"WGS84"
})
viewer.addBaseLayer(baselayer)
let terrain = DC.TerrainFactory.createArcgisTerrain({
url:
'https://elevation3d.arcgis.com/arcgis/rest/services/WorldElevation3D/Terrain3D/ImageServer'
})
viewer.addTerrain(terrain)
layer = new DC.VectorLayer('layer').addTo(viewer)
let tilsetLayer = new DC.TilesetLayer('layer').addTo(viewer)
tileset = new DC.Tileset(
'//resource.dvgis.cn/data/3dtiles/dayanta/tileset.json'
)
tileset.setHeight(10)
tilsetLayer.addOverlay(tileset)
plot = new DC.Plot(viewer,{
clampToGround: false
})
viewer.use(new DC.Analysis())
viewer.flyToPosition("102.72499624,30.46623447,13002.32,13.57,-21.91")
}

DC.ready(initViewer)
</script>
</body>
</html>

+ 0
- 90
examples/analysis/terrain_clipping.html 查看文件

@@ -1,90 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>
<script>
let viewer = undefined
let terrainClipping = undefined
let plot = undefined

function initViewer() {
viewer = new DC.Viewer('viewer-container')
viewer.setOptions({
globe:{
depthTestAgainstTerrain:true
}
})
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
crs:"WSG84",
style:"img"
})
viewer.addBaseLayer(baselayer)
terrainClipping = new DC.TerrainClipping(viewer,{
bottomImage: '../assets/analysis/excavate_bottom.jpeg',
sideImage: '../assets/analysis/excavate_side.png'
})
terrainClipping.enable = true
terrainClipping.height = 20
plot= new DC.Plot(viewer)
addGuiController() // add controller
}

function addGuiController(){
let controls = {
'\u6807\u7ed8':()=>{
plot.draw(DC.OverlayType.POLYGON,overlay => {
terrainClipping.positions=overlay.positions
})
},
'\u6e05\u9664':()=>{
terrainClipping.positions = []
},
'\u6df1\u5ea6\u68c0\u6d4b': true,
enable:true,
height:20
}
let gui = new dat.GUI()
gui.add(controls,'enable').onChange(value=>{
terrainClipping.enable = value
})
gui.add(controls,'height',20,80).step(10).onChange(value=>{
terrainClipping.height=value
})
gui.add(controls,'深度检测').onChange(value=>{
viewer.setOptions({
globe:{
depthTestAgainstTerrain:value
}
})
})
gui.add(controls,'标绘')
gui.add(controls,'清除')
}
DC.ready(initViewer)
</script>
</body>
</html>

+ 0
- 94
examples/analysis/terrain_clipping_ch.html 查看文件

@@ -1,94 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>
<script>
let viewer = undefined
let terrainClipping = undefined
let plot = undefined

function initViewer() {
viewer = new DC.Viewer('viewer-container')
viewer.setOptions({
globe:{
depthTestAgainstTerrain:true
}
})
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
crs:"WSG84",
style:"img"
})
viewer.addBaseLayer(baselayer)
let terrain = DC.TerrainFactory.createUrlTerrain({
url: 'http://data.marsgis.cn/terrain'
})
viewer.addTerrain(terrain)
terrainClipping = new DC.TerrainClipping(viewer,{
bottomImage: '../assets/analysis/excavate_bottom.jpeg',
sideImage: '../assets/analysis/excavate_side.png'
})
terrainClipping.enable = true
terrainClipping.height = 20
plot= new DC.Plot(viewer)
addGuiController() // add controller
}

function addGuiController(){
let controls = {
'\u6807\u7ed8':()=>{
plot.draw(DC.OverlayType.POLYGON,overlay => {
terrainClipping.positions=overlay.positions
})
},
'\u6e05\u9664':()=>{
terrainClipping.positions = []
},
'\u6df1\u5ea6\u68c0\u6d4b': true,
enable:true,
height:20
}
let gui = new dat.GUI()
gui.add(controls,'enable').onChange(value=>{
terrainClipping.enable = value
})
gui.add(controls,'height',20,80).step(10).onChange(value=>{
terrainClipping.height=value
})
gui.add(controls,'深度检测').onChange(value=>{
viewer.setOptions({
globe:{
depthTestAgainstTerrain:value
}
})
})
gui.add(controls,'标绘')
gui.add(controls,'清除')
}
DC.ready(initViewer)
</script>
</body>
</html>

+ 0
- 104
examples/analysis/tileset_clipping.html 查看文件

@@ -1,104 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>
<script>
let viewer = undefined
let tilesetClipping = undefined
let plot = undefined

function locate(){
viewer.flyTo(viewer.getLayer("layer").getOverlays()[0])
}

function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
style:"img",
crs:"WGS84"
})
viewer.addBaseLayer(baselayer)
let layer = new DC.TilesetLayer("layer").addTo(viewer)
let tileset = new DC.Tileset('//resource.dvgis.cn/data/3dtiles/dayanta/tileset.json')
tileset.setHeight(-420)
layer.addOverlay(tileset)
viewer.flyTo(tileset)
tilesetClipping = new DC.TilesetClipping(tileset)
tilesetClipping.enable = true
tilesetClipping.direction = DC.ClippingDirection.LEFT
plot= new DC.Plot(viewer)
addGuiController()
}

function addGuiController(){
let controls = {
'\u65b9\u5411': 'left',
'\u8ddd\u79bb': 0,
'\u6807\u7ed8\u7ebf':()=>{
tilesetClipping.angle = 0
tilesetClipping.direction = undefined
plot.draw(DC.OverlayType.POLYLINE,overlay => {
console.log(overlay.positions)
tilesetClipping.positions = overlay.positions.slice(0,2)
})
},
'\u6807\u7ed8\u9762':()=>{
tilesetClipping.angle = 0
tilesetClipping.direction = undefined
plot.draw(DC.OverlayType.POLYGON,overlay => {
console.log(overlay.positions)
tilesetClipping.positions = overlay.positions
})
},
'\u6e05\u9664':()=>{
tilesetClipping.positions = []
},
'\u89d2\u5ea6': 0,
enable:true
}
let gui = new dat.GUI()
gui.add(controls,'enable').onChange(value=>{
tilesetClipping.enable = value
})
gui.add(controls,'方向',{ '\u5411\u4e0a': 'up', '\u5411\u4e0b': 'down', '\u5411\u5de6': 'left' , '\u5411\u53f3': 'right','\u5411\u524d': 'front','\u5411\u540e':'back' } ).onChange(value=>{
tilesetClipping.direction = value
})
gui.add(controls,'角度',0,360).step(5).onChange(value=>{
tilesetClipping.angle=value
})
gui.add(controls,'标绘线')
gui.add(controls,'标绘面')
gui.add(controls,'距离',-300,300).step(10).onChange(value=>{
tilesetClipping.distance=value
})
gui.add(controls,'清除')
}

DC.ready(initViewer)
</script>
</body>
</html>

+ 0
- 78
examples/analysis/tileset_position.html 查看文件

@@ -1,78 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container">
<div class="btn-box">
<ul>
<li><button onclick="translation()">移动</button></li>
<li><button onclick="rotation()">旋转</button></li>
<li><button onclick="stop()">结束</button></li>
<li><button onclick="locate()">定位</button></li>
</ul>
</div>
</div>
<script>
let viewer = undefined
let positionEditor = undefined

function translation(){
positionEditor.activate(DC.PositionEditorType.TRANSLATION,e=>{})
}

function rotation(){
positionEditor.activate(DC.PositionEditorType.ROTATION,e=>{})
}

function stop(){
positionEditor.deactivate()
}


function locate(){
viewer.flyTo(viewer.getLayer("layer").getOverlays()[0])
}

function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer = DC.ImageryLayerFactory.createBaiduImageryLayer({
style: 'dark',
crs:"WGS84"
})
viewer.addBaseLayer(baselayer)
let layer = new DC.TilesetLayer("layer").addTo(viewer)
let tileset = new DC.Tileset('//resource.dvgis.cn/data/3dtiles/dayanta/tileset.json')
layer.addOverlay(tileset)
positionEditor = new DC.PositionEditor(viewer,{
axisLineScale: 10
})
positionEditor.overlay = tileset
viewer.flyTo(tileset)
}
DC.ready(initViewer)
</script>
</body>
</html>

+ 0
- 107
examples/analysis/viewshed.html 查看文件

@@ -1,107 +0,0 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
<style>
*{
margin: 0;
padding: 0;
}
html,body,#viewer-container{
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>

<body>

<div id="viewer-container"></div>
<script>
let viewer = undefined

function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
style:"img",
crs:"WGS84"
})
viewer.addBaseLayer(baselayer)
viewer.setOptions({
globe:{
depthTestAgainstTerrain:true
}
})
let layer = new DC.TilesetLayer("layer").addTo(viewer)
let tileset = new DC.Tileset('//resource.dvgis.cn/data/3dtiles/dayanta/tileset.json')
tileset.setHeight(-420)
layer.addOverlay(tileset)
viewer.flyTo(tileset)
viewer.use(new DC.Analysis())
viewer.analysis.viewshed("108.95772292882747,34.22122559229137,20,130",400, 60,1.3)
addGuiController()
}

function addGuiController(){
let position = DC.Position.fromString("108.95772292882747,34.22122559229137,20,130")
let controls = {
depthTest: true,
fov: 60,
aspectRatio:1.3,
far:400,
heading:130,
showHelp:false
}
let gui = new dat.GUI()
gui.add(controls,'depthTest').onChange(value=>{
viewer.setOptions({
globe:{
depthTestAgainstTerrain:value
}
})
})
gui.add(controls,'fov',0,100).step(10).onChange(value=>{
viewer.analysis.viewshed(position,controls.far, value , controls.aspectRatio,{
showHelp:controls.showHelp
})
})

gui.add(controls,'aspectRatio',1,5).step(0.1).onChange(value=>{
viewer.analysis.viewshed(position,controls.far, controls.fov , value,{
showHelp:controls.showHelp
})
})

gui.add(controls,'far',100,1000).step(100).onChange(value=>{
viewer.analysis.viewshed(position,value,controls.fov , controls.aspectRatio,{
showHelp:controls.showHelp
})
})

gui.add(controls,'heading',0,360).step(5).onChange(value=>{
position.heading = value
viewer.analysis.viewshed(position,controls.far,controls.fov , controls.aspectRatio,{
showHelp:controls.showHelp
})
})

gui.add(controls,'showHelp').onChange(value=>{
viewer.analysis.viewshed(position,controls.far,controls.fov ,controls.aspectRatio,{
showHelp:value
})
})
}

DC.ready(initViewer)
</script>
</body>
</html>

+ 10
- 6
examples/datav/e_airline.html 查看文件

@@ -31,18 +31,22 @@
<script>
let viewer = undefined
function initViewer() {
viewer = new DC.Viewer('viewer-container')
viewer.scene.canvas.setAttribute('tabIndex', 0)
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer({
style:'img'
viewer = new DC.Viewer('viewer-container',{
contextOptions: {
requestWebgl1: true,
},
})
baselayer.defaultBrightness=0.2

let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer()
baselayer.defaultBrightness = 0.1
viewer.addBaseLayer(baselayer)
let chartLayer = new DC.ChartLayer('layer').addTo(viewer)
viewer.scene.canvas.setAttribute('tabIndex', 0)
viewer.flyToPosition(
new DC.Position(108.198353, 20.758452, 10733735.96, 0, -90, 0),
() => {
let chartLayer = new DC.ChartLayer('layer')
chartLayer.setOption(getOption())
viewer.addLayer(chartLayer)
}
)
}

+ 5
- 8
examples/datav/e_plane.html 查看文件

@@ -8,6 +8,7 @@
<script src='http://dc.dvgis.cn/libs/echarts/echarts.min.js'></script>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script src='/libs/dc-sdk/dc.chart.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
@@ -32,17 +33,13 @@
function initViewer() {
viewer = new DC.Viewer('viewer-container')
viewer.scene.canvas.setAttribute('tabIndex', 0)
let baselayer_midnight = DC.ImageryLayerFactory.createBaiduImageryLayer({
style: 'dark'
})
viewer.addBaseLayer(baselayer_midnight, {
iconUrl: '../assets/icon/midnight.png',
name: '午夜蓝'
})
let chartLayer = new DC.ChartLayer('layer').addTo(viewer)
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer()
baselayer.defaultBrightness = 0.1
viewer.addBaseLayer(baselayer)
viewer.flyToPosition(
new DC.Position(108.198353, 20.758452, 10733735.96, 0, -90, 0),
() => {
let chartLayer = new DC.ChartLayer('layer').addTo(viewer)
chartLayer.setOption(getOption())
}
)

+ 6
- 9
examples/datav/e_pm2.5.html 查看文件

@@ -5,8 +5,10 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='http://dc.dvgis.cn/libs/echarts/echarts.min.js'></script>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script src='/libs/dc-sdk/dc.chart.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
@@ -30,18 +32,13 @@
let viewer = undefined
function initViewer() {
viewer = new DC.Viewer('viewer-container')

let baselayer_midnight = DC.ImageryLayerFactory.createBaiduImageryLayer({
style: 'dark'
})
viewer.addBaseLayer(baselayer_midnight, {
iconUrl: '../assets/icon/midnight.png',
name: '午夜蓝'
})
let chartLayer = new DC.ChartLayer('layer').addTo(viewer)
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer()
baselayer.defaultBrightness = 0.1
viewer.addBaseLayer(baselayer)
viewer.flyToPosition(
new DC.Position(108.198353, 20.758452, 10733735.96, 0, -90, 0),
() => {
let chartLayer = new DC.ChartLayer('layer').addTo(viewer)
chartLayer.setOption(getOption())
}
)

+ 6
- 9
examples/datav/e_pm2.5_2.html 查看文件

@@ -5,8 +5,10 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='http://dc.dvgis.cn/libs/echarts/echarts.min.js'></script>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script src='/libs/dc-sdk/dc.chart.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
@@ -30,18 +32,13 @@
let viewer = undefined
function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer_midnight = DC.ImageryLayerFactory.createBaiduImageryLayer({
style: 'dark'
})
viewer.addBaseLayer(baselayer_midnight, {
iconUrl: '../assets/icon/midnight.png',
name: '午夜蓝'
})

let chartLayer = new DC.ChartLayer('layer').addTo(viewer)
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer()
baselayer.defaultBrightness = 0.1
viewer.addBaseLayer(baselayer)
viewer.flyToPosition(
new DC.Position(108.198353, 20.758452, 10733735.96, 0, -90, 0),
() => {
let chartLayer = new DC.ChartLayer('layer').addTo(viewer)
chartLayer.setOption(getOption())
}
)

+ 7
- 10
examples/datav/e_qx.html 查看文件

@@ -5,8 +5,10 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='http://dc.dvgis.cn/libs/echarts/echarts.min.js'></script>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script src='/libs/dc-sdk/dc.chart.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
@@ -23,6 +25,7 @@
</style>
</head>


<body>

<div id="viewer-container"></div>
@@ -30,20 +33,14 @@
let viewer = undefined
function initViewer() {
viewer = new DC.Viewer('viewer-container')
viewer.scene.canvas.setAttribute('tabIndex', 0)
let baselayer_midnight = DC.ImageryLayerFactory.createBaiduImageryLayer({
style: 'dark'
})
viewer.addBaseLayer(baselayer_midnight, {
iconUrl: '../assets/icon/midnight.png',
name: '午夜蓝'
})
let chartLayer = new DC.ChartLayer('layer').addTo(viewer)
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer()
baselayer.defaultBrightness = 0.1
viewer.addBaseLayer(baselayer)
viewer.flyToPosition(
new DC.Position(108.198353, 20.758452, 10733735.96, 0, -90, 0),
() => {
let chartLayer = new DC.ChartLayer('layer').addTo(viewer)
chartLayer.setOption(getOption())

}
)
}

+ 6
- 11
examples/datav/e_qx_2.html 查看文件

@@ -1,12 +1,13 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='http://dc.dvgis.cn/libs/echarts/echarts.min.js'></script>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script src='/libs/dc-sdk/dc.chart.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
@@ -26,23 +27,17 @@
<body>

<div id="viewer-container"></div>

<script>
let viewer = undefined
function initViewer() {
viewer = new DC.Viewer('viewer-container')
viewer.scene.canvas.setAttribute('tabIndex', 0)
let baselayer_midnight = DC.ImageryLayerFactory.createBaiduImageryLayer({
style: 'dark'
})
viewer.addBaseLayer(baselayer_midnight, {
iconUrl: '../assets/icon/midnight.png',
name: '午夜蓝'
})
let chartLayer = new DC.ChartLayer('layer').addTo(viewer)
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer()
baselayer.defaultBrightness = 0.1
viewer.addBaseLayer(baselayer)
viewer.flyToPosition(
new DC.Position(108.198353, 20.758452, 10733735.96, 0, -90, 0),
() => {
let chartLayer = new DC.ChartLayer('layer').addTo(viewer)
chartLayer.setOption(getOption())
}
)

+ 7
- 9
examples/datav/e_rk.html 查看文件

@@ -1,12 +1,15 @@
<!DOCTYPE html>
<html lang="en">


<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='http://dc.dvgis.cn/libs/echarts/echarts.min.js'></script>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script src='/libs/dc-sdk/dc.chart.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
@@ -30,18 +33,13 @@
let viewer = undefined
function initViewer() {
viewer = new DC.Viewer('viewer-container')
let baselayer_midnight = DC.ImageryLayerFactory.createBaiduImageryLayer({
style: 'dark'
})
viewer.addBaseLayer(baselayer_midnight, {
iconUrl: '../assets/icon/midnight.png',
name: '午夜蓝'
})

let chartLayer = new DC.ChartLayer('layer').addTo(viewer)
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer()
baselayer.defaultBrightness = 0.1
viewer.addBaseLayer(baselayer)
viewer.flyToPosition(
new DC.Position(108.198353, 20.758452, 10733735.96, 0, -90, 0),
() => {
let chartLayer = new DC.ChartLayer('layer').addTo(viewer)
chartLayer.setOption(getOption())
}
)

+ 9
- 9
examples/datav/e_wl.html 查看文件

@@ -1,12 +1,17 @@
<!DOCTYPE html>
<html lang="en">

<html lang="en">


<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>dc-example</title>
<script src='http://dc.dvgis.cn/libs/echarts/echarts.min.js'></script>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script src='/libs/dc-sdk/dc.chart.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
@@ -30,18 +35,13 @@
let viewer = undefined
function initViewer() {
viewer = new DC.Viewer('viewer-container')
viewer.scene.canvas.setAttribute('tabIndex', 0)
let baselayer_midnight = DC.ImageryLayerFactory.createBaiduImageryLayer({
style: 'dark'
})
viewer.addBaseLayer(baselayer_midnight, {
iconUrl: '../assets/icon/midnight.png',
name: '午夜蓝'
})
let chartLayer = new DC.ChartLayer('layer').addTo(viewer)
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer()
baselayer.defaultBrightness = 0.1
viewer.addBaseLayer(baselayer)
viewer.flyToPosition(
new DC.Position(108.198353, 20.758452, 10733735.96, 0, -90, 0),
() => {
let chartLayer = new DC.ChartLayer('layer').addTo(viewer)
chartLayer.setOption(getOption())
}
)

+ 6
- 4
examples/datav/heat.html 查看文件

@@ -44,10 +44,12 @@
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer()
baselayer.defaultBrightness= 0.2
viewer.addBaseLayer(baselayer)
let layer = new DC.HeatLayer('layer')
viewer.addLayer(layer)
let positions = generatePosition(1000)
layer.setPositions(positions)
setTimeout(()=>{
let layer = new DC.HeatLayer('layer')
viewer.addLayer(layer)
let positions = generatePosition(1000)
layer.setPositions(positions)
})
viewer.flyToPosition("120.670183527,31.348282115,109658.22,0,-89.90659095062371")
}
DC.ready(initViewer)

+ 8
- 4
examples/datav/heat_building.html 查看文件

@@ -49,11 +49,15 @@
'//resource.dvgis.cn/data/3dtiles/ljz/tileset.json'
)
buildingLayer.addOverlay(tileset)
let layer = new DC.HeatLayer('layer',{
useGround: true

setTimeout(()=>{
let layer = new DC.HeatLayer('layer',{
useGround: true
})
viewer.addLayer(layer)
layer.setPositions(generatePosition(10000))
})
viewer.addLayer(layer)
layer.setPositions(generatePosition(10000))

viewer.flyToPosition("121.45765915248303,31.202070402003816,2301.94,44.95,-23.06")
}
DC.ready(initViewer)

+ 8
- 6
examples/datav/heat_height.html 查看文件

@@ -44,12 +44,14 @@
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer()
baselayer.defaultBrightness= 0.2
viewer.addBaseLayer(baselayer)
let layer = new DC.HeatLayer('layer',{})
viewer.addLayer(layer)
layer.setPositions(generatePosition(10000))
let layer2 = new DC.HeatLayer('layer2',{ height:4000 })
viewer.addLayer(layer2)
layer2.setPositions( generatePosition(10000))
setTimeout(()=>{
let layer = new DC.HeatLayer('layer',{})
viewer.addLayer(layer)
layer.setPositions(generatePosition(10000))
let layer2 = new DC.HeatLayer('layer2',{ height:4000 })
viewer.addLayer(layer2)
layer2.setPositions( generatePosition(10000))
})
viewer.flyToPosition("120.58464690,30.57441821,35840.6299288431,5.80,-27.24")
}
DC.ready(initViewer)

+ 6
- 9
examples/datav/m_grid.html 查看文件

@@ -151,13 +151,9 @@
function initViewer() {
viewer = new DC.Viewer('viewer-container')
viewer.scene.canvas.setAttribute('tabIndex', 0)
let baselayer_midnight = DC.ImageryLayerFactory.createBaiduImageryLayer({
style: 'dark'
})
viewer.addBaseLayer(baselayer_midnight, {
iconUrl: '../assets/icon/midnight.png',
name: '午夜蓝'
})
let baselayer = DC.ImageryLayerFactory.createAmapImageryLayer()
baselayer.defaultBrightness= 0.2
viewer.addBaseLayer(baselayer)
let data = []
for (let key in geoCoordMap) {
let geoCoord = geoCoordMap[key]
@@ -193,11 +189,12 @@
},
draw: 'grid'
}
let layer = new DC.MapvLayer('layer', options)
viewer.addLayer(layer)

viewer.flyToPosition(
new DC.Position(108.198353, 20.758452, 10733735.96, 0, -90, 0),
() => {
let layer = new DC.MapvLayer('layer', options)
viewer.addLayer(layer)
layer.setDataSet(dataset)
}
)

+ 4
- 2
examples/datav/m_grid_d.html 查看文件

@@ -7,6 +7,7 @@
<title>dc-example</title>
<script src='/libs/dc-sdk/dc.base.min.js'></script>
<script src='/libs/dc-sdk/dc.core.min.js'></script>
<script src='/libs/dc-sdk/dc.mapv.min.js'></script>
<script>DC.baseUrl='../libs/dc-sdk/resources/'</script>
<link href='/libs/dc-sdk/dc.core.min.css' type='text/css' rel='stylesheet'>
<link href='../index.css' type='text/css' rel='stylesheet'>
@@ -202,11 +203,12 @@
},
draw: 'grid'
}
let layer = new DC.MapvLayer('layer', options)
viewer.addLayer(layer)

viewer.flyToPosition(
new DC.Position(108.198353, 20.758452, 10733735.96, 0, -90, 0),
() => {
let layer = new DC.MapvLayer('layer', options)
viewer.addLayer(layer)
layer.setDataSet(dataset)
}
)

+ 3
- 3
modules/material/shader/circle/CircleScanShader.glsl 查看文件

@@ -1,6 +1,6 @@
in vec2 v_textureCoordinates;
uniform sampler2D colorTexture;
uniform sampler2D depthTexture;
varying vec2 v_textureCoordinates;
uniform vec3 centerWC;
uniform vec3 normalWC;
uniform float radius;
@@ -29,7 +29,7 @@ vec3 pointProjectOnPlane(in vec3 planeNormal, in vec3 planeOrigin, in vec3 point
}

void main() {
gl_FragColor = texture(colorTexture, v_textureCoordinates);
out_FragColor = texture(colorTexture, v_textureCoordinates);
float depth = getDepth();
vec4 viewPos = toEye(v_textureCoordinates, depth);
vec4 center = czm_view * vec4(centerWC,1);
@@ -41,6 +41,6 @@ void main() {
if(dis < temp) {
float f = 1.0 - abs(temp - dis) / temp;
f = pow(f, 4.0);
gl_FragColor = mix(gl_FragColor, color, f);
out_FragColor = mix(out_FragColor, color, f);
}
}

+ 3
- 3
modules/material/shader/radar/RadarScanShader.glsl 查看文件

@@ -1,6 +1,6 @@
in vec2 v_textureCoordinates;
uniform sampler2D colorTexture;
uniform sampler2D depthTexture;
varying vec2 v_textureCoordinates;
uniform vec3 centerWC;
uniform vec3 planeNormalWC;
uniform vec3 lineNormalWC;
@@ -46,7 +46,7 @@ float distancePointToLine(in vec3 ptOnLine, in vec3 lineNormal, in vec3 testPt)
}

void main() {
gl_FragColor = texture(colorTexture, v_textureCoordinates);
out_FragColor = texture(colorTexture, v_textureCoordinates);
float depth = getDepth();
vec4 viewPos = toEye(v_textureCoordinates, depth);
vec4 centerEC = czm_view * vec4(centerWC,1);
@@ -65,6 +65,6 @@ void main() {
f = abs(diameter - dis1) / diameter;
f = pow(f, 3.0);
}
gl_FragColor = mix(gl_FragColor, color, f + f0);
out_FragColor = mix(out_FragColor, color, f + f0);
}
}

Loading…
取消
儲存