@openglobus/og 0.10.4 → 0.11.1

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.
Files changed (172) hide show
  1. package/css/og.css +1 -1
  2. package/package.json +11 -9
  3. package/src/og/Extent.js +274 -273
  4. package/src/og/Globe.js +11 -3
  5. package/src/og/LonLat.js +152 -146
  6. package/src/og/Popup.js +2 -1
  7. package/src/og/camera/PlanetCamera.js +112 -38
  8. package/src/og/control/EarthNavigation.js +259 -0
  9. package/src/og/control/MouseNavigation.js +68 -40
  10. package/src/og/entity/EntityCollection.js +1 -1
  11. package/src/og/entity/LabelHandler.js +366 -74
  12. package/src/og/entity/Polyline.js +3 -2
  13. package/src/og/layer/CanvasTiles.js +32 -30
  14. package/src/og/layer/KML.js +159 -0
  15. package/src/og/layer/Vector.js +5 -0
  16. package/src/og/layer/index.js +2 -1
  17. package/src/og/math/Vec2.js +448 -448
  18. package/src/og/math/Vec3.js +759 -757
  19. package/src/og/math/Vec4.js +216 -215
  20. package/src/og/quadTree/Node.js +67 -13
  21. package/src/og/renderer/RendererEvents.js +21 -16
  22. package/src/og/scene/Planet.js +25 -10
  23. package/src/og/segment/Segment.js +3 -3
  24. package/src/og/segment/SegmentLonLat.js +7 -0
  25. package/src/og/terrain/GlobusTerrain.js +4 -0
  26. package/src/og/utils/FontAtlas.js +1 -0
  27. package/src/og/utils/GeoImageCreator.js +123 -121
  28. package/src/og/utils/Loader.js +81 -80
  29. package/src/og/utils/NormalMapCreator.js +320 -318
  30. package/src/og/utils/VectorTileCreator.js +251 -250
  31. package/src/og/webgl/Framebuffer.js +265 -264
  32. package/src/og/webgl/Handler.js +1022 -1001
  33. package/src/og/webgl/Multisample.js +169 -168
  34. package/src/og/webgl/ProgramController.js +113 -112
  35. package/types/Clock.d.ts +90 -0
  36. package/types/Deferred.d.ts +6 -0
  37. package/types/Events.d.ts +73 -0
  38. package/types/Extent.d.ts +162 -0
  39. package/types/Globe.d.ts +80 -0
  40. package/types/ImageCanvas.d.ts +121 -0
  41. package/types/Lock.d.ts +12 -0
  42. package/types/LonLat.d.ts +108 -0
  43. package/types/Popup.d.ts +38 -0
  44. package/types/QueueArray.d.ts +15 -0
  45. package/types/Rectangle.d.ts +74 -0
  46. package/types/Stack.d.ts +15 -0
  47. package/types/ajax.d.ts +24 -0
  48. package/types/arial.d.ts +48 -0
  49. package/types/astro/astro.d.ts +38 -0
  50. package/types/astro/earth.d.ts +6 -0
  51. package/types/astro/jd.d.ts +254 -0
  52. package/types/bv/Box.d.ts +25 -0
  53. package/types/bv/Sphere.d.ts +32 -0
  54. package/types/bv/index.d.ts +3 -0
  55. package/types/camera/Camera.d.ts +303 -0
  56. package/types/camera/Frustum.d.ts +129 -0
  57. package/types/camera/PlanetCamera.d.ts +222 -0
  58. package/types/camera/index.d.ts +3 -0
  59. package/types/cons.d.ts +40 -0
  60. package/types/control/CompassButton.d.ts +17 -0
  61. package/types/control/Control.d.ts +101 -0
  62. package/types/control/DebugInfo.d.ts +16 -0
  63. package/types/control/EarthCoordinates.d.ts +47 -0
  64. package/types/control/GeoImageDragControl.d.ts +6 -0
  65. package/types/control/KeyboardNavigation.d.ts +22 -0
  66. package/types/control/LayerSwitcher.d.ts +23 -0
  67. package/types/control/Lighting.d.ts +16 -0
  68. package/types/control/ScaleControl.d.ts +22 -0
  69. package/types/control/ShowFps.d.ts +12 -0
  70. package/types/control/SimpleNavigation.d.ts +28 -0
  71. package/types/control/Sun.d.ts +52 -0
  72. package/types/control/ToggleWireframe.d.ts +12 -0
  73. package/types/control/ZoomControl.d.ts +28 -0
  74. package/types/control/index.d.ts +15 -0
  75. package/types/ellipsoid/Ellipsoid.d.ts +142 -0
  76. package/types/ellipsoid/index.d.ts +3 -0
  77. package/types/ellipsoid/wgs84.d.ts +5 -0
  78. package/types/entity/BaseBillboard.d.ts +208 -0
  79. package/types/entity/Billboard.d.ts +94 -0
  80. package/types/entity/BillboardHandler.d.ts +74 -0
  81. package/types/entity/Entity.d.ts +330 -0
  82. package/types/entity/EntityCollection.d.ts +303 -0
  83. package/types/entity/Geometry.d.ts +72 -0
  84. package/types/entity/GeometryHandler.d.ts +76 -0
  85. package/types/entity/Label.d.ts +194 -0
  86. package/types/entity/LabelHandler.d.ts +24 -0
  87. package/types/entity/PointCloud.d.ts +174 -0
  88. package/types/entity/PointCloudHandler.d.ts +38 -0
  89. package/types/entity/Polyline.d.ts +303 -0
  90. package/types/entity/PolylineHandler.d.ts +18 -0
  91. package/types/entity/Ray.d.ts +123 -0
  92. package/types/entity/RayHandler.d.ts +67 -0
  93. package/types/entity/ShapeHandler.d.ts +22 -0
  94. package/types/entity/Strip.d.ts +118 -0
  95. package/types/entity/StripHandler.d.ts +38 -0
  96. package/types/entity/index.d.ts +8 -0
  97. package/types/index.core.d.ts +65 -0
  98. package/types/index.d.ts +45 -0
  99. package/types/index.webgl.d.ts +7 -0
  100. package/types/inherits.d.ts +4 -0
  101. package/types/input/input.d.ts +34 -0
  102. package/types/layer/BaseGeoImage.d.ts +106 -0
  103. package/types/layer/CanvasTiles.d.ts +75 -0
  104. package/types/layer/GeoImage.d.ts +65 -0
  105. package/types/layer/GeoTexture2d.d.ts +8 -0
  106. package/types/layer/GeoVideo.d.ts +80 -0
  107. package/types/layer/KML.d.ts +58 -0
  108. package/types/layer/WMS.d.ts +66 -0
  109. package/types/layer/XYZ.d.ts +126 -0
  110. package/types/layer/index.d.ts +10 -0
  111. package/types/light/LightSource.d.ts +177 -0
  112. package/types/math/Mat3.d.ts +53 -0
  113. package/types/math/Mat4.d.ts +157 -0
  114. package/types/math/Plane.d.ts +17 -0
  115. package/types/math/Vec2.d.ts +308 -0
  116. package/types/math/Vec3.d.ts +459 -0
  117. package/types/math/Vec4.d.ts +161 -0
  118. package/types/math/coder.d.ts +42 -0
  119. package/types/math/index.d.ts +11 -0
  120. package/types/math.d.ts +261 -0
  121. package/types/mercator.d.ts +92 -0
  122. package/types/proj/EPSG3857.d.ts +5 -0
  123. package/types/proj/EPSG4326.d.ts +5 -0
  124. package/types/quadTree/quadTree.d.ts +40 -0
  125. package/types/renderer/RendererEvents.d.ts +230 -0
  126. package/types/res/images.d.ts +3 -0
  127. package/types/scene/Axes.d.ts +11 -0
  128. package/types/scene/BaseNode.d.ts +60 -0
  129. package/types/scene/Planet.d.ts +572 -0
  130. package/types/scene/RenderNode.d.ts +143 -0
  131. package/types/scene/SkyBox.d.ts +10 -0
  132. package/types/scene/index.d.ts +4 -0
  133. package/types/segment/segmentHelper.d.ts +13 -0
  134. package/types/shaders/billboard.d.ts +3 -0
  135. package/types/shaders/depth.d.ts +2 -0
  136. package/types/shaders/drawnode.d.ts +7 -0
  137. package/types/shaders/label.d.ts +4 -0
  138. package/types/shaders/pointCloud.d.ts +2 -0
  139. package/types/shaders/polyline.d.ts +3 -0
  140. package/types/shaders/ray.d.ts +2 -0
  141. package/types/shaders/screenFrame.d.ts +2 -0
  142. package/types/shaders/shape.d.ts +4 -0
  143. package/types/shaders/skybox.d.ts +2 -0
  144. package/types/shaders/toneMapping.d.ts +2 -0
  145. package/types/shapes/BaseShape.d.ts +247 -0
  146. package/types/shapes/Sphere.d.ts +41 -0
  147. package/types/terrain/BilTerrain.d.ts +8 -0
  148. package/types/terrain/EmptyTerrain.d.ts +72 -0
  149. package/types/terrain/Geoid.d.ts +26 -0
  150. package/types/terrain/GlobusTerrain.d.ts +153 -0
  151. package/types/terrain/MapboxTerrain.d.ts +8 -0
  152. package/types/terrain/index.d.ts +5 -0
  153. package/types/utils/FontAtlas.d.ts +14 -0
  154. package/types/utils/GeoImageCreator.d.ts +29 -0
  155. package/types/utils/ImagesCacheManager.d.ts +10 -0
  156. package/types/utils/Loader.d.ts +25 -0
  157. package/types/utils/NormalMapCreator.d.ts +39 -0
  158. package/types/utils/PlainSegmentWorker.d.ts +10 -0
  159. package/types/utils/TerrainWorker.d.ts +9 -0
  160. package/types/utils/TextureAtlas.d.ts +111 -0
  161. package/types/utils/VectorTileCreator.d.ts +16 -0
  162. package/types/utils/colorTable.d.ts +143 -0
  163. package/types/utils/earcut.d.ts +6 -0
  164. package/types/utils/shared.d.ts +230 -0
  165. package/types/webgl/Framebuffer.d.ts +135 -0
  166. package/types/webgl/Handler.d.ts +372 -0
  167. package/types/webgl/Multisample.d.ts +89 -0
  168. package/types/webgl/Program.d.ts +155 -0
  169. package/types/webgl/ProgramController.d.ts +84 -0
  170. package/types/webgl/callbacks.d.ts +1 -0
  171. package/types/webgl/index.d.ts +6 -0
  172. package/types/webgl/types.d.ts +2 -0
