@openglobus/og 0.13.7 → 0.13.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/@openglobus/og.esm.js +2 -2
- package/dist/@openglobus/og.esm.js.map +1 -1
- package/dist/@openglobus/og.umd.js +2 -2
- package/dist/@openglobus/og.umd.js.map +1 -1
- package/package.json +1 -1
- package/src/og/Object3d.js +384 -0
- package/src/og/arial.js +1705 -1703
- package/src/og/camera/Camera.js +640 -640
- package/src/og/control/EarthCoordinates.js +1 -1
- package/src/og/control/LayerAnimation.js +115 -0
- package/src/og/control/MouseNavigation.js +460 -460
- package/src/og/control/Sun.js +170 -170
- package/src/og/control/ZoomControl.js +0 -2
- package/src/og/control/index.js +3 -1
- package/src/og/control/ruler/Ruler.js +43 -0
- package/src/og/control/ruler/RulerScene.js +370 -0
- package/src/og/control/visibleExtent/Segment.js +1 -4
- package/src/og/ellipsoid/Ellipsoid.js +19 -0
- package/src/og/entity/Entity.js +1 -1
- package/src/og/entity/GeoObject.js +1 -1
- package/src/og/entity/LabelHandler.js +1 -0
- package/src/og/layer/Layer.js +23 -40
- package/src/og/layer/Vector.js +80 -14
- package/src/og/layer/XYZ.js +4 -0
- package/src/og/math/Vec3.js +1 -1
- package/src/og/math.js +4 -4
- package/src/og/quadTree/Node.js +1 -1
- package/src/og/renderer/Renderer.js +1 -2
- package/src/og/res/images.js +0 -2
- package/src/og/scene/Planet.js +3 -2
- package/src/og/segment/Segment.js +0 -8
- package/src/og/shaders/label.js +30 -42
- package/src/og/utils/FontAtlas.js +1 -2
- package/src/og/utils/Loader.js +160 -153
- package/src/og/utils/VectorTileCreator.js +1 -1
- package/src/og/webgl/ProgramController.js +143 -143
- package/types/Object3d.d.ts +21 -0
- package/types/arial.d.ts +1 -0
- package/types/control/Sun.d.ts +1 -1
- package/types/control/index.d.ts +2 -1
- package/types/control/ruler/Ruler.d.ts +13 -0
- package/types/control/ruler/RulerScene.d.ts +48 -0
- package/types/ellipsoid/Ellipsoid.d.ts +8 -0
- package/types/layer/Layer.d.ts +23 -31
- package/types/layer/Vector.d.ts +2 -0
- package/types/layer/XYZ.d.ts +1 -0
- package/types/math.d.ts +1 -1
- package/types/res/images.d.ts +0 -1
- package/types/scene/Planet.d.ts +2 -2
- package/types/utils/Loader.d.ts +1 -0
|
@@ -1,143 +1,143 @@
|
|
|
1
|
-
import { Handler } from "./Handler.js";
|
|
2
|
-
import { Program } from "./Program.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* This is shader program controller that used by hadler object to access the shader
|
|
8
|
-
* program capabilities, like switching program during the rendering.
|
|
9
|
-
* Get access to the program from ...handler.programs.<program name> etc.
|
|
10
|
-
* @class
|
|
11
|
-
*/
|
|
12
|
-
export class ProgramController {
|
|
13
|
-
/**
|
|
14
|
-
*
|
|
15
|
-
* @param {Handler} handler - Handler.
|
|
16
|
-
* @param {Program} program - Shader program.
|
|
17
|
-
*/
|
|
18
|
-
constructor(handler, program) {
|
|
19
|
-
/**
|
|
20
|
-
* Shader program.
|
|
21
|
-
* @private
|
|
22
|
-
* @type {Program}
|
|
23
|
-
*/
|
|
24
|
-
this._program = program;
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* Handler.
|
|
28
|
-
* @private
|
|
29
|
-
* @type {Handler}
|
|
30
|
-
*/
|
|
31
|
-
this._handler = handler;
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* Program current frame activation flag.
|
|
35
|
-
* @private
|
|
36
|
-
* @type {boolean}
|
|
37
|
-
*/
|
|
38
|
-
this._activated = false;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
/**
|
|
42
|
-
* Lazy create program call.
|
|
43
|
-
* @public
|
|
44
|
-
*/
|
|
45
|
-
initialize() {
|
|
46
|
-
this._program.createProgram(this._handler.gl);
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* Returns controller's shader program.
|
|
51
|
-
* @public
|
|
52
|
-
* @return {Program} -
|
|
53
|
-
*/
|
|
54
|
-
getProgram() {
|
|
55
|
-
return this._program;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
* Activates current shader program.
|
|
60
|
-
* @public
|
|
61
|
-
* @returns {ProgramController} -
|
|
62
|
-
*/
|
|
63
|
-
activate() {
|
|
64
|
-
if (!this._activated) {
|
|
65
|
-
this._handler.activeProgram.deactivate();
|
|
66
|
-
this._handler.activeProgram = this;
|
|
67
|
-
var p = this._program;
|
|
68
|
-
this._activated = true;
|
|
69
|
-
p.enableAttribArrays();
|
|
70
|
-
p.use();
|
|
71
|
-
}
|
|
72
|
-
return this;
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
/**
|
|
76
|
-
* Remove program from handler
|
|
77
|
-
* @public
|
|
78
|
-
*/
|
|
79
|
-
remove() {
|
|
80
|
-
var p = this._handler.programs;
|
|
81
|
-
if (p[this._program.name]) {
|
|
82
|
-
if (this._activated) {
|
|
83
|
-
this.deactivate();
|
|
84
|
-
}
|
|
85
|
-
this._program.delete();
|
|
86
|
-
p[this._program.name] = null;
|
|
87
|
-
delete p[this._program.name];
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
/**
|
|
92
|
-
* Deactivate shader program. This is not necessary while activae function used.
|
|
93
|
-
* @public
|
|
94
|
-
*/
|
|
95
|
-
deactivate() {
|
|
96
|
-
this._program.disableAttribArrays();
|
|
97
|
-
this._activated = false;
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
/**
|
|
101
|
-
* Returns program activity.
|
|
102
|
-
* @public
|
|
103
|
-
* @return {boolean} -
|
|
104
|
-
*/
|
|
105
|
-
isActive() {
|
|
106
|
-
return this._activated;
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
/**
|
|
110
|
-
* Sets program uniforms and attributes values and return controller instance.
|
|
111
|
-
* @public
|
|
112
|
-
* @param {Object} params - Object with variable name and value like { value: 12, someArray:[1,2,3], uSampler: texture,... }
|
|
113
|
-
* @return {ProgramController} -
|
|
114
|
-
*/
|
|
115
|
-
set(params) {
|
|
116
|
-
this.activate();
|
|
117
|
-
this._program.set(params);
|
|
118
|
-
return this;
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
/**
|
|
122
|
-
* Draw index buffer with this program.
|
|
123
|
-
* @public
|
|
124
|
-
* @param {number} mode - Gl draw mode
|
|
125
|
-
* @param {WEBGLBuffer} buffer - Buffer to draw.
|
|
126
|
-
* @return {ProgramController} Returns current shader controller instance.
|
|
127
|
-
*/
|
|
128
|
-
drawIndexBuffer(mode, buffer) {
|
|
129
|
-
this._program.drawIndexBuffer(mode, buffer);
|
|
130
|
-
return this;
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
/**
|
|
134
|
-
* Calls Gl drawArray function.
|
|
135
|
-
* @param {number} mode - Gl draw mode.
|
|
136
|
-
* @param {number} numItems - draw items count.
|
|
137
|
-
* @return {ProgramController} Returns current shader controller instance.
|
|
138
|
-
*/
|
|
139
|
-
drawArrays(mode, numItems) {
|
|
140
|
-
this._program.drawArrays(mode, numItems);
|
|
141
|
-
return this;
|
|
142
|
-
}
|
|
143
|
-
}
|
|
1
|
+
import { Handler } from "./Handler.js";
|
|
2
|
+
import { Program } from "./Program.js";
|
|
3
|
+
|
|
4
|
+
"use strict";
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* This is shader program controller that used by hadler object to access the shader
|
|
8
|
+
* program capabilities, like switching program during the rendering.
|
|
9
|
+
* Get access to the program from ...handler.programs.<program name> etc.
|
|
10
|
+
* @class
|
|
11
|
+
*/
|
|
12
|
+
export class ProgramController {
|
|
13
|
+
/**
|
|
14
|
+
*
|
|
15
|
+
* @param {Handler} handler - Handler.
|
|
16
|
+
* @param {Program} program - Shader program.
|
|
17
|
+
*/
|
|
18
|
+
constructor(handler, program) {
|
|
19
|
+
/**
|
|
20
|
+
* Shader program.
|
|
21
|
+
* @private
|
|
22
|
+
* @type {Program}
|
|
23
|
+
*/
|
|
24
|
+
this._program = program;
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Handler.
|
|
28
|
+
* @private
|
|
29
|
+
* @type {Handler}
|
|
30
|
+
*/
|
|
31
|
+
this._handler = handler;
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Program current frame activation flag.
|
|
35
|
+
* @private
|
|
36
|
+
* @type {boolean}
|
|
37
|
+
*/
|
|
38
|
+
this._activated = false;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Lazy create program call.
|
|
43
|
+
* @public
|
|
44
|
+
*/
|
|
45
|
+
initialize() {
|
|
46
|
+
this._program.createProgram(this._handler.gl);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Returns controller's shader program.
|
|
51
|
+
* @public
|
|
52
|
+
* @return {Program} -
|
|
53
|
+
*/
|
|
54
|
+
getProgram() {
|
|
55
|
+
return this._program;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Activates current shader program.
|
|
60
|
+
* @public
|
|
61
|
+
* @returns {ProgramController} -
|
|
62
|
+
*/
|
|
63
|
+
activate() {
|
|
64
|
+
if (!this._activated) {
|
|
65
|
+
this._handler.activeProgram.deactivate();
|
|
66
|
+
this._handler.activeProgram = this;
|
|
67
|
+
var p = this._program;
|
|
68
|
+
this._activated = true;
|
|
69
|
+
p.enableAttribArrays();
|
|
70
|
+
p.use();
|
|
71
|
+
}
|
|
72
|
+
return this;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Remove program from handler
|
|
77
|
+
* @public
|
|
78
|
+
*/
|
|
79
|
+
remove() {
|
|
80
|
+
var p = this._handler.programs;
|
|
81
|
+
if (p[this._program.name]) {
|
|
82
|
+
if (this._activated) {
|
|
83
|
+
this.deactivate();
|
|
84
|
+
}
|
|
85
|
+
this._program.delete();
|
|
86
|
+
p[this._program.name] = null;
|
|
87
|
+
delete p[this._program.name];
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* Deactivate shader program. This is not necessary while activae function used.
|
|
93
|
+
* @public
|
|
94
|
+
*/
|
|
95
|
+
deactivate() {
|
|
96
|
+
this._program.disableAttribArrays();
|
|
97
|
+
this._activated = false;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Returns program activity.
|
|
102
|
+
* @public
|
|
103
|
+
* @return {boolean} -
|
|
104
|
+
*/
|
|
105
|
+
isActive() {
|
|
106
|
+
return this._activated;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* Sets program uniforms and attributes values and return controller instance.
|
|
111
|
+
* @public
|
|
112
|
+
* @param {Object} params - Object with variable name and value like { value: 12, someArray:[1,2,3], uSampler: texture,... }
|
|
113
|
+
* @return {ProgramController} -
|
|
114
|
+
*/
|
|
115
|
+
set(params) {
|
|
116
|
+
this.activate();
|
|
117
|
+
this._program.set(params);
|
|
118
|
+
return this;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* Draw index buffer with this program.
|
|
123
|
+
* @public
|
|
124
|
+
* @param {number} mode - Gl draw mode
|
|
125
|
+
* @param {WEBGLBuffer} buffer - Buffer to draw.
|
|
126
|
+
* @return {ProgramController} Returns current shader controller instance.
|
|
127
|
+
*/
|
|
128
|
+
drawIndexBuffer(mode, buffer) {
|
|
129
|
+
this._program.drawIndexBuffer(mode, buffer);
|
|
130
|
+
return this;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
/**
|
|
134
|
+
* Calls Gl drawArray function.
|
|
135
|
+
* @param {number} mode - Gl draw mode.
|
|
136
|
+
* @param {number} numItems - draw items count.
|
|
137
|
+
* @return {ProgramController} Returns current shader controller instance.
|
|
138
|
+
*/
|
|
139
|
+
drawArrays(mode, numItems) {
|
|
140
|
+
this._program.drawArrays(mode, numItems);
|
|
141
|
+
return this;
|
|
142
|
+
}
|
|
143
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export class Object3d {
|
|
2
|
+
static scale(vertices: any, s: any): void;
|
|
3
|
+
static centroid(vertices: any): number[];
|
|
4
|
+
static translate(vertices: any, v: any): void;
|
|
5
|
+
static getNormals(vertices: any): any[];
|
|
6
|
+
static createSphere(lonBands?: number, latBands?: number, radius?: number, offsetX?: number, offsetY?: number, offsetZ?: number): Object3d;
|
|
7
|
+
static createDisc(radius: number, height: number, radialSegments: number, isTop: boolean, startIndex: number, offsetX: number, offsetY: any, offsetZ?: number): Object3d;
|
|
8
|
+
static createCylinder(radiusTop?: number, radiusBottom?: number, height?: number, radialSegments?: number, heightSegments?: number, isTop?: boolean, isBottom?: boolean, offsetX?: number, offsetY?: number, offsetZ?: number): Object3d;
|
|
9
|
+
static createCube(length?: number, height?: number, depth?: number, xOffset?: number, yOffset?: number, zOffset?: number): Object3d;
|
|
10
|
+
constructor(data: any);
|
|
11
|
+
_name: any;
|
|
12
|
+
_vertices: any;
|
|
13
|
+
_texCoords: any[];
|
|
14
|
+
color: any[] | Float32Array;
|
|
15
|
+
_indexes: any;
|
|
16
|
+
_normals: any;
|
|
17
|
+
get name(): any;
|
|
18
|
+
get vertices(): any;
|
|
19
|
+
get normals(): any;
|
|
20
|
+
get indexes(): any;
|
|
21
|
+
}
|