nodes2ts 3.0.0 → 4.0.0

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 (80) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +102 -15
  3. package/dist/export.cjs +5331 -0
  4. package/dist/export.cjs.map +1 -0
  5. package/dist/export.d.cts +1838 -0
  6. package/dist/export.d.ts +1828 -20
  7. package/dist/export.js +5280 -62
  8. package/dist/export.js.map +1 -1
  9. package/package.json +34 -55
  10. package/.eslintignore +0 -3
  11. package/.eslintrc.cjs +0 -11
  12. package/.github/workflows/lint.js.yml +0 -22
  13. package/.github/workflows/node.js.yml +0 -22
  14. package/.mocharc.js +0 -7
  15. package/dist/Interval.d.ts +0 -24
  16. package/dist/Interval.js +0 -23
  17. package/dist/Interval.js.map +0 -1
  18. package/dist/MutableInteger.d.ts +0 -4
  19. package/dist/MutableInteger.js +0 -10
  20. package/dist/MutableInteger.js.map +0 -1
  21. package/dist/Platform.d.ts +0 -15
  22. package/dist/Platform.js +0 -53
  23. package/dist/Platform.js.map +0 -1
  24. package/dist/R1Interval.d.ts +0 -76
  25. package/dist/R1Interval.js +0 -158
  26. package/dist/R1Interval.js.map +0 -1
  27. package/dist/R2Vector.d.ts +0 -34
  28. package/dist/R2Vector.js +0 -131
  29. package/dist/R2Vector.js.map +0 -1
  30. package/dist/S1Angle.d.ts +0 -60
  31. package/dist/S1Angle.js +0 -133
  32. package/dist/S1Angle.js.map +0 -1
  33. package/dist/S1ChordAngle.d.ts +0 -166
  34. package/dist/S1ChordAngle.js +0 -318
  35. package/dist/S1ChordAngle.js.map +0 -1
  36. package/dist/S1Interval.d.ts +0 -109
  37. package/dist/S1Interval.js +0 -398
  38. package/dist/S1Interval.js.map +0 -1
  39. package/dist/S2.d.ts +0 -96
  40. package/dist/S2.js +0 -231
  41. package/dist/S2.js.map +0 -1
  42. package/dist/S2Cap.d.ts +0 -122
  43. package/dist/S2Cap.js +0 -399
  44. package/dist/S2Cap.js.map +0 -1
  45. package/dist/S2Cell.d.ts +0 -106
  46. package/dist/S2Cell.js +0 -358
  47. package/dist/S2Cell.js.map +0 -1
  48. package/dist/S2CellId.d.ts +0 -290
  49. package/dist/S2CellId.js +0 -983
  50. package/dist/S2CellId.js.map +0 -1
  51. package/dist/S2CellUnion.d.ts +0 -179
  52. package/dist/S2CellUnion.js +0 -523
  53. package/dist/S2CellUnion.js.map +0 -1
  54. package/dist/S2EdgeUtil.d.ts +0 -17
  55. package/dist/S2EdgeUtil.js +0 -785
  56. package/dist/S2EdgeUtil.js.map +0 -1
  57. package/dist/S2LatLng.d.ts +0 -77
  58. package/dist/S2LatLng.js +0 -186
  59. package/dist/S2LatLng.js.map +0 -1
  60. package/dist/S2LatLngRect.d.ts +0 -190
  61. package/dist/S2LatLngRect.js +0 -624
  62. package/dist/S2LatLngRect.js.map +0 -1
  63. package/dist/S2Metric.d.ts +0 -38
  64. package/dist/S2Metric.js +0 -79
  65. package/dist/S2Metric.js.map +0 -1
  66. package/dist/S2Point.d.ts +0 -78
  67. package/dist/S2Point.js +0 -250
  68. package/dist/S2Point.js.map +0 -1
  69. package/dist/S2Projections.d.ts +0 -102
  70. package/dist/S2Projections.js +0 -331
  71. package/dist/S2Projections.js.map +0 -1
  72. package/dist/S2Region.d.ts +0 -31
  73. package/dist/S2Region.js +0 -18
  74. package/dist/S2Region.js.map +0 -1
  75. package/dist/S2RegionCoverer.d.ts +0 -186
  76. package/dist/S2RegionCoverer.js +0 -471
  77. package/dist/S2RegionCoverer.js.map +0 -1
  78. package/dist/utils/preconditions.d.ts +0 -2
  79. package/dist/utils/preconditions.js +0 -16
  80. package/dist/utils/preconditions.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"S2EdgeUtil.js","sourceRoot":"","sources":["../src/S2EdgeUtil.ts"],"names":[],"mappings":"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"}