@@ -0,0 +1,157 @@
1
+ /**
2
+ * Mat4 factory.
3
+ * @static
4
+ * @returns {og.Mat4} -
5
+ */
6
+ export function mat4(): any;
7
+ export class Mat4 {
8
+ /**
9
+ * Sets column-major order array matrix.
10
+ * @public
11
+ * @param {Array.<number>} m - Matrix array.
12
+ * @returns {og.Mat4} -
13
+ */
14
+ public set(m: Array<number>): any;
15
+ /**
16
+ * Duplicates a Matrix3 instance.
17
+ * @public
18
+ * @returns {og.Mat4} -
19
+ */
20
+ public clone(): any;
21
+ /**
22
+ * Copy matrix.
23
+ * @public
24
+ * @param {og.Mat3} a - Matrix to copy.
25
+ */
26
+ public copy(a: any): void;
27
+ /**
28
+ * Converts to 3x3 matrix.
29
+ * @public
30
+ * @returns {og.Mat3} -
31
+ */
32
+ public toMatrix3(): any;
33
+ /**
34
+ * Multiply to 3d vector.
35
+ * @public
36
+ * @param {og.Vec3} p - 3d vector.
37
+ * @returns {og.Vec3} -
38
+ */
39
+ public mulVec3(p: any): any;
40
+ /**
41
+ * Multiply to 4d vector.
42
+ * @public
43
+ * @param {og.Vec4} p - 4d vector.
44
+ * @returns {og.Vec4} -
45
+ */
46
+ public mulVec4(p: any): any;
47
+ /**
48
+ * Creates an inversed 3x3 matrix of the current.
49
+ * @public
50
+ * @returns {og.Mat3} -
51
+ */
52
+ public toInverseMatrix3(): any;
53
+ /**
54
+ * Creates an inversed matrix of the current.
55
+ * @public
56
+ * @returns {og.Mat4} -
57
+ */
58
+ public inverseTo(res: any): any;
59
+ /**
60
+ * Creates a trasposed matrix of the current.
61
+ * @public
62
+ * @returns {og.Mat4} -
63
+ */
64
+ public transposeTo(): any;
65
+ /**
66
+ * Sets matrix to identity.
67
+ * @public
68
+ * @returns {og.Mat4} -
69
+ */
70
+ public setIdentity(): any;
71
+ /**
72
+ * Computes the product of two matrices.
73
+ * @public
74
+ * @param {og.Mat4} mx - Matrix to multiply.
75
+ * @returns {og.Mat4} -
76
+ */
77
+ public mul(mx: any): any;
78
+ /**
79
+ * Add translation vector to the current matrix.
80
+ * @public
81
+ * @param {og.Vec3} v - Translate vector.
82
+ * @returns {og.Mat4} -
83
+ */
84
+ public translate(v: any): any;
85
+ /**
86
+ * Sets translation matrix to the position.
87
+ * @public
88
+ * @param {og.Vec3} v - Translate to position.
89
+ * @returns {og.Mat4} -
90
+ */
91
+ public translateToPosition(v: any): any;
92
+ /**
93
+ * Rotate currrent matrix around the aligned axis and angle.
94
+ * @public
95
+ * @param {og.Vec3} u - Aligned axis.
96
+ * @param {number} angle - Aligned axis angle in radians.
97
+ * @returns {og.Mat4} -
98
+ * @todo: OPTIMIZE: reveal multiplication
99
+ */
100
+ public rotate(u: any, angle: number): any;
101
+ /**
102
+ * Sets current rotation matrix around the aligned axis and angle.
103
+ * @public
104
+ * @param {og.Vec3} u - Aligned axis.
105
+ * @param {number} angle - Aligned axis angle in radians.
106
+ * @returns {og.Mat4} -
107
+ */
108
+ public setRotation(u: any, angle: number): any;
109
+ /**
110
+ * Gets the rotation matrix from one vector to another.
111
+ * @public
112
+ * @param {og.Vec3} a - Firtst vector.
113
+ * @param {og.Vec3} b - Second vector.
114
+ * @returns {og.Mat4} -
115
+ */
116
+ public rotateBetweenVectors(a: any, b: any): any;
117
+ /**
118
+ * Scale current matrix to the vector values.
119
+ * @public
120
+ * @param {og.Vec3} v - Scale vector.
121
+ * @returns {og.Mat4} -
122
+ */
123
+ public scale(v: any): any;
124
+ /**
125
+ * Sets perspective projection matrix frustum values.
126
+ * @public
127
+ * @param {number} left -
128
+ * @param {number} right -
129
+ * @param {number} bottom -
130
+ * @param {number} top -
131
+ * @param {number} near -
132
+ * @param {number} far -
133
+ * @returns {og.Mat4} -
134
+ */
135
+ public setPerspective(left: number, right: number, bottom: number, top: number, near: number, far: number): any;
136
+ /**
137
+ * Creates current orthographic projection matrix.
138
+ * @public
139
+ * @param {number} left -
140
+ * @param {number} right -
141
+ * @param {number} bottom -
142
+ * @param {number} top -
143
+ * @param {number} near -
144
+ * @param {number} far -
145
+ * @return {og.Mat4} -
146
+ */
147
+ public setOrtho(left: number, right: number, bottom: number, top: number, near: number, far: number): any;
148
+ /**
149
+ * Sets current rotation matrix by euler's angles.
150
+ * @public
151
+ * @param {number} ax - Rotation angle in radians arond X axis.
152
+ * @param {number} ay - Rotation angle in radians arond Y axis.
153
+ * @param {number} az - Rotation angle in radians arond Z axis.
154
+ * @returns {og.Mat4} -
155
+ */
156
+ public eulerToMatrix(ax: number, ay: number, az: number): any;
157
+ }
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Plane class.
3
+ * @constructor
4
+ * @param {og.Vec3} [p] - Plane point.
5
+ * @param {og.Vec3} [n] - Planet normal.
6
+ */
7
+ export class Plane {
8
+ constructor(p: any, n: any);
9
+ p: any;
10
+ n: any;
11
+ set(p: any, n: any): void;
12
+ getNormal(): any;
13
+ distance(p: any): any;
14
+ getProjection(v: any, def: any): any;
15
+ getProjectionPoint(p: any, vh: any): any;
16
+ getIntersection(Pn1: any, Pn2: any, L: any): 1 | 0 | 2;
17
+ }
@@ -0,0 +1,308 @@
1
+ /**
2
+ * Vector 2d object creator.
3
+ * @function
4
+ * @param {number} [x] - First cvalue.
5
+ * @param {number} [y] - Second value.
6
+ * @returns {og.math.Vec2}
7
+ */
8
+ export function vec2(x?: number, y?: number): any;
9
+ /**
10
+ * Class represents a 3d vector.
11
+ * @class
12
+ * @param {number} [x] - First value.
13
+ * @param {number} [y] - Second value.
14
+ */
15
+ export class Vec2 {
16
+ /** @const */
17
+ static get UP(): Vec2;
18
+ /** @const */
19
+ static get DOWN(): Vec2;
20
+ /** @const */
21
+ static get RIGHT(): Vec2;
22
+ /** @const */
23
+ static get LEFT(): Vec2;
24
+ /** @const */
25
+ static get ZERO(): Vec2;
26
+ /**
27
+ * Returns summary vector.
28
+ * @static
29
+ * @param {og.math.Vec2} a - First vector.
30
+ * @param {og.math.Vec2} b - Second vector.
31
+ * @returns {og.math.Vec2} - Summary vector.
32
+ */
33
+ static add(a: any, b: any): any;
34
+ /**
35
+ * Returns two vectors subtraction.
36
+ * @static
37
+ * @param {og.math.Vec2} a - First vector.
38
+ * @param {og.math.Vec2} b - Second vector.
39
+ * @returns {og.math.Vec2} - Vectors subtraction.
40
+ */
41
+ static sub(a: any, b: any): any;
42
+ /**
43
+ * Returns scaled vector.
44
+ * @static
45
+ * @param {og.math.Vec2} a - Input vector.
46
+ * @param {number} scale - Scale value.
47
+ * @returns {og.math.Vec2}
48
+ */
49
+ static scale(a: any, scale: number): any;
50
+ /**
51
+ * Returns two vectors production.
52
+ * @static
53
+ * @param {og.math.Vec2} a - First vector.
54
+ * @param {og.math.Vec2} b - Second vector.
55
+ * @returns {og.math.Vec2}
56
+ */
57
+ static mul(a: any, b: any): any;
58
+ /**
59
+ * Returns vector components division product one to another.
60
+ * @static
61
+ * @param {og.math.Vec2} a - First vector.
62
+ * @param {og.math.Vec2} b - Second vector.
63
+ * @returns {og.math.Vec2}
64
+ */
65
+ static div(a: any, b: any): any;
66
+ /**
67
+ * Get projection of the first vector to the second.
68
+ * @static
69
+ * @param {og.math.Vec2} b - First vector.
70
+ * @param {og.math.Vec2} a - Second vector.
71
+ * @returns {og.math.Vec2}
72
+ */
73
+ static proj_b_to_a(b: any, a: any): any;
74
+ /**
75
+ * Gets angle between two vectors.
76
+ * @static
77
+ * @param {og.math.Vec2} a - First vector.
78
+ * @param {og.math.Vec2} b - Second vector.
79
+ * @returns {number}
80
+ */
81
+ static angle(a: any, b: any): number;
82
+ /**
83
+ * Makes vectors normalized and orthogonal to each other.
84
+ * @static
85
+ * @param {og.math.Vec2} normal - Normal vector.
86
+ * @param {og.math.Vec2} tangent - Tangent vector.
87
+ * @returns {og.math.Vec2}
88
+ */
89
+ static orthoNormalize(normal: any, tangent: any): any;
90
+ static get LERP_DELTA(): number;
91
+ constructor(x: any, y: any);
92
+ /**
93
+ * @public
94
+ * @type {number}
95
+ */
96
+ public x: number;
97
+ /**
98
+ * @public
99
+ * @type {number}
100
+ */
101
+ public y: number;
102
+ /**
103
+ * Converts to 3d vector, third value is 0.0.
104
+ * @public
105
+ * @returns {og.Vec3}
106
+ */
107
+ public toVector3(): any;
108
+ /**
109
+ * Returns clone vector.
110
+ * @public
111
+ * @returns {og.math.Vec2}
112
+ */
113
+ public clone(): any;
114
+ /**
115
+ * Compares with vector. Returns true if it equals another.
116
+ * @public
117
+ * @param {og.math.Vec2} p - Vector to compare.
118
+ * @returns {boolean}
119
+ */
120
+ public equal(p: any): boolean;
121
+ /**
122
+ * Copy input vector's values.
123
+ * @param {og.math.Vec2} point2 - Vector to copy.
124
+ * @returns {og.math.Vec2}
125
+ */
126
+ copy(point2: any): any;
127
+ /**
128
+ * Gets vector's length.
129
+ * @public
130
+ * @returns {number}
131
+ */
132
+ public length(): number;
133
+ /**
134
+ * Returns squared vector's length.
135
+ * @public
136
+ * @returns {number}
137
+ */
138
+ public length2(): number;
139
+ /**
140
+ * Adds vector to the current.
141
+ * @public
142
+ * @param {og.math.Vec2}
143
+ * @returns {og.math.Vec2}
144
+ */
145
+ public addA(v: any): any;
146
+ /**
147
+ * Summarize two vectors.
148
+ * @public
149
+ * @param {og.math.Vec2}
150
+ * @returns {og.math.Vec2}
151
+ */
152
+ public add(v: any): any;
153
+ /**
154
+ * Subtract vector from the current where results saved on the current instance.
155
+ * @public
156
+ * @param {og.math.Vec2} v - Subtract vector.
157
+ * @returns {og.math.Vec2}
158
+ */
159
+ public subA(v: any): any;
160
+ /**
161
+ * Subtract vector from the current.
162
+ * @public
163
+ * @param {og.math.Vec2} v - Subtract vector.
164
+ * @returns {og.math.Vec2}
165
+ */
166
+ public sub(v: any): any;
167
+ /**
168
+ * Scale current vector.
169
+ * @public
170
+ * @param {number} scale - Scale value.
171
+ * @returns {og.math.Vec2}
172
+ */
173
+ public scale(scale: number): any;
174
+ /**
175
+ * Scale current vector to another instance.
176
+ * @public
177
+ * @param {number} scale - Scale value.
178
+ * @returns {og.math.Vec2}
179
+ */
180
+ public scaleTo(scale: number): any;
181
+ /**
182
+ * Multiply current vector object to another and store result in the current instance.
183
+ * @public
184
+ * @param {og.math.Vec2} vec - Multiply vector.
185
+ * @returns {og.math.Vec2}
186
+ */
187
+ public mulA(vec: any): any;
188
+ /**
189
+ * Multiply current vector object to another and returns new vector instance.
190
+ * @public
191
+ * @param {og.math.Vec2} vec - Multiply vector.
192
+ * @returns {og.math.Vec2}
193
+ */
194
+ public mul(vec: any): any;
195
+ /**
196
+ * Divide current vector's components to another. Results stores in the current vector object.
197
+ * @public
198
+ * @param {og.math.Vec2}
199
+ * @returns {og.math.Vec2}
200
+ */
201
+ public divA(vec: any): any;
202
+ /**
203
+ * Gets vectors dot production.
204
+ * @public
205
+ * @param {og.math.Vec2} v - Another vector.
206
+ * @returns {number}
207
+ */
208
+ public dot(v: any): number;
209
+ /**
210
+ * Gets vectors dot production.
211
+ * @public
212
+ * @param {Array.<number,number>} arr - Array vector.
213
+ * @returns {number}
214
+ */
215
+ public dotArr(arr: Array<number, number>): number;
216
+ /**
217
+ * Gets vectors cross production.
218
+ * @public
219
+ * @param {og.math.Vec2} v - Another vector.
220
+ * @returns {og.math.Vec2}
221
+ */
222
+ public cross(v: any): any;
223
+ /**
224
+ * Sets vector to zero.
225
+ * @public
226
+ * @returns {og.math.Vec2}
227
+ */
228
+ public clear(): any;
229
+ /**
230
+ * Returns normalized vector.
231
+ * @public
232
+ * @returns {og.math.Vec2}
233
+ */
234
+ public normal(): any;
235
+ /**
236
+ * Normalize current vector.
237
+ * @public
238
+ * @returns {og.math.Vec2}
239
+ */
240
+ public normalize(): any;
241
+ /**
242
+ * Converts vector to a number array.
243
+ * @public
244
+ * @returns {Array.<number,number>}
245
+ */
246
+ public toVec(): Array<number, number>;
247
+ /**
248
+ * Gets distance to point.
249
+ * @public
250
+ * @param {og.math.Vec2} p - Distant point.
251
+ * @returns {number}
252
+ */
253
+ public distance(p: any): number;
254
+ /**
255
+ * Sets vector's values.
256
+ * @public
257
+ * @param {number} x - Value X.
258
+ * @param {number} y - Value Y.
259
+ * @returns {og.math.Vec2}
260
+ */
261
+ public set(x: number, y: number): any;
262
+ /**
263
+ * Negate current vector.
264
+ * @public
265
+ * @returns {og.math.Vec2}
266
+ */
267
+ public negate(): any;
268
+ /**
269
+ * Negate current vector to another instance.
270
+ * @public
271
+ * @returns {og.math.Vec2}
272
+ */
273
+ public negateTo(): any;
274
+ /**
275
+ * Gets projected point coordinates of the current vector on the ray.
276
+ * @public
277
+ * @param {og.math.Vec2} pos - Ray position.
278
+ * @param {og.math.Vec2} direction - Ray direction.
279
+ * @returns {og.math.Vec2}
280
+ */
281
+ public projToRay(pos: any, direction: any): any;
282
+ /**
283
+ * Gets angle between two vectors.
284
+ * @public
285
+ * @param {og.math.Vec2} a - Another vector.
286
+ * @returns {number}
287
+ */
288
+ public angle(a: any): number;
289
+ /**
290
+ * Returns two vectors linear interpolation.
291
+ * @public
292
+ * @param {og.math.Vec2} v2 - End vector.
293
+ * @param {number} l - Interpolate value.
294
+ * @returns {og.math.Vec2}
295
+ */
296
+ public lerp(v1: any, v2: any, l: number): any;
297
+ /**
298
+ * Spherically interpolates between two vectors.
299
+ * Interpolates between current and v2 vector by amount t. The difference between this and linear interpolation (aka, "lerp") is that
300
+ * the vectors are treated as directions rather than points in space. The direction of the returned vector is interpolated
301
+ * by the angle and its magnitude is interpolated between the magnitudes of from and to.
302
+ * @public
303
+ * @param {og.math.Vec2} v2 -
304
+ * @param {number} t - The parameter t is clamped to the range [0, 1].
305
+ * @returns {og.math.Vec2}
306
+ */
307
+ public slerp(v2: any, t: number): any;
308
+ }