Home
last modified time | relevance | path

Searched refs:S2Point (Results 1 – 25 of 33) sorted by relevance

12

/external/s2-geometry-library-java/tests/com/google/common/geometry/
DS2EdgeUtilTest.java39 private void assertCrossing(S2Point a, in assertCrossing()
40 S2Point b, in assertCrossing()
41 S2Point c, in assertCrossing()
42 S2Point d, in assertCrossing()
46 a = S2Point.normalize(a); in assertCrossing()
47 b = S2Point.normalize(b); in assertCrossing()
48 c = S2Point.normalize(c); in assertCrossing()
49 d = S2Point.normalize(d); in assertCrossing()
64 private void assertCrossings(S2Point a, in assertCrossings()
65 S2Point b, in assertCrossings()
[all …]
DS2PolylineTest.java37 List<S2Point> vertices = Lists.newArrayList(); in testBasic()
50 S2Point x = randomPoint(); in testGetLengthCentroid()
51 S2Point y = S2Point.normalize(S2Point.crossProd(x, randomPoint())); in testGetLengthCentroid()
52 S2Point z = S2Point.normalize(S2Point.crossProd(x, y)); in testGetLengthCentroid()
54 List<S2Point> vertices = Lists.newArrayList(); in testGetLengthCentroid()
56 S2Point p = S2Point.add(S2Point.mul(x, Math.cos(theta)), S2Point.mul(y, Math.sin(theta))); in testGetLengthCentroid()
70 List<S2Point> vertices = Lists.newArrayList();
71 vertices.add(S2Point.normalize(new S2Point(1, -1.1, 0.8)));
72 vertices.add(S2Point.normalize(new S2Point(1, -0.8, 1.1)));
81 List<S2Point> vertices = Lists.newArrayList();
[all …]
DS2Test.java70 S2Point sum = new S2Point(); in testFaceUVtoXYZ()
72 S2Point center = S2Projections.faceUvToXyz(face, 0, 0); in testFaceUVtoXYZ()
75 sum = S2Point.add(sum, S2Point.fabs(center)); in testFaceUVtoXYZ()
77 assertEquals(sum, new S2Point(2, 2, 2)); in testFaceUVtoXYZ()
82 S2Point.crossProd(S2Projections.getUAxis(face), S2Projections.getVAxis(face)).dotProd( in testFaceUVtoXYZ()
103 S2Point.crossProd( in testUVNorms()
107 S2Point.crossProd( in testUVNorms()
117 assertEquals(S2Projections.getUAxis(face), S2Point.sub( in testUVAxes()
119 assertEquals(S2Projections.getVAxis(face), S2Point.sub( in testUVAxes()
125 S2Point pz = new S2Point(0, 0, 1); in testAngleArea()
[all …]
DS2LoopTest.java113 S2Point mid = S2Point.mul(S2Point.add(arctic80.vertex(0), arctic80.vertex(1)), 0.5); in testBounds()
131 S2Point x = randomPoint(); in testAreaCentroid()
132 S2Point y = S2Point.normalize(S2Point.crossProd(x, randomPoint())); in testAreaCentroid()
133 S2Point z = S2Point.normalize(S2Point.crossProd(x, y)); in testAreaCentroid()
150 List<S2Point> vertices = Lists.newArrayList(); in testAreaCentroid()
153 S2Point xCosThetaCosPhi = S2Point.mul(x, (Math.cos(theta) * Math.cos(phi))); in testAreaCentroid()
154 S2Point ySinThetaCosPhi = S2Point.mul(y, (Math.sin(theta) * Math.cos(phi))); in testAreaCentroid()
155 S2Point zSinPhi = S2Point.mul(z, Math.sin(phi)); in testAreaCentroid()
157 S2Point sum = S2Point.add(S2Point.add(xCosThetaCosPhi, ySinThetaCosPhi), zSinPhi); in testAreaCentroid()
166 S2Point centroid = loop.getCentroid(); in testAreaCentroid()
[all …]
DGeometryTestCase.java48 public S2Point randomPoint() {
49 return S2Point.normalize(new S2Point(
59 public ImmutableList<S2Point> getRandomFrame() {
60 S2Point p0 = randomPoint();
61 S2Point p1 = S2Point.normalize(S2Point.crossProd(p0, randomPoint()));
62 S2Point p2 = S2Point.normalize(S2Point.crossProd(p0, p1));
143 S2Point samplePoint(S2Cap cap) {
147 S2Point z = cap.axis();
148 S2Point x = z.ortho();
149 S2Point y = S2Point.crossProd(z, x);
[all …]
DS2CapTest.java20 public S2Point getLatLngPoint(double latDegrees, double lngDegrees) { in getLatLngPoint()
49 S2Cap xaxis = S2Cap.fromAxisHeight(new S2Point(1, 0, 0), 0); in testBasic()
50 assertTrue(xaxis.contains(new S2Point(1, 0, 0))); in testBasic()
51 assertTrue(!xaxis.contains(new S2Point(1, 1e-20, 0))); in testBasic()
55 S2Cap yaxis = S2Cap.fromAxisAngle(new S2Point(0, 1, 0), S1Angle.radians(0)); in testBasic()
75 S2Cap.fromAxisAngle(S2Point.normalize(new S2Point(1, 2, 3)), S1Angle.radians(kTinyRad)); in testBasic()
76 S2Point tangent = S2Point.normalize(S2Point.crossProd(tiny.axis(), new S2Point(3, 2, 1))); in testBasic()
77 assertTrue(tiny.contains(S2Point.add(tiny.axis(), S2Point.mul(tangent, 0.99 * kTinyRad)))); in testBasic()
78 assertTrue(!tiny.contains(S2Point.add(tiny.axis(), S2Point.mul(tangent, 1.01 * kTinyRad)))); in testBasic()
81 S2Cap hemi = S2Cap.fromAxisHeight(S2Point.normalize(new S2Point(1, 0, 1)), 1); in testBasic()
[all …]
DS2PolygonBuilderTest.java242 S2Point x, in getVertices()
243 S2Point y, in getVertices()
244 S2Point z, in getVertices()
246 List<S2Point> vertices) { in getVertices()
253 S2Point p = line.vertex(i); in getVertices()
255 S2Point axis = S2Point.normalize( in getVertices()
256 S2Point.add(S2Point.add(S2Point.mul(x, p.x), S2Point.mul(y, p.y)), S2Point.mul(z, p.z))); in getVertices()
307 S2Point p = loop.vertex(j); in findMissingLoops()
316 S2Point x, in addChain()
317 S2Point y, in addChain()
[all …]
DS2EdgeIndexTest.java48 protected S2Point edgeFrom(int index) { in edgeFrom()
53 protected S2Point edgeTo(int index) { in edgeTo()
63 S2Point edgeCenter = samplePoint(cap); in randomEdgeCrossingCap()
67 S2Point p1 = samplePoint(edgeCap); in randomEdgeCrossingCap()
68 S2Point p2 = samplePoint(edgeCap); in randomEdgeCrossingCap()
153 List<S2Point> ps = Lists.newArrayList(); in testSpecificEdges()
154 ps.add(new S2Point(0.8088625416501157, -0.40633615485481134, 0.4250086092929434)); in testSpecificEdges()
155 ps.add(new S2Point(0.8088939911085784, -0.40631384442755236, 0.4249700824469155)); in testSpecificEdges()
156 ps.add(new S2Point(0.8088088971141814, -0.40642839367135375, 0.425022503835579)); in testSpecificEdges()
157 ps.add(new S2Point(0.8088643962606756, -0.406333410696549, 0.4250077032402616)); in testSpecificEdges()
[all …]
DS2CellTest.java28 Map<S2Point, Integer> edgeCounts = new HashMap<S2Point, Integer>(); in testFaces()
29 Map<S2Point, Integer> vertexCounts = new HashMap<S2Point, Integer>(); in testFaces()
56 assertDoubleNear(S2Point.normalize( in testFaces()
57 S2Point.crossProd(cell.getVertexRaw(k), cell in testFaces()
125 S2Point mid = S2Point.add(cell.getVertexRaw(i), cell in gatherStats()
135 S2Point.neg(cell.getEdgeRaw(i ^ 2))); in gatherStats()
212 if (cell.contains(new S2Point(0, 0, 1)) in testSubdivide()
213 || cell.contains(new S2Point(0, 0, -1))) { in testSubdivide()
272 S2Point center = S2Projections.getNorm(children[i].face()); in testSubdivide()
273 S2Point edge = S2Point.add(center, S2Projections.getUAxis(children[i].face())); in testSubdivide()
[all …]
DS2LatLngRectTest.java116 assertTrue(r1.contains(new S2Point(0.5, -0.3, 0.1))); in testBasic()
117 assertTrue(!r1.contains(new S2Point(0.5, 0.2, 0.1))); in testBasic()
172 p = p.addPoint(new S2Point(0, 0, 1)); in testBasic()
200 .getCapBound().approxEquals(S2Cap.fromAxisHeight(new S2Point(1, 0, 0), 0.5))); in testBasic()
203 .getCapBound().approxEquals(S2Cap.fromAxisAngle(new S2Point(0, 0, 1), S1Angle.degrees(2)))); in testBasic()
208 .approxEquals(S2Cap.fromAxisAngle(new S2Point(0, 0, -1), S1Angle.degrees(80)))); in testBasic()
240 S2Cell cell0tr = new S2Cell(new S2Point(1 + 1e-12, 1, 1)); in testBasic()
406 S2Point lng_edge_a[][] = in bruteForceDistance()
408 S2Point lng_edge_b[][] = in bruteForceDistance()
473 S2Point.normalize(new S2Point(x1, y1, z1)), S2Point.normalize(new S2Point(x2, y2, z2))); in getEdgeBound()
/external/s2-geometry-library-java/src/com/google/common/geometry/
DS2.java229 public static S2Point origin() { in origin()
230 return new S2Point(0, 1, 0); in origin()
237 public static boolean isUnitLength(S2Point p) { in isUnitLength()
248 public static boolean simpleCrossing(S2Point a, S2Point b, S2Point c, S2Point d) { in simpleCrossing()
256 S2Point ab = S2Point.crossProd(a, b); in simpleCrossing()
257 S2Point cd = S2Point.crossProd(c, d); in simpleCrossing()
278 public static S2Point robustCrossProd(S2Point a, S2Point b) { in robustCrossProd()
289 S2Point x = S2Point.crossProd(S2Point.add(b, a), S2Point.sub(b, a)); in robustCrossProd()
290 if (!x.equals(new S2Point(0, 0, 0))) { in robustCrossProd()
303 public static S2Point ortho(S2Point a) { in ortho()
[all …]
DS2EdgeUtil.java49 private final S2Point a;
50 private final S2Point b;
51 private final S2Point aCrossB;
56 private S2Point c;
65 public EdgeCrosser(S2Point a, S2Point b, S2Point c) { in EdgeCrosser()
68 this.aCrossB = S2Point.crossProd(a, b); in EdgeCrosser()
75 public void restartAt(S2Point c) { in restartAt()
88 public int robustCrossing(S2Point d) { in robustCrossing()
125 public boolean edgeOrVertexCrossing(S2Point d) { in edgeOrVertexCrossing()
127 S2Point c2 = new S2Point(c.get(0), c.get(1), c.get(2)); in edgeOrVertexCrossing()
[all …]
DS2Point.java24 public strictfp class S2Point implements Comparable<S2Point> { class
30 public S2Point() { in S2Point() method in S2Point
34 public S2Point(double x, double y, double z) { in S2Point() method in S2Point
40 public static S2Point minus(S2Point p1, S2Point p2) { in minus()
44 public static S2Point neg(S2Point p) { in neg()
45 return new S2Point(-p.x, -p.y, -p.z); in neg()
56 public static S2Point crossProd(final S2Point p1, final S2Point p2) { in crossProd()
57 return new S2Point( in crossProd()
61 public static S2Point add(final S2Point p1, final S2Point p2) { in add()
62 return new S2Point(p1.x + p2.x, p1.y + p2.y, p1.z + p2.z); in add()
[all …]
DS2Projections.java271 public static S2Point faceUvToXyz(int face, double u, double v) { in faceUvToXyz()
274 return new S2Point(1, u, v); in faceUvToXyz()
276 return new S2Point(-u, 1, v); in faceUvToXyz()
278 return new S2Point(-u, -v, 1); in faceUvToXyz()
280 return new S2Point(-1, -v, -u); in faceUvToXyz()
282 return new S2Point(v, -1, -u); in faceUvToXyz()
284 return new S2Point(v, u, -1); in faceUvToXyz()
288 public static R2Vector validFaceXyzToUv(int face, S2Point p) { in validFaceXyzToUv()
321 public static int xyzToFace(S2Point p) { in xyzToFace()
329 public static R2Vector faceXyzToUv(int face, S2Point p) { in faceXyzToUv()
[all …]
DS2PolygonBuilder.java68 private Map<S2Point, Multiset<S2Point>> edges;
225 public void addEdge(S2Point v0, S2Point v1) { in addEdge()
234 Multiset<S2Point> candidates = edges.get(v1); in addEdge()
242 edges.put(v0, HashMultiset.<S2Point>create()); in addEdge()
248 edges.put(v1, HashMultiset.<S2Point>create()); in addEdge()
311 Map.Entry<S2Point, Multiset<S2Point>> edge = edges.entrySet().iterator().next(); in assembleLoops()
313 S2Point v0 = edge.getKey(); in assembleLoops()
314 S2Point v1 = edge.getValue().iterator().next(); in assembleLoops()
389 protected void dumpEdges(S2Point v0) { in dumpEdges()
391 Multiset<S2Point> vset = edges.get(v0); in dumpEdges()
[all …]
DS2EdgeIndex.java110 S2Point from = edgeFrom(i); in computeIndex()
111 S2Point to = edgeTo(i); in computeIndex()
221 protected abstract S2Point edgeFrom(int index); in edgeFrom()
223 protected abstract S2Point edgeTo(int index); in edgeTo()
232 protected void findCandidateCrossings(S2Point a, S2Point b, List<Integer> candidateCrossings) { in findCandidateCrossings()
256 private static S2CellId containingCell(S2Point pa, S2Point pb, S2Point pc, S2Point pd) { in containingCell()
279 private static S2CellId containingCell(S2Point pa, S2Point pb) { in containingCell()
306 S2Point a, S2Point b, boolean thickenEdge, ArrayList<S2CellId> edgeCovering) { in getCovering()
328 S2Point pq = S2Point.mul(S2Point.minus(b, a), THICKENING); in getCovering()
329 S2Point ortho = in getCovering()
[all …]
DS2Cap.java42 private final S2Point axis;
48 axis = new S2Point(); in S2Cap()
52 private S2Cap(S2Point axis, double height) { in S2Cap()
63 public static S2Cap fromAxisHeight(S2Point axis, double height) { in fromAxisHeight()
73 public static S2Cap fromAxisAngle(S2Point axis, S1Angle angle) { in fromAxisAngle()
88 public static S2Cap fromAxisArea(S2Point axis, double area) { in fromAxisArea()
95 return new S2Cap(new S2Point(1, 0, 0), -1); in empty()
100 return new S2Cap(new S2Point(1, 0, 0), 2); in full()
105 public S2Point axis() { in axis()
159 return S2Cap.fromAxisHeight(S2Point.neg(axis), cHeight); in complement()
[all …]
DS2LatLngRect.java105 public static S2LatLngRect fromEdge(S2Point a, S2Point b) { in fromEdge()
114 S2Point ab = S2.robustCrossProd(a, b); in fromEdge()
115 S2Point dir = S2Point.crossProd(ab, new S2Point(0, 0, 1)); in fromEdge()
246 S2Point lo = S2LatLng.fromRadians(a.lat().lo(), aLng).toPoint(); in getDistance()
247 S2Point hi = S2LatLng.fromRadians(a.lat().hi(), aLng).toPoint(); in getDistance()
248 S2Point loCrossHi = in getDistance()
304 S2Point aLo = new S2LatLng(a.latLo(), aLng).toPoint(); in getDistance()
305 S2Point aHi = new S2LatLng(a.latHi(), aLng).toPoint(); in getDistance()
306 S2Point aLoCrossHi = in getDistance()
308 S2Point bLo = new S2LatLng(b.latLo(), bLng).toPoint(); in getDistance()
[all …]
DS2Cell.java56 public S2Cell(S2Point p) { in S2Cell()
85 public S2Point getVertex(int k) { in getVertex()
86 return S2Point.normalize(getVertexRaw(k)); in getVertex()
94 public S2Point getVertexRaw(int k) { in getVertexRaw()
99 public S2Point getEdge(int k) { in getEdge()
100 return S2Point.normalize(getEdgeRaw(k)); in getEdge()
103 public S2Point getEdgeRaw(int k) { in getEdgeRaw()
110 return S2Point.neg(S2Projections.getVNorm(face, uv[1][1])); // North in getEdgeRaw()
112 return S2Point.neg(S2Projections.getUNorm(face, uv[0][0])); // West in getEdgeRaw()
167 public S2Point getCenter() { in getCenter()
[all …]
DS2Polyline.java40 private final S2Point[] vertices;
47 public S2Polyline(List<S2Point> vertices) { in S2Polyline()
50 this.vertices = vertices.toArray(new S2Point[numVertices]); in S2Polyline()
66 public boolean isValid(List<S2Point> vertices) { in isValid()
79 || vertices.get(i - 1).equals(S2Point.neg(vertices.get(i)))) { in isValid()
92 public S2Point vertex(int k) { in vertex()
115 public S2Point interpolate(double fraction) { in interpolate()
134 return S2Point.add(S2Point.mul(vertex(i - 1), (Math.cos(target) - f * Math.cos(length))), in interpolate()
135 S2Point.mul(vertex(i), f)); in interpolate()
191 S2Point[] cellVertices = new S2Point[4]; in mayIntersect()
[all …]
DS2Loop.java69 private Map<S2Point, Integer> vertexToIndex;
71 private final S2Point[] vertices;
91 public S2Loop(final List<S2Point> vertices) { in S2Loop()
93 this.vertices = new S2Point[numVertices]; in S2Loop()
127 vertices = new S2Point[numVertices]; in S2Loop()
191 public S2Point vertex(int i) { in vertex()
262 S2Point t = vertices[i]; in invert()
282 S2Point centroid = null; in getAreaCentroid()
304 S2Point origin = vertex(0); in getAreaCentroid()
308 new S2Point((axis == 0) ? slightlyDisplaced : origin.x, in getAreaCentroid()
[all …]
DS2Polygon.java289 S2Point centroidSum = new S2Point(0, 0, 0); in getAreaCentroid()
297 S2Point currentCentroid = areaCentroid.getCentroid(); in getAreaCentroid()
299 new S2Point(centroidSum.x + loopSign * currentCentroid.x, in getAreaCentroid()
332 public S2Point getCentroid() { in getCentroid()
344 public S1Angle getDistance(S2Point p) { in getDistance()
502 public S2Point edgeFrom(int index) { in edgeFrom()
504 S2Point from = fromTo.getStart(); in edgeFrom()
509 protected S2Point edgeTo(int index) { in edgeTo()
511 S2Point to = fromTo.getEnd(); in edgeTo()
550 S2Point from = loop.vertex(fromIndex); in edgeFromTo()
[all …]
DS2Edge.java26 private final S2Point start;
27 private final S2Point end;
29 public S2Edge(S2Point start, S2Point end) { in S2Edge()
34 public S2Point getStart() { in getStart()
38 public S2Point getEnd() { in getEnd()
DS2AreaCentroid.java33 private final S2Point centroid;
35 public S2AreaCentroid(double area, @Nullable S2Point centroid) { in S2AreaCentroid()
44 @Nullable public S2Point getCentroid() { in getCentroid()
DS2LatLng.java59 public static S1Angle latitude(S2Point p) { in latitude()
66 public static S1Angle longitude(S2Point p) { in longitude()
101 public S2LatLng(S2Point p) { in S2LatLng()
169 public S2Point toPoint() { in toPoint()
173 return new S2Point(Math.cos(theta) * cosphi, Math.sin(theta) * cosphi, Math.sin(phi)); in toPoint()

12