@@ -1,77 +0,0 @@
1
- import { S1Angle } from "./S1Angle";
2
- import { S2Point } from "./S2Point";
3
- /**
4
- * This class represents a point on the unit sphere as a pair of
5
- * latitude-longitude coordinates. Like the rest of the "geometry" package, the
6
- * intent is to represent spherical geometry as a mathematical abstraction, so
7
- * functions that are specifically related to the Earth's geometry (e.g.
8
- * easting/northing conversions) should be put elsewhere.
9
- *
10
- */
11
- export declare class S2LatLng {
12
- /**
13
- * Approximate "effective" radius of the Earth in meters.
14
- */
15
- static EARTH_RADIUS_METERS: number;
16
- /** The center point the lat/lng coordinate system. */
17
- static CENTER: S2LatLng;
18
- latRadians: number;
19
- lngRadians: number;
20
- constructor(latRadians: number, lngRadians: number);
21
- get latDegrees(): number;
22
- get lngDegrees(): number;
23
- /** Convert an S2LatLng to the equivalent unit-length vector (S2Point). */
24
- toPoint(): S2Point;
25
- /**
26
- * Returns a new S2LatLng based on this instance for which {@link #isValid()}
27
- * will be {@code true}.
28
- * <ul>
29
- * <li>Latitude is clipped to the range {@code [-90, 90]}
30
- * <li>Longitude is normalized to be in the range {@code [-180, 180]}
31
- * </ul>
32
- * <p>If the current point is valid then the returned point will have the same
33
- * coordinates.
34
- */
35
- normalized(): S2LatLng;
36
- static fromDegrees(latDegrees: number, lngDegrees: number): S2LatLng;
37
- static fromRadians(latRadians: number, lngRadians: number): S2LatLng;
38
- static fromPoint(p: S2Point): S2LatLng;
39
- /** Returns the latitude of this point as a new S1Angle. */
40
- lat(): S1Angle;
41
- /** Returns the longitude of this point as a new S1Angle. */
42
- lng(): S1Angle;
43
- /**
44
- * Return true if the latitude is between -90 and 90 degrees inclusive and the
45
- * longitude is between -180 and 180 degrees inclusive.
46
- */
47
- isValid(): boolean;
48
- /**
49
- * Scales this point by the given scaling factor.
50
- * Note that there is no guarantee that the new point will be <em>valid</em>.
51
- */
52
- mul(m: number): S2LatLng;
53
- static latitude(p: S2Point): S1Angle;
54
- static longitude(p: S2Point): S1Angle;
55
- equals(other: S2LatLng): boolean;
56
- pointAtDistance(distanceInKM: number, bearingRadians: number): S2LatLng;
57
- /**
58
- * Generates n LatLngs given a distance in km and the number of points wanted.
59
- * Generated points will be returned in a Clockwise order starting from North.
60
- * @param _distanceInKm
61
- * @param nPoints
62
- * @returns {S2LatLng[]}
63
- */
64
- pointsAtDistance(_distanceInKm: number, nPoints?: number): S2LatLng[];
65
- getEarthDistance(other: S2LatLng): number;
66
- getDistance(other: S2LatLng): S1Angle;
67
- toString(): string;
68
- toStringDegrees(): string;
69
- toGEOJSON(): {
70
- type: string;
71
- geometry: {
72
- type: string;
73
- coordinates: number[];
74
- };
75
- properties: {};
76
- };
77
- }
package/dist/S2LatLng.js DELETED
@@ -1,186 +0,0 @@
1
- "use strict";
2
- /*
3
- * Copyright 2005 Google Inc.
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License");
6
- * you may not use this file except in compliance with the License.
7
- * You may obtain a copy of the License at
8
- *
9
- * http://www.apache.org/licenses/LICENSE-2.0
10
- *
11
- * Unless required by applicable law or agreed to in writing, software
12
- * distributed under the License is distributed on an "AS IS" BASIS,
13
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- * See the License for the specific language governing permissions and
15
- * limitations under the License.
16
- */
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.S2LatLng = void 0;
19
- const S1Angle_1 = require("./S1Angle");
20
- const S2Point_1 = require("./S2Point");
21
- const S2_1 = require("./S2");
22
- const Platform_1 = require("./Platform");
23
- /**
24
- * This class represents a point on the unit sphere as a pair of
25
- * latitude-longitude coordinates. Like the rest of the "geometry" package, the
26
- * intent is to represent spherical geometry as a mathematical abstraction, so
27
- * functions that are specifically related to the Earth's geometry (e.g.
28
- * easting/northing conversions) should be put elsewhere.
29
- *
30
- */
31
- class S2LatLng {
32
- constructor(latRadians, lngRadians) {
33
- this.latRadians = latRadians;
34
- this.lngRadians = lngRadians;
35
- }
36
- get latDegrees() {
37
- return new S1Angle_1.S1Angle(this.latRadians).degrees();
38
- }
39
- get lngDegrees() {
40
- return new S1Angle_1.S1Angle(this.lngRadians).degrees();
41
- }
42
- // Clamps the latitude to the range [-90, 90] degrees, and adds or subtracts
43
- // a multiple of 360 degrees to the longitude if necessary to reduce it to
44
- // the range [-180, 180].
45
- /** Convert an S2LatLng to the equivalent unit-length vector (S2Point). */
46
- toPoint() {
47
- const phi = this.latRadians;
48
- const theta = this.lngRadians;
49
- const cosphi = Math.cos(phi);
50
- return new S2Point_1.S2Point(Math.cos(theta) * (cosphi), Math.sin(theta) * (cosphi), Math.sin(phi));
51
- }
52
- /**
53
- * Returns a new S2LatLng based on this instance for which {@link #isValid()}
54
- * will be {@code true}.
55
- * <ul>
56
- * <li>Latitude is clipped to the range {@code [-90, 90]}
57
- * <li>Longitude is normalized to be in the range {@code [-180, 180]}
58
- * </ul>
59
- * <p>If the current point is valid then the returned point will have the same
60
- * coordinates.
61
- */
62
- normalized() {
63
- // drem(x, 2 * S2.M_PI) reduces its argument to the range
64
- // [-S2.M_PI, Math.atan2PI] inclusive, which is what we want here.
65
- return new S2LatLng(Math.max(-S2_1.S2.M_PI_2, Math.min(S2_1.S2.M_PI_2, this.latRadians)), Platform_1.Platform.IEEEremainder(this.lngRadians, 2 * (S2_1.S2.M_PI)));
66
- }
67
- static fromDegrees(latDegrees, lngDegrees) {
68
- return new S2LatLng(S1Angle_1.S1Angle.degrees(latDegrees).radians, S1Angle_1.S1Angle.degrees(lngDegrees).radians);
69
- }
70
- static fromRadians(latRadians, lngRadians) {
71
- return new S2LatLng(latRadians, lngRadians);
72
- }
73
- static fromPoint(p) {
74
- return new S2LatLng(S2LatLng.latitude(p).radians, S2LatLng.longitude(p).radians);
75
- }
76
- /** Returns the latitude of this point as a new S1Angle. */
77
- lat() {
78
- return S1Angle_1.S1Angle.radians(this.latRadians);
79
- }
80
- /** Returns the longitude of this point as a new S1Angle. */
81
- lng() {
82
- return S1Angle_1.S1Angle.radians(this.lngRadians);
83
- }
84
- /**
85
- * Return true if the latitude is between -90 and 90 degrees inclusive and the
86
- * longitude is between -180 and 180 degrees inclusive.
87
- */
88
- isValid() {
89
- return Math.abs(this.latRadians) <= (S2_1.S2.M_PI_2) &&
90
- Math.abs(this.lngRadians) <= (S2_1.S2.M_PI);
91
- }
92
- /**
93
- * Scales this point by the given scaling factor.
94
- * Note that there is no guarantee that the new point will be <em>valid</em>.
95
- */
96
- mul(m) {
97
- return new S2LatLng(this.latRadians * (m), this.lngRadians * (m));
98
- }
99
- static latitude(p) {
100
- // We use atan2 rather than asin because the input vector is not necessarily
101
- // unit length, and atan2 is much more accurate than asin near the poles.
102
- return new S1Angle_1.S1Angle(Math.atan2(p.z, Math.sqrt(p.x * p.x + p.y * p.y)));
103
- }
104
- static longitude(p) {
105
- // Note that atan2(0, 0) is defined to be zero.
106
- return new S1Angle_1.S1Angle(Math.atan2(p.y, p.x));
107
- }
108
- equals(other) {
109
- return other.latRadians === this.latRadians && other.lngRadians === this.lngRadians;
110
- }
111
- pointAtDistance(distanceInKM, bearingRadians) {
112
- const distanceInM = distanceInKM * 1000;
113
- const distanceToRadius = distanceInM / (S2LatLng.EARTH_RADIUS_METERS);
114
- const newLat = Math.asin(Math.sin(this.latRadians) * Math.cos(distanceToRadius)
115
- + (Math.cos(this.latRadians) * Math.sin(distanceToRadius) * Math.cos(bearingRadians)));
116
- const newLng = this.lngRadians + Math.atan2(Math.sin(bearingRadians)
117
- * (Math.sin(distanceToRadius))
118
- * (Math.cos(this.latRadians)), Math.cos(distanceToRadius) - (Math.sin(this.latRadians) * Math.sin(newLat)));
119
- return new S2LatLng(newLat, newLng);
120
- }
121
- /**
122
- * Generates n LatLngs given a distance in km and the number of points wanted.
123
- * Generated points will be returned in a Clockwise order starting from North.
124
- * @param _distanceInKm
125
- * @param nPoints
126
- * @returns {S2LatLng[]}
127
- */
128
- pointsAtDistance(_distanceInKm, nPoints = 4) {
129
- return [...new Array(nPoints)] // create an array filled of undefined!
130
- .map((p, idx) => 360 / nPoints * idx)
131
- .map(bearingDegree => S1Angle_1.S1Angle.degrees(bearingDegree).radians)
132
- .map(bearingRadians => this.pointAtDistance(_distanceInKm, bearingRadians));
133
- }
134
- getEarthDistance(other) {
135
- return this.getDistance(other).radians * (S2LatLng.EARTH_RADIUS_METERS);
136
- }
137
- getDistance(other) {
138
- // This implements the Haversine formula, which is numerically stable for
139
- // small distances but only gets about 8 digits of precision for very large
140
- // distances (e.g. antipodal points). Note that 8 digits is still accurate
141
- // to within about 10cm for a sphere the size of the Earth.
142
- //
143
- // This could be fixed with another sin() and cos() below, but at that point
144
- // you might as well just convert both arguments to S2Points and compute the
145
- // distance that way (which gives about 15 digits of accuracy for all
146
- // distances).
147
- const lat1 = this.latRadians;
148
- const lat2 = other.latRadians;
149
- const lng1 = this.lngRadians;
150
- const lng2 = other.lngRadians;
151
- const dLat = Math.sin(0.5 * (lat2 - lat1));
152
- const dLng = Math.sin(0.5 * (lng2 - lng1));
153
- const x = dLat * dLat + dLng * dLng * Math.cos(lat1) * Math.cos(lat2);
154
- return S1Angle_1.S1Angle.radians(2 * Math.asin(Math.sqrt(Math.min(1.0, x))));
155
- // Return the distance (measured along the surface of the sphere) to the
156
- // given S2LatLng. This is mathematically equivalent to:
157
- //
158
- // S1Angle::FromRadians(ToPoint().Angle(o.ToPoint())
159
- //
160
- // but this implementation is slightly more efficient.
161
- }
162
- toString() {
163
- return "(" + this.latRadians + ", " + this.lngRadians + ")";
164
- }
165
- toStringDegrees() {
166
- return "(" + this.latDegrees + ", " + this.lngDegrees + ")";
167
- }
168
- toGEOJSON() {
169
- return {
170
- type: 'Feature',
171
- geometry: {
172
- type: "Point",
173
- coordinates: [this.lngDegrees, this.latDegrees]
174
- },
175
- properties: {}
176
- };
177
- }
178
- }
179
- exports.S2LatLng = S2LatLng;
180
- /**
181
- * Approximate "effective" radius of the Earth in meters.
182
- */
183
- S2LatLng.EARTH_RADIUS_METERS = 6367000.0;
184
- /** The center point the lat/lng coordinate system. */
185
- S2LatLng.CENTER = new S2LatLng(0.0, 0.0);
186
- //# sourceMappingURL=S2LatLng.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"S2LatLng.js","sourceRoot":"","sources":["../src/S2LatLng.ts"],"names":[],"mappings":"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"}
@@ -1,190 +0,0 @@
1
- import { S1Interval } from "./S1Interval";
2
- import { R1Interval } from "./R1Interval";
3
- import { S2LatLng } from "./S2LatLng";
4
- import { S2Region } from "./S2Region";
5
- import { S2Point } from "./S2Point";
6
- import { S1Angle } from "./S1Angle";
7
- import { S2Cell } from "./S2Cell";
8
- import { S2Cap } from "./S2Cap";
9
- export declare class S2LatLngRect implements S2Region {
10
- lat: R1Interval;
11
- lng: S1Interval;
12
- constructor(lat: R1Interval, lng: S1Interval);
13
- static fromLatLng(lo: S2LatLng, hi: S2LatLng): S2LatLngRect;
14
- /** The canonical empty rectangle */
15
- static empty(): S2LatLngRect;
16
- /** The canonical full rectangle. */
17
- static full(): S2LatLngRect;
18
- /** The full allowable range of latitudes. */
19
- static fullLat(): R1Interval;
20
- /**
21
- * Construct a rectangle from a center point (in lat-lng space) and size in
22
- * each dimension. If size.lng is greater than 360 degrees it is clamped,
23
- * and latitudes greater than +/- 90 degrees are also clamped. So for example,
24
- * FromCenterSize((80,170),(20,20)) -> (lo=(60,150),hi=(90,-170)).
25
- */
26
- static fromCenterSize(center: S2LatLng, size: S2LatLng): S2LatLngRect;
27
- /** Convenience method to construct a rectangle containing a single point. */
28
- static fromPoint(p: S2LatLng): S2LatLngRect;
29
- /**
30
- * Convenience method to construct the minimal bounding rectangle containing
31
- * the two given points. This is equivalent to starting with an empty
32
- * rectangle and calling AddPoint() twice. Note that it is different than the
33
- * S2LatLngRect(lo, hi) constructor, where the first point is always used as
34
- * the lower-left corner of the resulting rectangle.
35
- */
36
- static fromPointPair(p1: S2LatLng, p2: S2LatLng): S2LatLngRect;
37
- /**
38
- * Return a latitude-longitude rectangle that contains the edge from "a" to
39
- * "b". Both points must be unit-length. Note that the bounding rectangle of
40
- * an edge can be larger than the bounding rectangle of its endpoints.
41
- */
42
- static fromEdge(a: S2Point, b: S2Point): S2LatLngRect;
43
- /**
44
- * Return true if the rectangle is valid, which essentially just means that
45
- * the latitude bounds do not exceed Pi/2 in absolute value and the longitude
46
- * bounds do not exceed Pi in absolute value.
47
- *
48
- */
49
- isValid(): boolean;
50
- lo(): S2LatLng;
51
- hi(): S2LatLng;
52
- latLo(): S1Angle;
53
- latHi(): S1Angle;
54
- lngLo(): S1Angle;
55
- lngHi(): S1Angle;
56
- /**
57
- * Return true if the rectangle is empty, i.e. it contains no points at all.
58
- */
59
- isEmpty(): boolean;
60
- isFull(): boolean;
61
- /**
62
- * Return true if lng_.lo() > lng_.hi(), i.e. the rectangle crosses the 180
63
- * degree latitude line.
64
- */
65
- isInverted(): boolean;
66
- /** Return the k-th vertex of the rectangle (k = 0,1,2,3) in CCW order. */
67
- getVertex(k: number): S2LatLng;
68
- /**
69
- * Return the center of the rectangle in latitude-longitude space (in general
70
- * this is not the center of the region on the sphere).
71
- */
72
- getCenter(): S2LatLng;
73
- /**
74
- * Return the minimum distance (measured along the surface of the sphere)
75
- * from a given point to the rectangle (both its boundary and its interior).
76
- * The latLng must be valid.
77
- */
78
- getDistanceLL(p: S2LatLng): S1Angle;
79
- /**
80
- * Return the minimum distance (measured along the surface of the sphere) to
81
- * the given S2LatLngRect. Both S2LatLngRects must be non-empty.
82
- */
83
- getDistanceLLR(other: S2LatLngRect): S1Angle;
84
- /**
85
- * Return the width and height of this rectangle in latitude-longitude space.
86
- * Empty rectangles have a negative width and height.
87
- */
88
- getSize(): S2LatLng;
89
- /**
90
- * More efficient version of Contains() that accepts a S2LatLng rather than an
91
- * S2Point.
92
- */
93
- containsLL(ll: S2LatLng): boolean;
94
- /**
95
- * Return true if and only if the given point is contained in the interior of
96
- * the region (i.e. the region excluding its boundary). The point 'p' does not
97
- * need to be normalized.
98
- */
99
- interiorContainsP(p: S2Point): boolean;
100
- /**
101
- * More efficient version of InteriorContains() that accepts a S2LatLng rather
102
- * than an S2Point.
103
- */
104
- interiorContainsLL(ll: S2LatLng): boolean;
105
- /**
106
- * Return true if and only if the rectangle contains the given other
107
- * rectangle.
108
- */
109
- containsLLR(other: S2LatLngRect): boolean;
110
- /**
111
- * Return true if and only if the interior of this rectangle contains all
112
- * points of the given other rectangle (including its boundary).
113
- */
114
- interiorContainsLLR(other: S2LatLngRect): boolean;
115
- /** Return true if this rectangle and the given other rectangle have any
116
- points in common. */
117
- intersectsLLR(other: S2LatLngRect): boolean;
118
- /**
119
- * Returns true if this rectangle intersects the given cell. (This is an exact
120
- * test and may be fairly expensive, see also MayIntersect below.)
121
- */
122
- intersects(cell: S2Cell): boolean;
123
- /**
124
- * Return true if and only if the interior of this rectangle intersects any
125
- * point (including the boundary) of the given other rectangle.
126
- */
127
- interiorIntersects(other: S2LatLngRect): boolean;
128
- addPoint(p: S2Point): S2LatLngRect;
129
- addPointLL(ll: S2LatLng): S2LatLngRect;
130
- /**
131
- * Return a rectangle that contains all points whose latitude distance from
132
- * this rectangle is at most margin.lat, and whose longitude distance from
133
- * this rectangle is at most margin.lng. In particular, latitudes are
134
- * clamped while longitudes are wrapped. Note that any expansion of an empty
135
- * interval remains empty, and both components of the given margin must be
136
- * non-negative.
137
- *
138
- * NOTE: If you are trying to grow a rectangle by a certain *distance* on the
139
- * sphere (e.g. 5km), use the ConvolveWithCap() method instead.
140
- */
141
- expanded(margin: S2LatLng): S2LatLngRect;
142
- polarClosure(): S2LatLngRect;
143
- /**
144
- * Return the smallest rectangle containing the union of this rectangle and
145
- * the given rectangle.
146
- */
147
- union(other: S2LatLngRect): S2LatLngRect;
148
- /**
149
- * Return the smallest rectangle containing the intersection of this rectangle
150
- * and the given rectangle. Note that the region of intersection may consist
151
- * of two disjoint rectangles, in which case a single rectangle spanning both
152
- * of them is returned.
153
- */
154
- intersection(other: S2LatLngRect): S2LatLngRect;
155
- /** Return the surface area of this rectangle on the unit sphere. */
156
- area(): number;
157
- /** Return true if two rectangles contains the same set of points. */
158
- equals(that: any): boolean;
159
- /**
160
- * Return true if the latitude and longitude intervals of the two rectangles
161
- * are the same up to the given tolerance (see r1interval.h and s1interval.h
162
- * for details).
163
- */
164
- approxEquals(other: S2LatLngRect, maxError?: number): boolean;
165
- clone(): S2Region;
166
- getCapBound(): S2Cap;
167
- getRectBound(): S2LatLngRect;
168
- containsC(cell: S2Cell): boolean;
169
- /**
170
- * This test is cheap but is NOT exact. Use Intersects() if you want a more
171
- * accurate and more expensive test. Note that when this method is used by an
172
- * S2RegionCoverer, the accuracy isn't all that important since if a cell may
173
- * intersect the region then it is subdivided, and the accuracy of this method
174
- * goes up as the cells get smaller.
175
- */
176
- mayIntersectC(cell: S2Cell): boolean;
177
- /** The point 'p' does not need to be normalized. */
178
- containsP(p: S2Point): boolean;
179
- /**
180
- * Return true if the edge AB intersects the given edge of constant longitude.
181
- */
182
- private static intersectsLngEdge;
183
- /**
184
- * Return true if the edge AB intersects the given edge of constant latitude.
185
- */
186
- private static intersectsLatEdge;
187
- allVertex(): S2LatLng[];
188
- toGEOJSON(): any;
189
- toString(): string;
190
- }