File tree 3 files changed +56
-8
lines changed
3 files changed +56
-8
lines changed Original file line number Diff line number Diff line change @@ -33,9 +33,7 @@ const props = withDefaults(
33
33
},
34
34
);
35
35
36
- const { layer } = useLayer (WebGLVectorLayer , {
37
- ... props ,
38
- });
36
+ const { layer } = useLayer (WebGLVectorLayer , props );
39
37
40
38
provide (" webglVectorLayer" , layer );
41
39
Original file line number Diff line number Diff line change 1
1
<template >
2
+ <form >
3
+ <fieldset >
4
+ <label for =" opacity" >Layer Opacity</label >
5
+ <input
6
+ type =" range"
7
+ id =" opacity"
8
+ min =" 0"
9
+ max =" 1"
10
+ step =" 0.1"
11
+ v-model.number =" opacity"
12
+ />
13
+ <span class =" description" >{{ opacity }}</span >
14
+ </fieldset >
15
+ <fieldset >
16
+ <label for =" visibility-toggle" >Layer Visibility:</label >
17
+ <input type =" checkbox" id =" visibility-toggle" v-model =" visible" />
18
+ <span > {{ visible ? "Visible" : "Hidden" }}</span >
19
+ </fieldset >
20
+ </form >
21
+
2
22
<ol-map
3
23
:loadTilesWhileAnimating =" true"
4
24
:loadTilesWhileInteracting =" true"
16
36
</ol-tile-layer >
17
37
18
38
<!-- webgl points layer -->
19
- <ol-webgl-vector-layer :styles =" webglPointStyle" >
39
+ <ol-webgl-vector-layer
40
+ :styles =" webglPointStyle"
41
+ :visible =" visible"
42
+ :opacity =" opacity"
43
+ >
20
44
<ol-source-vector
21
45
:format =" geoJson"
22
46
crossOrigin =" anonymous"
25
49
</ol-webgl-vector-layer >
26
50
27
51
<!-- webgl lines layer -->
28
- <ol-webgl-vector-layer :styles =" webglLineStyle" >
52
+ <ol-webgl-vector-layer
53
+ :styles =" webglLineStyle"
54
+ :visible =" visible"
55
+ :opacity =" opacity"
56
+ >
29
57
<ol-source-vector
30
58
:format =" geoJson"
31
59
crossOrigin =" anonymous"
34
62
</ol-webgl-vector-layer >
35
63
36
64
<!-- webgl polygons layer -->
37
- <ol-webgl-vector-layer :styles =" webglPolyStyle" >
65
+ <ol-webgl-vector-layer
66
+ :styles =" webglPolyStyle"
67
+ :visible =" visible"
68
+ :opacity =" opacity"
69
+ >
38
70
<ol-source-vector
39
71
:format =" geoJson"
40
72
crossOrigin =" anonymous"
45
77
</template >
46
78
47
79
<script setup lang="ts">
48
- import { ref , inject } from " vue" ;
80
+ import { inject , ref } from " vue" ;
49
81
82
+ const opacity = ref (1 );
83
+ const visible = ref (true );
50
84
const center = ref ([- 73.3 , 48.0 ]);
51
85
const projection = ref (" EPSG:4326" );
52
86
const zoom = ref (7 );
Original file line number Diff line number Diff line change 1
1
<template >
2
+ <form >
3
+ <fieldset >
4
+ <label for =" opacity" >Layer Opacity</label >
5
+ <input
6
+ type =" range"
7
+ id =" opacity"
8
+ min =" 0"
9
+ max =" 1"
10
+ step =" 0.1"
11
+ v-model.number =" opacity"
12
+ />
13
+ <span class =" description" >{{ opacity }}</span >
14
+ </fieldset >
15
+ </form >
16
+
2
17
<ol-map
3
18
:loadTilesWhileAnimating =" true"
4
19
:loadTilesWhileInteracting =" true"
45
60
</template >
46
61
47
62
<script setup lang="ts">
48
- import { ref , inject } from " vue" ;
63
+ import { inject , ref } from " vue" ;
49
64
65
+ const opacity = ref (1 );
50
66
const center = ref ([116.54875 , 40.45064 ]);
51
67
const projection = ref (" EPSG:4326" );
52
68
const zoom = ref (16 );
You can’t perform that action at this time.
0 commit comments