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
38e513e6
Commit
38e513e6
authored
Jul 24, 2024
by
jlc
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update:添加雨的场景
parent
a5ac2e80
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
73 additions
and
1 deletions
+73
-1
Rain.png
src/assets/Rain.png
+0
-0
CodeMap.js
src/examples/CodeMap.js
+2
-0
FunctionMap.js
src/examples/FunctionMap.js
+2
-0
rain-function.js
src/examples/rain-function.js
+50
-0
rain.vue
src/examples/rain.vue
+18
-0
ElementMap.js
src/views/ElementMap.js
+1
-1
No files found.
src/assets/Rain.png
0 → 100644
View file @
38e513e6
648 KB
src/examples/CodeMap.js
View file @
38e513e6
...
...
@@ -2,6 +2,7 @@ import vueCodePoint from '@/examples/point.vue?raw'
import
vueCodeLine
from
'@/examples/line.vue?raw'
import
vueCodePlane
from
'@/examples/plane.vue?raw'
import
vueCodeRain
from
'@/examples/rain.vue?raw'
import
vueCodeSnow
from
'@/examples/snow.vue?raw'
const
vueCodeMap
=
{
...
...
@@ -9,6 +10,7 @@ const vueCodeMap = {
多线
:
vueCodeLine
,
多面
:
vueCodePlane
,
雨
:
vueCodeRain
,
雪
:
vueCodeSnow
}
...
...
src/examples/FunctionMap.js
View file @
38e513e6
...
...
@@ -2,6 +2,7 @@ import functionCodePoint from '@/examples/point-function.js?raw'
import
functionCodeLine
from
'@/examples/line-function.js?raw'
import
functionCodePlane
from
'@/examples/plane-function.js?raw'
import
functionCodeRain
from
'@/examples/rain-function.js?raw'
import
functionCodeSnow
from
'@/examples/snow-function.js?raw'
const
functionCodeMap
=
{
...
...
@@ -9,6 +10,7 @@ const functionCodeMap = {
多线
:
functionCodeLine
,
多面
:
functionCodePlane
,
雨
:
functionCodeRain
,
雪
:
functionCodeSnow
}
...
...
src/examples/rain-function.js
0 → 100644
View file @
38e513e6
export
function
addRain
()
{
const
script
=
document
.
createElement
(
'script'
);
script
.
src
=
'https://cesium.com/downloads/cesiumjs/releases/1.119/Build/Cesium/Cesium.js'
;
script
.
onload
=
()
=>
{
window
.
Cesium
.
Ion
.
defaultAccessToken
=
'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI3Njg4ZWU5Yi1iZDhiLTRhYmUtOTRiYS04YjM5NmUwNjVmMDMiLCJpZCI6MjI3MzQ3LCJpYXQiOjE3MjA1MjA4Mjh9.E5XW4LnwgfVAaBC-znaYr61m4yK0-j2qEQhi9qwFFPE'
const
viewer
=
new
window
.
Cesium
.
Viewer
(
'cesiumContainer'
,
{
infoBox
:
false
,
});
viewer
.
scene
.
postProcessStages
.
add
(
new
Cesium
.
PostProcessStage
({
fragmentShader
:
`
uniform sampler2D colorTexture;
in vec2 v_textureCoordinates;
uniform float tiltAngle;
uniform float rainSize;
uniform float rainSpeed;
float hash(float x) {
return fract(sin(x * 133.3) * 13.13);
}
out vec4 fragColor;
void main(void) {
float time = czm_frameNumber / rainSpeed;
vec2 resolution = czm_viewport.zw;
vec2 uv = (gl_FragCoord.xy * 2. - resolution.xy) / min(resolution.x, resolution.y);
vec3 c = vec3(.6, .7, .8);
float a = tiltAngle;
float si = sin(a), co = cos(a);
uv *= mat2(co, -si, si, co);
uv *= length(uv + vec2(0, 4.9)) * rainSize + 1.;
float v = 1. - sin(hash(floor(uv.x * 100.)) * 2.);
float b = clamp(abs(sin(20. * time * v + uv.y * (5. / (2. + v)))) - .95, 0., 1.) * 20.;
c *= v * b;
fragColor = mix(texture(colorTexture, v_textureCoordinates), vec4(c, 1), .5);
}
`
,
uniforms
:
{
tiltAngle
:
-
0.2
,
//倾斜角度
rainSize
:
0.8
,
// 雨大小
rainSpeed
:
200.0
,
// 雨速
},
}));
};
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/rain.vue
0 → 100644
View file @
38e513e6
<
template
>
<div
id=
"cesiumContainer"
class=
"cesium-container"
></div>
</
template
>
<
script
setup
>
import
{
onMounted
}
from
'vue'
;
import
{
addRain
}
from
'./function'
;
onMounted
(()
=>
{
addRain
()
});
</
script
>
<
style
>
.cesium-container
{
width
:
100%
;
height
:
100vh
;
}
</
style
>
\ No newline at end of file
src/views/ElementMap.js
View file @
38e513e6
...
...
@@ -16,7 +16,7 @@ export const elementGraphicMap = {
export
const
elementWeatherMap
=
{
One
:
{
title
:
'雨'
,
pngUrl
:
'/src/assets/
Line
.png'
pngUrl
:
'/src/assets/
Rain
.png'
},
Two
:
{
title
:
'雪'
,
...
...
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