@openglobus/og 0.11.1 → 0.11.6
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/package.json +18 -20
- package/src/og/Clock.js +11 -11
- package/src/og/Deferred.js +1 -1
- package/src/og/Events.js +9 -7
- package/src/og/Extent.js +117 -72
- package/src/og/Globe.js +35 -22
- package/src/og/ImageCanvas.js +24 -18
- package/src/og/Lock.js +2 -2
- package/src/og/LonLat.js +40 -37
- package/src/og/Popup.js +21 -15
- package/src/og/QueueArray.js +7 -3
- package/src/og/Rectangle.js +11 -6
- package/src/og/Stack.js +8 -5
- package/src/og/ajax.js +21 -33
- package/src/og/astro/astro.js +5 -5
- package/src/og/astro/earth.js +23 -17
- package/src/og/astro/jd.js +44 -39
- package/src/og/astro/orbit.js +20 -18
- package/src/og/astro/rotation.js +17 -8
- package/src/og/bv/Box.js +7 -3
- package/src/og/bv/Sphere.js +17 -9
- package/src/og/camera/Camera.js +137 -86
- package/src/og/camera/Frustum.js +30 -19
- package/src/og/camera/PlanetCamera.js +30 -26
- package/src/og/control/CompassButton.js +8 -2
- package/src/og/control/Control.js +13 -11
- package/src/og/control/DebugInfo.js +4 -1
- package/src/og/control/EarthCoordinates.js +62 -41
- package/src/og/control/EarthNavigation.js +20 -22
- package/src/og/control/GeoImageDragControl.js +1 -1
- package/src/og/control/KeyboardNavigation.js +12 -12
- package/src/og/control/LayerSwitcher.js +24 -23
- package/src/og/control/Lighting.js +1 -1
- package/src/og/control/MouseNavigation.js +1 -1
- package/src/og/control/ScaleControl.js +1 -1
- package/src/og/control/SegmentBoundVisualization.js +8 -9
- package/src/og/control/ShowFps.js +15 -10
- package/src/og/control/SimpleNavigation.js +8 -10
- package/src/og/control/Sun.js +25 -15
- package/src/og/control/ToggleWireframe.js +5 -5
- package/src/og/control/TouchNavigation.js +58 -45
- package/src/og/control/ZoomControl.js +41 -25
- package/src/og/control/index.js +4 -0
- package/src/og/ellipsoid/Ellipsoid.js +181 -85
- package/src/og/ellipsoid/wgs84.js +4 -4
- package/src/og/entity/BaseBillboard.js +97 -44
- package/src/og/entity/Billboard.js +15 -11
- package/src/og/entity/BillboardHandler.js +314 -64
- package/src/og/entity/Entity.js +106 -74
- package/src/og/entity/EntityCollection.js +72 -49
- package/src/og/entity/GeoObject.js +228 -0
- package/src/og/entity/GeoObjectHandler.js +910 -0
- package/src/og/entity/Geometry.js +29 -26
- package/src/og/entity/GeometryHandler.js +598 -126
- package/src/og/entity/Label.js +74 -40
- package/src/og/entity/LabelHandler.js +47 -246
- package/src/og/entity/LabelWorker.js +213 -0
- package/src/og/entity/Object3d.js +504 -0
- package/src/og/entity/PointCloud.js +81 -33
- package/src/og/entity/PointCloudHandler.js +9 -9
- package/src/og/entity/Polyline.js +39 -39
- package/src/og/entity/Ray.js +61 -28
- package/src/og/entity/ShapeHandler.js +1 -1
- package/src/og/entity/Strip.js +77 -48
- package/src/og/entity/StripHandler.js +27 -27
- package/src/og/entity/index.js +8 -16
- package/src/og/input/KeyboardHandler.js +107 -104
- package/src/og/input/MouseHandler.js +81 -78
- package/src/og/input/TouchHandler.js +55 -51
- package/src/og/layer/BaseGeoImage.js +61 -30
- package/src/og/layer/CanvasTiles.js +26 -24
- package/src/og/layer/GeoImage.js +10 -10
- package/src/og/layer/GeoTexture2d.js +1 -1
- package/src/og/layer/GeoVideo.js +3 -3
- package/src/og/layer/KML.js +66 -40
- package/src/og/layer/Layer.js +27 -17
- package/src/og/layer/Material.js +93 -61
- package/src/og/layer/Vector.js +118 -72
- package/src/og/layer/WMS.js +36 -19
- package/src/og/layer/XYZ.js +55 -48
- package/src/og/light/LightSource.js +47 -40
- package/src/og/math/Line2.js +24 -24
- package/src/og/math/Line3.js +103 -102
- package/src/og/math/Mat3.js +134 -121
- package/src/og/math/Mat4.js +603 -459
- package/src/og/math/Plane.js +21 -20
- package/src/og/math/Quat.js +980 -927
- package/src/og/math/Ray.js +195 -187
- package/src/og/math/Vec2.js +127 -117
- package/src/og/math/Vec3.js +206 -176
- package/src/og/math/Vec4.js +49 -53
- package/src/og/math/coder.js +18 -18
- package/src/og/math.js +12 -12
- package/src/og/mercator.js +11 -11
- package/src/og/proj/EPSG3857.js +4 -4
- package/src/og/proj/EPSG4326.js +4 -4
- package/src/og/proj/Proj.js +31 -31
- package/src/og/quadTree/EntityCollectionNode.js +310 -300
- package/src/og/quadTree/Node.js +1008 -993
- package/src/og/renderer/Renderer.js +768 -747
- package/src/og/renderer/RendererEvents.js +9 -6
- package/src/og/scene/Axes.js +1 -1
- package/src/og/scene/BaseNode.js +8 -9
- package/src/og/scene/Planet.js +115 -87
- package/src/og/scene/RenderNode.js +29 -22
- package/src/og/scene/SkyBox.js +1 -1
- package/src/og/segment/Segment.js +1886 -1878
- package/src/og/segment/SegmentLonLat.js +298 -268
- package/src/og/segment/segmentHelper.js +11 -11
- package/src/og/shaders/bloom.js +1 -1
- package/src/og/shaders/blur.js +2 -2
- package/src/og/shaders/depth.js +1 -1
- package/src/og/shaders/geoObject.js +211 -0
- package/src/og/shaders/label.js +1 -1
- package/src/og/shaders/lumFilter.js +1 -1
- package/src/og/shaders/pointCloud.js +42 -42
- package/src/og/shaders/screenFrame.js +1 -1
- package/src/og/shaders/shape.js +15 -21
- package/src/og/shaders/skybox.js +37 -37
- package/src/og/shaders/toneMapping.js +1 -1
- package/src/og/shapes/BaseShape.js +129 -57
- package/src/og/shapes/Icosphere.js +30 -15
- package/src/og/shapes/Sphere.js +13 -16
- package/src/og/terrain/BilTerrain.js +2 -1
- package/src/og/terrain/EmptyTerrain.js +2 -2
- package/src/og/terrain/Geoid.js +2 -2
- package/src/og/terrain/GlobusTerrain.js +10 -10
- package/src/og/terrain/MapboxTerrain.js +1 -1
- package/src/og/utils/GeoImageCreator.js +9 -9
- package/src/og/utils/Loader.js +6 -6
- package/src/og/utils/NormalMapCreator.js +13 -13
- package/src/og/utils/TerrainWorker.js +1 -1
- package/src/og/utils/TextureAtlas.js +20 -22
- package/src/og/utils/VectorTileCreator.js +5 -5
- package/src/og/utils/earcut.js +1 -1
- package/src/og/utils/shared.js +15 -15
- package/src/og/webgl/Framebuffer.js +101 -53
- package/src/og/webgl/Handler.js +125 -85
- package/src/og/webgl/Multisample.js +55 -27
- package/src/og/webgl/Program.js +80 -35
- package/src/og/webgl/ProgramController.js +27 -23
- package/src/og/webgl/callbacks.js +8 -8
- package/types/Clock.d.ts +6 -2
- package/types/Deferred.d.ts +1 -1
- package/types/Events.d.ts +8 -4
- package/types/Extent.d.ts +37 -33
- package/types/Globe.d.ts +15 -13
- package/types/ImageCanvas.d.ts +5 -3
- package/types/LonLat.d.ts +24 -24
- package/types/Popup.d.ts +4 -0
- package/types/QueueArray.d.ts +6 -2
- package/types/Rectangle.d.ts +10 -4
- package/types/Stack.d.ts +4 -0
- package/types/ajax.d.ts +1 -1
- package/types/astro/earth.d.ts +3 -2
- package/types/bv/Box.d.ts +10 -5
- package/types/bv/Sphere.d.ts +13 -7
- package/types/camera/Camera.d.ts +90 -81
- package/types/camera/Frustum.d.ts +26 -22
- package/types/camera/PlanetCamera.d.ts +49 -53
- package/types/control/CompassButton.d.ts +4 -4
- package/types/control/Control.d.ts +7 -4
- package/types/control/DebugInfo.d.ts +3 -4
- package/types/control/EarthCoordinates.d.ts +6 -6
- package/types/control/EarthNavigation.d.ts +42 -0
- package/types/control/KeyboardNavigation.d.ts +3 -4
- package/types/control/LayerSwitcher.d.ts +3 -5
- package/types/control/Lighting.d.ts +3 -3
- package/types/control/MouseNavigation.d.ts +47 -0
- package/types/control/ScaleControl.d.ts +3 -3
- package/types/control/ShowFps.d.ts +3 -4
- package/types/control/SimpleNavigation.d.ts +3 -6
- package/types/control/Sun.d.ts +8 -10
- package/types/control/ToggleWireframe.d.ts +3 -3
- package/types/control/TouchNavigation.d.ts +48 -0
- package/types/control/ZoomControl.d.ts +3 -4
- package/types/control/index.d.ts +3 -1
- package/types/ellipsoid/Ellipsoid.d.ts +47 -43
- package/types/ellipsoid/wgs84.d.ts +3 -2
- package/types/entity/BaseBillboard.d.ts +41 -34
- package/types/entity/Billboard.d.ts +7 -7
- package/types/entity/BillboardHandler.d.ts +4 -0
- package/types/entity/Entity.d.ts +101 -83
- package/types/entity/EntityCollection.d.ts +57 -43
- package/types/entity/GeoObject.d.ts +111 -0
- package/types/entity/GeoObjectHandler.d.ts +77 -0
- package/types/entity/Geometry.d.ts +9 -7
- package/types/entity/GeometryHandler.d.ts +2 -2
- package/types/entity/Label.d.ts +24 -29
- package/types/entity/LabelHandler.d.ts +9 -2
- package/types/entity/LabelWorker.d.ts +9 -0
- package/types/entity/PointCloud.d.ts +8 -8
- package/types/entity/PointCloudHandler.d.ts +3 -3
- package/types/entity/Polyline.d.ts +58 -55
- package/types/entity/Ray.d.ts +19 -18
- package/types/entity/Strip.d.ts +8 -7
- package/types/entity/StripHandler.d.ts +3 -3
- package/types/entity/index.d.ts +7 -7
- package/types/input/KeyboardHandler.d.ts +10 -0
- package/types/input/MouseHandler.d.ts +5 -0
- package/types/input/TouchHandler.d.ts +5 -0
- package/types/layer/BaseGeoImage.d.ts +23 -35
- package/types/layer/CanvasTiles.d.ts +15 -22
- package/types/layer/GeoImage.d.ts +5 -18
- package/types/layer/GeoVideo.d.ts +5 -30
- package/types/layer/KML.d.ts +20 -15
- package/types/layer/Layer.d.ts +326 -0
- package/types/layer/Material.d.ts +45 -0
- package/types/layer/Vector.d.ts +208 -0
- package/types/layer/WMS.d.ts +4 -7
- package/types/layer/XYZ.d.ts +19 -25
- package/types/light/LightSource.d.ts +54 -53
- package/types/math/Line2.d.ts +11 -0
- package/types/math/Line3.d.ts +10 -0
- package/types/math/Mat3.d.ts +30 -18
- package/types/math/Mat4.d.ts +71 -52
- package/types/math/Plane.d.ts +5 -4
- package/types/math/Quat.d.ts +379 -0
- package/types/math/Ray.d.ts +82 -0
- package/types/math/Vec2.d.ts +102 -101
- package/types/math/Vec3.d.ts +143 -142
- package/types/math/Vec4.d.ts +40 -39
- package/types/math/coder.d.ts +12 -11
- package/types/math.d.ts +8 -8
- package/types/mercator.d.ts +3 -3
- package/types/proj/EPSG3857.d.ts +3 -2
- package/types/proj/EPSG4326.d.ts +3 -2
- package/types/proj/Proj.d.ts +42 -0
- package/types/quadTree/EntityCollectionNode.d.ts +34 -0
- package/types/quadTree/Node.d.ts +61 -0
- package/types/renderer/Renderer.d.ts +300 -0
- package/types/renderer/RendererEvents.d.ts +10 -7
- package/types/scene/BaseNode.d.ts +9 -9
- package/types/scene/Planet.d.ts +131 -126
- package/types/scene/RenderNode.d.ts +22 -23
- package/types/segment/Segment.d.ts +279 -0
- package/types/segment/SegmentLonLat.d.ts +16 -0
- package/types/shaders/geoObject.d.ts +3 -0
- package/types/shapes/BaseShape.d.ts +43 -40
- package/types/shapes/Sphere.d.ts +7 -7
- package/types/terrain/BilTerrain.d.ts +0 -1
- package/types/terrain/EmptyTerrain.d.ts +4 -4
- package/types/terrain/GlobusTerrain.d.ts +17 -54
- package/types/terrain/MapboxTerrain.d.ts +0 -1
- package/types/utils/GeoImageCreator.d.ts +3 -2
- package/types/utils/TextureAtlas.d.ts +8 -8
- package/types/utils/shared.d.ts +25 -24
- package/types/webgl/Framebuffer.d.ts +5 -5
- package/types/webgl/Handler.d.ts +68 -43
- package/types/webgl/Multisample.d.ts +5 -5
- package/types/webgl/Program.d.ts +8 -2
- package/types/webgl/ProgramController.d.ts +18 -13
- package/src/og/inherits.js +0 -8
- package/src/og/utils/polylabel.js +0 -176
- package/types/inherits.d.ts +0 -4
package/types/layer/XYZ.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Represents an imagery tiles source provider.
|
|
3
3
|
* @class
|
|
4
|
-
* @extends {
|
|
4
|
+
* @extends {Layer}
|
|
5
5
|
* @param {string} name - Layer name.
|
|
6
6
|
* @param {Object} options:
|
|
7
7
|
* @param {number} [options.opacity=1.0] - Layer opacity.
|
|
8
|
-
* @param {Array.<number
|
|
8
|
+
* @param {Array.<number>} [options.transparentColor=[-1,-1,-1]] - RGB color that defines transparent color. (exactly 3 entries)
|
|
9
9
|
* @param {Array.<string>} [options.subdomains=['a','b','c']] - Subdomains of the tile service.
|
|
10
10
|
* @param {number} [options.minZoom=0] - Minimal visibility zoom level.
|
|
11
11
|
* @param {number} [options.maxZoom=0] - Maximal visibility zoom level.
|
|
@@ -16,7 +16,8 @@
|
|
|
16
16
|
* @param {boolean} [options.visibility=true] - Layer visibility.
|
|
17
17
|
* @param {string} [options.crossOrigin=true] - If true, all tiles will have their crossOrigin attribute set to ''.
|
|
18
18
|
* @param {string} options.url - Tile url source template(see example below).
|
|
19
|
-
* @param {
|
|
19
|
+
* @param {string} options.textureFilter - texture gl filter. NEAREST, LINEAR, MIPMAP, ANISOTROPHIC.
|
|
20
|
+
* @param {layer.XYZ~_urlRewriteCallback} options.urlRewrite - Url rewrite function.
|
|
20
21
|
* @fires og.layer.XYZ#load
|
|
21
22
|
* @fires og.layer.XYZ#loadend
|
|
22
23
|
*
|
|
@@ -28,9 +29,12 @@
|
|
|
28
29
|
* attribution: 'Data @ <a href="http://www.openstreetmap.org/">OpenStreetMap</a> contributors, <a href="http://www.openstreetmap.org/copyright">ODbL</a>'
|
|
29
30
|
* });
|
|
30
31
|
*/
|
|
31
|
-
export class XYZ {
|
|
32
|
-
|
|
33
|
-
|
|
32
|
+
export class XYZ extends Layer {
|
|
33
|
+
/**
|
|
34
|
+
* @param {string} name - Layer name.
|
|
35
|
+
* @param {*} options
|
|
36
|
+
*/
|
|
37
|
+
constructor(name: string, options: any);
|
|
34
38
|
/**
|
|
35
39
|
* Tile url source template.
|
|
36
40
|
* @public
|
|
@@ -61,23 +65,16 @@ export class XYZ {
|
|
|
61
65
|
* Rewrites imagery tile url query.
|
|
62
66
|
* @private
|
|
63
67
|
* @callback og.layer.XYZ~_urlRewriteCallback
|
|
64
|
-
* @param {
|
|
68
|
+
* @param {Segment} segment - Segment to load.
|
|
65
69
|
* @param {string} url - Created url.
|
|
66
70
|
* @returns {string} - Url query string.
|
|
67
71
|
*/
|
|
68
72
|
private _urlRewriteCallback;
|
|
69
|
-
get instanceName(): string;
|
|
70
73
|
/**
|
|
71
74
|
* Abort loading tiles.
|
|
72
75
|
* @public
|
|
73
76
|
*/
|
|
74
77
|
public abortLoading(): void;
|
|
75
|
-
/**
|
|
76
|
-
* Sets layer visibility.
|
|
77
|
-
* @public
|
|
78
|
-
* @param {boolean} visibility - Layer visibility.
|
|
79
|
-
*/
|
|
80
|
-
public setVisibility(visibility: boolean): void;
|
|
81
78
|
/**
|
|
82
79
|
* Sets imagery tiles url source template.
|
|
83
80
|
* @public
|
|
@@ -92,35 +89,32 @@ export class XYZ {
|
|
|
92
89
|
* Start to load tile material.
|
|
93
90
|
* @public
|
|
94
91
|
* @virtual
|
|
95
|
-
* @param {
|
|
92
|
+
* @param {Material} material - Loads current material.
|
|
96
93
|
*/
|
|
97
|
-
public loadMaterial(material:
|
|
94
|
+
public loadMaterial(material: Material, forceLoading: any): void;
|
|
98
95
|
/**
|
|
99
96
|
* Creates query url.
|
|
100
97
|
* @protected
|
|
101
98
|
* @virtual
|
|
102
|
-
* @param {
|
|
99
|
+
* @param {Segment} segment - Creates specific url for current segment.
|
|
103
100
|
* @returns {String} - Returns url string.
|
|
104
101
|
*/
|
|
105
|
-
protected _createUrl(segment:
|
|
102
|
+
protected _createUrl(segment: Segment): string;
|
|
106
103
|
_getSubdomain(): any;
|
|
107
104
|
/**
|
|
108
105
|
* Returns actual url query string.
|
|
109
106
|
* @protected
|
|
110
|
-
* @param {
|
|
107
|
+
* @param {Segment} segment - Segment that loads image data.
|
|
111
108
|
* @returns {string} - Url string.
|
|
112
109
|
*/
|
|
113
|
-
protected _getHTTPRequestString(segment:
|
|
110
|
+
protected _getHTTPRequestString(segment: Segment): string;
|
|
114
111
|
/**
|
|
115
112
|
* Sets url rewrite callback, used for custom url rewriting for every tile laoding.
|
|
116
113
|
* @public
|
|
117
|
-
* @param {
|
|
114
|
+
* @param {layer.XYZ~_urlRewriteCallback} ur - The callback that returns tile custom created url.
|
|
118
115
|
*/
|
|
119
116
|
public setUrlRewriteCallback(ur: any): void;
|
|
120
117
|
applyMaterial(material: any): any;
|
|
121
118
|
clearMaterial(material: any): void;
|
|
122
|
-
/**
|
|
123
|
-
* @protected
|
|
124
|
-
*/
|
|
125
|
-
protected _correctFullExtent(): void;
|
|
126
119
|
}
|
|
120
|
+
import { Layer } from "./Layer.js";
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
* @class
|
|
4
4
|
* @param {string} [name] - Light source name.
|
|
5
5
|
* @param {Object} [params] - Light parameters:
|
|
6
|
-
* @param {
|
|
7
|
-
* @param {
|
|
8
|
-
* @param {
|
|
9
|
-
* @param {
|
|
6
|
+
* @param {Vec3} [params.position] - Light source position if it is a point light, otherwise it is a light direction vector.
|
|
7
|
+
* @param {Vec3} [params.ambient] - Ambient RGB color.
|
|
8
|
+
* @param {Vec3} [params.diffuse] - Diffuse RGB color.
|
|
9
|
+
* @param {Vec3} [params.specular] - Specular RGB color.
|
|
10
10
|
* @param {number} [params.shininess] - Specular shininess.
|
|
11
11
|
*/
|
|
12
12
|
export class LightSource {
|
|
@@ -22,15 +22,15 @@ export class LightSource {
|
|
|
22
22
|
/**
|
|
23
23
|
* Render node where light is shines.
|
|
24
24
|
* @protected
|
|
25
|
-
* @type {
|
|
25
|
+
* @type {RenderNode}
|
|
26
26
|
*/
|
|
27
|
-
protected _renderNode:
|
|
27
|
+
protected _renderNode: RenderNode;
|
|
28
28
|
/**
|
|
29
29
|
* Light position.
|
|
30
30
|
* @protected
|
|
31
|
-
* @type {
|
|
31
|
+
* @type {Vec3}
|
|
32
32
|
*/
|
|
33
|
-
protected _position:
|
|
33
|
+
protected _position: Vec3;
|
|
34
34
|
/**
|
|
35
35
|
* True if the light is directional.
|
|
36
36
|
* @public
|
|
@@ -40,21 +40,21 @@ export class LightSource {
|
|
|
40
40
|
/**
|
|
41
41
|
* Ambient color.
|
|
42
42
|
* @protected
|
|
43
|
-
* @type {
|
|
43
|
+
* @type {Vec3}
|
|
44
44
|
*/
|
|
45
|
-
protected _ambient:
|
|
45
|
+
protected _ambient: Vec3;
|
|
46
46
|
/**
|
|
47
47
|
* Diffuse color.
|
|
48
48
|
* @protected
|
|
49
|
-
* @type {
|
|
49
|
+
* @type {Vec3}
|
|
50
50
|
*/
|
|
51
|
-
protected _diffuse:
|
|
51
|
+
protected _diffuse: Vec3;
|
|
52
52
|
/**
|
|
53
53
|
* Specular color.
|
|
54
54
|
* @protected
|
|
55
|
-
* @type {
|
|
55
|
+
* @type {Vec3}
|
|
56
56
|
*/
|
|
57
|
-
protected _specular:
|
|
57
|
+
protected _specular: Vec3;
|
|
58
58
|
/**
|
|
59
59
|
* Shininess.
|
|
60
60
|
* @protected
|
|
@@ -67,17 +67,17 @@ export class LightSource {
|
|
|
67
67
|
* @type {boolean}
|
|
68
68
|
*/
|
|
69
69
|
protected _active: boolean;
|
|
70
|
-
_tempAmbient:
|
|
71
|
-
_tempDiffuse:
|
|
72
|
-
_tempSpecular:
|
|
70
|
+
_tempAmbient: Vec3;
|
|
71
|
+
_tempDiffuse: Vec3;
|
|
72
|
+
_tempSpecular: Vec3;
|
|
73
73
|
_tempShininess: number;
|
|
74
74
|
/**
|
|
75
75
|
* Creates clone of the current light object.
|
|
76
76
|
* @todo: TODO
|
|
77
77
|
* @public
|
|
78
|
-
* @returns {
|
|
78
|
+
* @returns {LightSource}
|
|
79
79
|
*/
|
|
80
|
-
public clone():
|
|
80
|
+
public clone(): LightSource;
|
|
81
81
|
/**
|
|
82
82
|
* Set light activity. If activity is false the light doesn't shine.
|
|
83
83
|
* @public
|
|
@@ -93,85 +93,86 @@ export class LightSource {
|
|
|
93
93
|
/**
|
|
94
94
|
* Set light source position, or if it is a directional type sets light direction vector.
|
|
95
95
|
* @public
|
|
96
|
-
* @param {
|
|
97
|
-
* @returns {
|
|
96
|
+
* @param {Vec3} position - Light position or direction vector.
|
|
97
|
+
* @returns {LightSource}
|
|
98
98
|
*/
|
|
99
|
-
public setPosition3v(position:
|
|
99
|
+
public setPosition3v(position: Vec3): LightSource;
|
|
100
100
|
/**
|
|
101
101
|
* Set light source position, or if it is a directional type sets light direction vector.
|
|
102
102
|
* @public
|
|
103
|
-
* @param {
|
|
104
|
-
* @returns {
|
|
103
|
+
* @param {Vec3} position - Light position or direction vector.
|
|
104
|
+
* @returns {LightSource}
|
|
105
105
|
*/
|
|
106
|
-
public setPosition(x: any, y: any, z: any):
|
|
106
|
+
public setPosition(x: any, y: any, z: any): LightSource;
|
|
107
107
|
/**
|
|
108
108
|
* Returns light source position, or if it is a directional type sets light direction vector.
|
|
109
109
|
* @public
|
|
110
|
-
* @returns {
|
|
110
|
+
* @returns {Vec3} - Light source position/direction.
|
|
111
111
|
*/
|
|
112
|
-
public getPosition():
|
|
112
|
+
public getPosition(): Vec3;
|
|
113
113
|
/**
|
|
114
114
|
* Set ambient color.
|
|
115
115
|
* @public
|
|
116
|
-
* @param {
|
|
117
|
-
* @returns {
|
|
116
|
+
* @param {Vec3} rgb - Ambient color.
|
|
117
|
+
* @returns {LightSource}
|
|
118
118
|
*/
|
|
119
|
-
public setAmbient3v(rgb:
|
|
119
|
+
public setAmbient3v(rgb: Vec3): LightSource;
|
|
120
120
|
/**
|
|
121
121
|
* Set diffuse color.
|
|
122
122
|
* @public
|
|
123
|
-
* @param {
|
|
124
|
-
* @returns {
|
|
123
|
+
* @param {Vec3} rgb - Diffuse color.
|
|
124
|
+
* @returns {LightSource}
|
|
125
125
|
*/
|
|
126
|
-
public setDiffuse3v(rgb:
|
|
126
|
+
public setDiffuse3v(rgb: Vec3): LightSource;
|
|
127
127
|
/**
|
|
128
128
|
* Set specular color.
|
|
129
129
|
* @public
|
|
130
|
-
* @param {
|
|
131
|
-
* @returns {
|
|
130
|
+
* @param {Vec3} rgb - Specular color.
|
|
131
|
+
* @returns {LightSource}
|
|
132
132
|
*/
|
|
133
|
-
public setSpecular3v(rgb:
|
|
133
|
+
public setSpecular3v(rgb: Vec3): LightSource;
|
|
134
134
|
/**
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
public setAmbient(r: any, g: any, b: any):
|
|
135
|
+
* Set ambient color.
|
|
136
|
+
* @public
|
|
137
|
+
* @param {Vec3} rgb - Ambient color.
|
|
138
|
+
* @returns {LightSource}
|
|
139
|
+
*/
|
|
140
|
+
public setAmbient(r: any, g: any, b: any): LightSource;
|
|
141
141
|
/**
|
|
142
142
|
* Set diffuse color.
|
|
143
143
|
* @public
|
|
144
|
-
* @returns {
|
|
144
|
+
* @returns {LightSource}
|
|
145
145
|
*/
|
|
146
|
-
public setDiffuse(r: any, g: any, b: any):
|
|
146
|
+
public setDiffuse(r: any, g: any, b: any): LightSource;
|
|
147
147
|
/**
|
|
148
148
|
* Set specular color.
|
|
149
149
|
* @public
|
|
150
|
-
* @returns {
|
|
150
|
+
* @returns {LightSource}
|
|
151
151
|
*/
|
|
152
|
-
public setSpecular(r: any, g: any, b: any):
|
|
152
|
+
public setSpecular(r: any, g: any, b: any): LightSource;
|
|
153
153
|
/**
|
|
154
154
|
* Set material shininess.
|
|
155
155
|
* @public
|
|
156
|
-
* @returns {
|
|
156
|
+
* @returns {LightSource}
|
|
157
157
|
*/
|
|
158
|
-
public setShininess(shininess: any):
|
|
158
|
+
public setShininess(shininess: any): LightSource;
|
|
159
159
|
/**
|
|
160
160
|
* Sets light to black.
|
|
161
161
|
* @public
|
|
162
|
-
* @returns {
|
|
162
|
+
* @returns {LightSource}
|
|
163
163
|
*/
|
|
164
|
-
public setBlack():
|
|
164
|
+
public setBlack(): LightSource;
|
|
165
165
|
/**
|
|
166
166
|
* Adds current light to the render node scene.
|
|
167
167
|
* @public
|
|
168
|
-
* @param {
|
|
169
|
-
* @returns {
|
|
168
|
+
* @param {RenderNode} renderNode - Render node scene.
|
|
169
|
+
* @returns {LightSource}
|
|
170
170
|
*/
|
|
171
|
-
public addTo(renderNode:
|
|
171
|
+
public addTo(renderNode: RenderNode): LightSource;
|
|
172
172
|
/**
|
|
173
173
|
* Removes from render node scene.
|
|
174
174
|
* @public
|
|
175
175
|
*/
|
|
176
176
|
public remove(): void;
|
|
177
177
|
}
|
|
178
|
+
import { Vec3 } from "../math/Vec3.js";
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export class Line2 {
|
|
2
|
+
static get(p0: any, p1: any): Line2;
|
|
3
|
+
static getParallel(l: any, p: any): Line2;
|
|
4
|
+
static getIntersection(L0: any, L1: any): Vec2;
|
|
5
|
+
constructor(a: any, b: any, c: any);
|
|
6
|
+
a: any;
|
|
7
|
+
b: any;
|
|
8
|
+
c: any;
|
|
9
|
+
intersects(l: any): Vec2;
|
|
10
|
+
}
|
|
11
|
+
import { Vec2 } from "./Vec2.js";
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export class Line3 {
|
|
2
|
+
constructor(p0: any, p1: any);
|
|
3
|
+
p0: any;
|
|
4
|
+
p1: any;
|
|
5
|
+
getMagnitude(): any;
|
|
6
|
+
getSphereIntersection(sphere: any): Vec3 | Vec3[];
|
|
7
|
+
intersects(line: any, res: any, res2: any): boolean;
|
|
8
|
+
getNearestDistancePoint(point: any, res: any): boolean;
|
|
9
|
+
}
|
|
10
|
+
import { Vec3 } from "./Vec3.js";
|
package/types/math/Mat3.d.ts
CHANGED
|
@@ -1,53 +1,65 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Mat3 factory.
|
|
3
3
|
* @static
|
|
4
|
-
* @return {
|
|
4
|
+
* @return {Mat3}
|
|
5
|
+
*/
|
|
6
|
+
export function mat3(): Mat3;
|
|
7
|
+
/**
|
|
8
|
+
* Class represents a 3x3 matrix.
|
|
9
|
+
* @class
|
|
5
10
|
*/
|
|
6
|
-
export function mat3(): any;
|
|
7
11
|
export class Mat3 {
|
|
12
|
+
/**
|
|
13
|
+
* A 3x3 matrix, indexable as a column-major order array.
|
|
14
|
+
* @public
|
|
15
|
+
* @type {Array.<number>}
|
|
16
|
+
*/
|
|
17
|
+
public _m: Array<number>;
|
|
8
18
|
/**
|
|
9
19
|
* Sets column-major order array matrix.
|
|
10
20
|
* @public
|
|
11
21
|
* @param {Array.<number>} m - Matrix array.
|
|
12
|
-
* @returns {
|
|
22
|
+
* @returns {Mat3}
|
|
13
23
|
*/
|
|
14
|
-
public set(m: Array<number>):
|
|
24
|
+
public set(m: Array<number>): Mat3;
|
|
15
25
|
/**
|
|
16
26
|
* Duplicates a Mat3 instance.
|
|
17
27
|
* @public
|
|
18
|
-
* @returns {
|
|
28
|
+
* @returns {Mat3}
|
|
19
29
|
*/
|
|
20
|
-
public clone():
|
|
30
|
+
public clone(): Mat3;
|
|
21
31
|
/**
|
|
22
32
|
* Copy matrix.
|
|
23
33
|
* @public
|
|
24
|
-
* @param {
|
|
25
|
-
* @returns {
|
|
34
|
+
* @param {Mat3} a - Matrix to copy.
|
|
35
|
+
* @returns {Mat3}
|
|
26
36
|
*/
|
|
27
|
-
public copy(a:
|
|
37
|
+
public copy(a: Mat3): Mat3;
|
|
28
38
|
/**
|
|
29
39
|
* Creates trasposed matrix from the current.
|
|
30
40
|
* @public
|
|
31
|
-
* @returns {
|
|
41
|
+
* @returns {Mat3}
|
|
32
42
|
*/
|
|
33
|
-
public transposeTo():
|
|
43
|
+
public transposeTo(): Mat3;
|
|
34
44
|
/**
|
|
35
45
|
* Sets matrix to identity.
|
|
36
46
|
* @public
|
|
37
|
-
* @returns {
|
|
47
|
+
* @returns {Mat3}
|
|
38
48
|
*/
|
|
39
|
-
public setIdentity():
|
|
49
|
+
public setIdentity(): Mat3;
|
|
40
50
|
/**
|
|
41
51
|
* Multiply to 3d vector.
|
|
42
52
|
* @public
|
|
43
|
-
* @params {
|
|
44
|
-
* @returns {
|
|
53
|
+
* @params {Vec3} p - 3d vector.
|
|
54
|
+
* @returns {Vec3}
|
|
45
55
|
*/
|
|
46
|
-
public mulVec(p: any):
|
|
56
|
+
public mulVec(p: any): Vec3;
|
|
47
57
|
/**
|
|
48
58
|
* Converts to 4x4 matrix.
|
|
49
59
|
* @public
|
|
50
|
-
* @returns {
|
|
60
|
+
* @returns {Mat4}
|
|
51
61
|
*/
|
|
52
|
-
public toMatrix4():
|
|
62
|
+
public toMatrix4(): Mat4;
|
|
53
63
|
}
|
|
64
|
+
import { Vec3 } from "./Vec3.js";
|
|
65
|
+
import { Mat4 } from "./Mat4.js";
|
package/types/math/Mat4.d.ts
CHANGED
|
@@ -1,126 +1,142 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Mat4 factory.
|
|
3
3
|
* @static
|
|
4
|
-
* @returns {
|
|
4
|
+
* @returns {Mat4} -
|
|
5
|
+
*/
|
|
6
|
+
export function mat4(): Mat4;
|
|
7
|
+
/**
|
|
8
|
+
* Class represents a 4x4 matrix.
|
|
9
|
+
* @class
|
|
5
10
|
*/
|
|
6
|
-
export function mat4(): any;
|
|
7
11
|
export class Mat4 {
|
|
12
|
+
/**
|
|
13
|
+
* Returns identity matrix instance.
|
|
14
|
+
* @static
|
|
15
|
+
* @returns {Mat4} -
|
|
16
|
+
*/
|
|
17
|
+
static identity(): Mat4;
|
|
18
|
+
/**
|
|
19
|
+
* A 4x4 matrix, indexable as a column-major order array.
|
|
20
|
+
* @public
|
|
21
|
+
* @type {Array.<number>}
|
|
22
|
+
*/
|
|
23
|
+
public _m: Array<number>;
|
|
8
24
|
/**
|
|
9
25
|
* Sets column-major order array matrix.
|
|
10
26
|
* @public
|
|
11
27
|
* @param {Array.<number>} m - Matrix array.
|
|
12
|
-
* @returns {
|
|
28
|
+
* @returns {Mat4} -
|
|
13
29
|
*/
|
|
14
|
-
public set(m: Array<number>):
|
|
30
|
+
public set(m: Array<number>): Mat4;
|
|
15
31
|
/**
|
|
16
32
|
* Duplicates a Matrix3 instance.
|
|
17
33
|
* @public
|
|
18
|
-
* @returns {
|
|
34
|
+
* @returns {Mat4} -
|
|
19
35
|
*/
|
|
20
|
-
public clone():
|
|
36
|
+
public clone(): Mat4;
|
|
21
37
|
/**
|
|
22
38
|
* Copy matrix.
|
|
23
39
|
* @public
|
|
24
|
-
* @param {
|
|
40
|
+
* @param {Mat3} a - Matrix to copy.
|
|
25
41
|
*/
|
|
26
|
-
public copy(a:
|
|
42
|
+
public copy(a: Mat3): void;
|
|
27
43
|
/**
|
|
28
44
|
* Converts to 3x3 matrix.
|
|
29
45
|
* @public
|
|
30
|
-
* @returns {
|
|
46
|
+
* @returns {Mat3} -
|
|
31
47
|
*/
|
|
32
|
-
public toMatrix3():
|
|
48
|
+
public toMatrix3(): Mat3;
|
|
33
49
|
/**
|
|
34
50
|
* Multiply to 3d vector.
|
|
35
51
|
* @public
|
|
36
|
-
* @param {
|
|
37
|
-
* @returns {
|
|
52
|
+
* @param {Vec3} p - 3d vector.
|
|
53
|
+
* @returns {Vec3} -
|
|
38
54
|
*/
|
|
39
|
-
public mulVec3(p:
|
|
55
|
+
public mulVec3(p: Vec3): Vec3;
|
|
40
56
|
/**
|
|
41
57
|
* Multiply to 4d vector.
|
|
42
58
|
* @public
|
|
43
|
-
* @param {
|
|
44
|
-
* @returns {
|
|
59
|
+
* @param {Vec4} p - 4d vector.
|
|
60
|
+
* @returns {Vec4} -
|
|
45
61
|
*/
|
|
46
|
-
public mulVec4(p:
|
|
62
|
+
public mulVec4(p: Vec4): Vec4;
|
|
47
63
|
/**
|
|
48
64
|
* Creates an inversed 3x3 matrix of the current.
|
|
49
65
|
* @public
|
|
50
|
-
* @returns {
|
|
66
|
+
* @returns {Mat3} -
|
|
51
67
|
*/
|
|
52
|
-
public toInverseMatrix3():
|
|
68
|
+
public toInverseMatrix3(): Mat3;
|
|
53
69
|
/**
|
|
54
70
|
* Creates an inversed matrix of the current.
|
|
55
71
|
* @public
|
|
56
|
-
* @returns {
|
|
72
|
+
* @returns {Mat4} -
|
|
57
73
|
*/
|
|
58
|
-
public inverseTo(res: any):
|
|
74
|
+
public inverseTo(res: any): Mat4;
|
|
59
75
|
/**
|
|
60
76
|
* Creates a trasposed matrix of the current.
|
|
61
77
|
* @public
|
|
62
|
-
* @returns {
|
|
78
|
+
* @returns {Mat4} -
|
|
63
79
|
*/
|
|
64
|
-
public transposeTo():
|
|
80
|
+
public transposeTo(): Mat4;
|
|
65
81
|
/**
|
|
66
82
|
* Sets matrix to identity.
|
|
67
83
|
* @public
|
|
68
|
-
* @returns {
|
|
84
|
+
* @returns {Mat4} -
|
|
69
85
|
*/
|
|
70
|
-
public setIdentity():
|
|
86
|
+
public setIdentity(): Mat4;
|
|
71
87
|
/**
|
|
72
88
|
* Computes the product of two matrices.
|
|
73
89
|
* @public
|
|
74
|
-
* @param {
|
|
75
|
-
* @returns {
|
|
90
|
+
* @param {Mat4} mx - Matrix to multiply.
|
|
91
|
+
* @returns {Mat4} -
|
|
76
92
|
*/
|
|
77
|
-
public mul(mx:
|
|
93
|
+
public mul(mx: Mat4): Mat4;
|
|
78
94
|
/**
|
|
79
95
|
* Add translation vector to the current matrix.
|
|
80
96
|
* @public
|
|
81
|
-
* @param {
|
|
82
|
-
* @returns {
|
|
97
|
+
* @param {Vec3} v - Translate vector.
|
|
98
|
+
* @returns {Mat4} -
|
|
83
99
|
*/
|
|
84
|
-
public translate(v:
|
|
100
|
+
public translate(v: Vec3): Mat4;
|
|
85
101
|
/**
|
|
86
102
|
* Sets translation matrix to the position.
|
|
87
103
|
* @public
|
|
88
|
-
* @param {
|
|
89
|
-
* @returns {
|
|
104
|
+
* @param {Vec3} v - Translate to position.
|
|
105
|
+
* @returns {Mat4} -
|
|
90
106
|
*/
|
|
91
|
-
public translateToPosition(v:
|
|
107
|
+
public translateToPosition(v: Vec3): Mat4;
|
|
92
108
|
/**
|
|
93
109
|
* Rotate currrent matrix around the aligned axis and angle.
|
|
94
110
|
* @public
|
|
95
|
-
* @param {
|
|
111
|
+
* @param {Vec3} u - Aligned axis.
|
|
96
112
|
* @param {number} angle - Aligned axis angle in radians.
|
|
97
|
-
* @returns {
|
|
113
|
+
* @returns {Mat4} -
|
|
98
114
|
* @todo: OPTIMIZE: reveal multiplication
|
|
99
115
|
*/
|
|
100
|
-
public rotate(u:
|
|
116
|
+
public rotate(u: Vec3, angle: number): Mat4;
|
|
101
117
|
/**
|
|
102
118
|
* Sets current rotation matrix around the aligned axis and angle.
|
|
103
119
|
* @public
|
|
104
|
-
* @param {
|
|
120
|
+
* @param {Vec3} u - Aligned axis.
|
|
105
121
|
* @param {number} angle - Aligned axis angle in radians.
|
|
106
|
-
* @returns {
|
|
122
|
+
* @returns {Mat4} -
|
|
107
123
|
*/
|
|
108
|
-
public setRotation(u:
|
|
124
|
+
public setRotation(u: Vec3, angle: number): Mat4;
|
|
109
125
|
/**
|
|
110
126
|
* Gets the rotation matrix from one vector to another.
|
|
111
127
|
* @public
|
|
112
|
-
* @param {
|
|
113
|
-
* @param {
|
|
114
|
-
* @returns {
|
|
128
|
+
* @param {Vec3} a - Firtst vector.
|
|
129
|
+
* @param {Vec3} b - Second vector.
|
|
130
|
+
* @returns {Mat4} -
|
|
115
131
|
*/
|
|
116
|
-
public rotateBetweenVectors(a:
|
|
132
|
+
public rotateBetweenVectors(a: Vec3, b: Vec3): Mat4;
|
|
117
133
|
/**
|
|
118
134
|
* Scale current matrix to the vector values.
|
|
119
135
|
* @public
|
|
120
|
-
* @param {
|
|
121
|
-
* @returns {
|
|
136
|
+
* @param {Vec3} v - Scale vector.
|
|
137
|
+
* @returns {Mat4} -
|
|
122
138
|
*/
|
|
123
|
-
public scale(v:
|
|
139
|
+
public scale(v: Vec3): Mat4;
|
|
124
140
|
/**
|
|
125
141
|
* Sets perspective projection matrix frustum values.
|
|
126
142
|
* @public
|
|
@@ -130,9 +146,9 @@ export class Mat4 {
|
|
|
130
146
|
* @param {number} top -
|
|
131
147
|
* @param {number} near -
|
|
132
148
|
* @param {number} far -
|
|
133
|
-
* @returns {
|
|
149
|
+
* @returns {Mat4} -
|
|
134
150
|
*/
|
|
135
|
-
public setPerspective(left: number, right: number, bottom: number, top: number, near: number, far: number):
|
|
151
|
+
public setPerspective(left: number, right: number, bottom: number, top: number, near: number, far: number): Mat4;
|
|
136
152
|
/**
|
|
137
153
|
* Creates current orthographic projection matrix.
|
|
138
154
|
* @public
|
|
@@ -142,16 +158,19 @@ export class Mat4 {
|
|
|
142
158
|
* @param {number} top -
|
|
143
159
|
* @param {number} near -
|
|
144
160
|
* @param {number} far -
|
|
145
|
-
* @return {
|
|
161
|
+
* @return {Mat4} -
|
|
146
162
|
*/
|
|
147
|
-
public setOrtho(left: number, right: number, bottom: number, top: number, near: number, far: number):
|
|
163
|
+
public setOrtho(left: number, right: number, bottom: number, top: number, near: number, far: number): Mat4;
|
|
148
164
|
/**
|
|
149
165
|
* Sets current rotation matrix by euler's angles.
|
|
150
166
|
* @public
|
|
151
167
|
* @param {number} ax - Rotation angle in radians arond X axis.
|
|
152
168
|
* @param {number} ay - Rotation angle in radians arond Y axis.
|
|
153
169
|
* @param {number} az - Rotation angle in radians arond Z axis.
|
|
154
|
-
* @returns {
|
|
170
|
+
* @returns {Mat4} -
|
|
155
171
|
*/
|
|
156
|
-
public eulerToMatrix(ax: number, ay: number, az: number):
|
|
172
|
+
public eulerToMatrix(ax: number, ay: number, az: number): Mat4;
|
|
157
173
|
}
|
|
174
|
+
import { Mat3 } from "./Mat3.js";
|
|
175
|
+
import { Vec3 } from "./Vec3.js";
|
|
176
|
+
import { Vec4 } from "./Vec4.js";
|
package/types/math/Plane.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Plane class.
|
|
3
3
|
* @constructor
|
|
4
|
-
* @param {
|
|
5
|
-
* @param {
|
|
4
|
+
* @param {Vec3} [p] - Plane point.
|
|
5
|
+
* @param {Vec3} [n] - Planet normal.
|
|
6
6
|
*/
|
|
7
7
|
export class Plane {
|
|
8
8
|
constructor(p: any, n: any);
|
|
@@ -11,7 +11,8 @@ export class Plane {
|
|
|
11
11
|
set(p: any, n: any): void;
|
|
12
12
|
getNormal(): any;
|
|
13
13
|
distance(p: any): any;
|
|
14
|
-
getProjection(v: any, def: any):
|
|
14
|
+
getProjection(v: any, def: any): Vec3;
|
|
15
15
|
getProjectionPoint(p: any, vh: any): any;
|
|
16
|
-
getIntersection(Pn1: any, Pn2: any, L: any):
|
|
16
|
+
getIntersection(Pn1: any, Pn2: any, L: any): 0 | 1 | 2;
|
|
17
17
|
}
|
|
18
|
+
import { Vec3 } from "./Vec3.js";
|