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
de46332d
Commit
de46332d
authored
Aug 01, 2024
by
jlc
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update:雾案例代码的修改
parent
86bc645a
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
49 additions
and
44 deletions
+49
-44
fog-function.js
src/examples/weather/fog/fog-function.js
+25
-41
fog.vue
src/examples/weather/fog/fog.vue
+24
-3
No files found.
src/examples/weather/fog/fog-function.js
View file @
de46332d
export
function
addFog
()
{
export
function
addFog
(
viewer
)
{
const
script
=
document
.
createElement
(
'script'
);
viewer
.
scene
.
postProcessStages
.
add
(
new
Cesium
.
PostProcessStage
({
script
.
src
=
'https://cesium.com/downloads/cesiumjs/releases/1.99/Build/Cesium/Cesium.js'
;
fragmentShader
:
`
script
.
onload
=
()
=>
{
uniform sampler2D colorTexture;
window
.
Cesium
.
Ion
.
defaultAccessToken
=
'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI3Njg4ZWU5Yi1iZDhiLTRhYmUtOTRiYS04YjM5NmUwNjVmMDMiLCJpZCI6MjI3MzQ3LCJpYXQiOjE3MjA1MjA4Mjh9.E5XW4LnwgfVAaBC-znaYr61m4yK0-j2qEQhi9qwFFPE'
uniform sampler2D depthTexture;
uniform float visibility;
const
viewer
=
new
window
.
Cesium
.
Viewer
(
'cesiumContainer'
,
{
uniform vec4 fogColor;
infoBox
:
false
,
varying vec2 v_textureCoordinates;
});
varying vec4 fragColor;
void main(void)
viewer
.
scene
.
postProcessStages
.
add
(
new
Cesium
.
PostProcessStage
({
{
fragmentShader
:
`
vec4 origcolor = texture2D(colorTexture, v_textureCoordinates);
uniform sampler2D colorTexture;
float depth = czm_readDepth(depthTexture, v_textureCoordinates);
uniform sampler2D depthTexture;
vec4 depthcolor = texture2D(depthTexture, v_textureCoordinates);
uniform float visibility;
float f = visibility * (depthcolor.r - 0.3) / 0.2;
uniform vec4 fogColor;
if (f < 0.0) f = 0.0;
varying vec2 v_textureCoordinates;
else if (f > 1.0) f = 1.0;
varying vec4 fragColor;
gl_FragColor = mix(origcolor, fogColor, f);
void main(void)
}
{
`
,
vec4 origcolor = texture2D(colorTexture, v_textureCoordinates);
uniforms
:
{
float depth = czm_readDepth(depthTexture, v_textureCoordinates);
visibility
:
0.1
,
vec4 depthcolor = texture2D(depthTexture, v_textureCoordinates);
fogColor
:
new
Cesium
.
Color
(
0.8
,
0.8
,
0.8
,
0.8
),
float f = visibility * (depthcolor.r - 0.3) / 0.2;
},
if (f < 0.0) f = 0.0;
}));
else if (f > 1.0) f = 1.0;
gl_FragColor = mix(origcolor, fogColor, f);
}
`
,
uniforms
:
{
visibility
:
0.1
,
fogColor
:
new
Cesium
.
Color
(
0.8
,
0.8
,
0.8
,
0.8
),
},
}));
};
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
);
}
}
src/examples/weather/fog/fog.vue
View file @
de46332d
<
template
>
<
template
>
<div
id=
"cesiumContainer"
class=
"cesium-container"
></div>
<div
id=
"cesiumContainer"
class=
"cesium-container"
></div>
</
template
>
</
template
>
<
script
setup
>
<
script
setup
>
import
{
onMounted
}
from
'vue'
;
import
{
onMounted
}
from
'vue'
;
import
{
addFog
}
from
'./function'
;
import
{
addFog
}
from
'./function'
;
let
viewer
;
onMounted
(()
=>
{
onMounted
(()
=>
{
addFog
()
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'
,
{
infoBox
:
false
,
});
addFog
(
viewer
)
};
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
;
}
}
</
style
>
</
style
>
\ No newline at end of file
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