Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
cesium-frame
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
jlc
cesium-frame
Commits
5df687dd
Commit
5df687dd
authored
Aug 01, 2024
by
jlc
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update:场景截图案例代码结构的修改
parent
2ad77307
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
39 additions
and
41 deletions
+39
-41
sceneScreenshot-function.js
...ples/sceneSet/sceneScreenshot/sceneScreenshot-function.js
+1
-36
sceneScreenshot.vue
src/examples/sceneSet/sceneScreenshot/sceneScreenshot.vue
+38
-5
No files found.
src/examples/sceneSet/sceneScreenshot/sceneScreenshot-function.js
View file @
5df687dd
let
viewer
;
// 全局声明viewer
export
function
exportImage
(
viewer
){
export
function
addSceneScreenshot
()
{
const
script
=
document
.
createElement
(
'script'
);
script
.
src
=
'https://cesium.com/downloads/cesiumjs/releases/1.99/Build/Cesium/Cesium.js'
;
script
.
onload
=
()
=>
{
window
.
Cesium
.
Ion
.
defaultAccessToken
=
'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI3Njg4ZWU5Yi1iZDhiLTRhYmUtOTRiYS04YjM5NmUwNjVmMDMiLCJpZCI6MjI3MzQ3LCJpYXQiOjE3MjA1MjA4Mjh9.E5XW4LnwgfVAaBC-znaYr61m4yK0-j2qEQhi9qwFFPE'
viewer
=
new
window
.
Cesium
.
Viewer
(
'cesiumContainer'
,
{
navigationHelpButton
:
false
,
// 是否显示帮助信息控件
infoBox
:
true
,
// 是否显示点击要素之后显示的信息
fullscreenButton
:
false
,
// 全屏显示
CreditsDisplay
:
false
,
contextOptions
:
{
webgl
:
{
alpha
:
true
,
depth
:
true
,
stencil
:
true
,
antialias
:
true
,
premultipliedAlpha
:
true
,
// 通过canvas.toDataURL()实现截图需要将该项设置为true
preserveDrawingBuffer
:
true
,
failIfMajorPerformanceCaveat
:
true
}
}
});
};
document
.
head
.
appendChild
(
script
);
const
link
=
document
.
createElement
(
'link'
);
link
.
rel
=
'stylesheet'
;
link
.
href
=
'https://cesium.com/downloads/cesiumjs/releases/1.119/Build/Cesium/Widgets/widgets.css'
;
document
.
head
.
appendChild
(
link
);
}
export
function
exportImage
(){
// 获取场景的canvas
// 获取场景的canvas
const
canvas
=
viewer
.
scene
.
canvas
;
const
canvas
=
viewer
.
scene
.
canvas
;
// 创建一个临时的a标签用于下载图片
// 创建一个临时的a标签用于下载图片
...
...
src/examples/sceneSet/sceneScreenshot/sceneScreenshot.vue
View file @
5df687dd
<
template
>
<
template
>
<div
id=
"cesiumContainer"
class=
"cesium-container"
></div>
<div
id=
"cesiumContainer"
class=
"cesium-container"
></div>
<button
@
click=
"exportImage()"
class=
"btn-class"
>
下载场景图片
</button>
<button
@
click=
"exportImage(
viewer
)"
class=
"btn-class"
>
下载场景图片
</button>
</
template
>
</
template
>
<
script
setup
>
<
script
setup
>
import
{
onMounted
}
from
'vue'
;
import
{
onMounted
}
from
'vue'
;
import
{
addSceneScreenshot
,
exportImage
}
from
'./function'
;
import
{
exportImage
}
from
'./function'
;
let
viewer
;
onMounted
(()
=>
{
onMounted
(()
=>
{
addSceneScreenshot
()
const
script
=
document
.
createElement
(
'script'
);
script
.
src
=
'https://cesium.com/downloads/cesiumjs/releases/1.99/Build/Cesium/Cesium.js'
;
script
.
onload
=
()
=>
{
window
.
Cesium
.
Ion
.
defaultAccessToken
=
'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI3Njg4ZWU5Yi1iZDhiLTRhYmUtOTRiYS04YjM5NmUwNjVmMDMiLCJpZCI6MjI3MzQ3LCJpYXQiOjE3MjA1MjA4Mjh9.E5XW4LnwgfVAaBC-znaYr61m4yK0-j2qEQhi9qwFFPE'
viewer
=
new
window
.
Cesium
.
Viewer
(
'cesiumContainer'
,
{
navigationHelpButton
:
false
,
// 是否显示帮助信息控件
infoBox
:
true
,
// 是否显示点击要素之后显示的信息
fullscreenButton
:
false
,
// 全屏显示
CreditsDisplay
:
false
,
contextOptions
:
{
webgl
:
{
alpha
:
true
,
depth
:
true
,
stencil
:
true
,
antialias
:
true
,
premultipliedAlpha
:
true
,
// 通过canvas.toDataURL()实现截图需要将该项设置为true
preserveDrawingBuffer
:
true
,
failIfMajorPerformanceCaveat
:
true
}
}
});
};
document
.
head
.
appendChild
(
script
);
const
link
=
document
.
createElement
(
'link'
);
link
.
rel
=
'stylesheet'
;
link
.
href
=
'https://cesium.com/downloads/cesiumjs/releases/1.119/Build/Cesium/Widgets/widgets.css'
;
document
.
head
.
appendChild
(
link
);
});
});
</
script
>
</
script
>
<
style
>
<
style
>
.cesium-container
{
.cesium-container
{
width
:
100%
;
width
:
100%
;
height
:
100vh
;
height
:
100vh
;
}
}
.btn-class
{
.btn-class
{
position
:
absolute
;
position
:
absolute
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment