Spherical Point-in-Polygon Algorithm Using Classifier Vectors
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for solving spherical point-in-polygon problems on a sphere are inefficient due to the high cost of computing intersection points between arcs, and require expensive pre-computation of data structures like R-Trees, which is not feasible when polygon vertices change frequently.
Innovation Solution
Adapting the 'ray crossing' technique by determining arc orientations to detect crossings without computing exact intersection points, using classifier vectors and dot product operations to identify candidate edge arcs that potentially cross a test ray, and reusing classifier vectors to reduce computation costs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the ray crossing algorithm is adapted to spherical PIP by computing intersection points between arcs, then the algorithm can determine point-in-polygon relationships on a sphere, but the computational cost becomes very expensive
Solution Approach 1:
The patent extracts only the essential information needed for PIP determination - the orientation of arcs relative to a test ray - without computing the full intersection points between arcs. By using classifier vectors and dot products, the algorithm determines crossing relationships by comparing orientations rather than calculating precise intersection coordinates, thereby reducing computational cost while maintaining accuracy.
Solution Approach 2:
The patent replaces expensive arc intersection computations with cheaper orientation comparisons using dot products. Instead of performing costly cross-product calculations to find intersection points, the algorithm uses inexpensive dot product operations between classifier vectors and arc vectors to determine relative orientations and crossing relationships, achieving the same PIP determination goal at much lower computational cost.
2Productivity
If pre-computed data structures like R-Trees are used to solve spherical PIP problems, then query processing becomes more efficient, but the pre-computation cost is very expensive and not feasible when polygon vertices change frequently
Solution Approach 1:
The patent performs preliminary classification of polygon arcs by computing classifier vectors that represent the orientation of each arc. This pre-computation step is much cheaper than building R-Tree structures, and the classifier vectors can be quickly updated when polygon vertices change. The preliminary orientation information is then reused during query processing to efficiently determine point-in-polygon relationships without requiring expensive intersection computations.
3Ease of manufacture
If 2D mapping techniques are used to solve spherical PIP problems, then the problem can be solved using existing 2D algorithms, but spherical PIP problems cannot be managed with sufficient accuracy for the application
Solution Approach 1:
The patent directly works with the spherical geometry of the problem by computing orientations of arcs on the sphere's surface using 3D vectors and dot products. Instead of projecting the spherical polygon to 2D space and losing geometric fidelity, the algorithm maintains the intrinsic spherical curvature by operating with vectors in 3D space, computing angles and orientations that respect the sphere's geometry, thereby achieving both accuracy and ease of implementation.
Data Source
AI summary
Techniques described herein perform spherical PIP analysis by detecting whether a test ray (defined by a test point (TP) and a point (EP) that is external to a spherical polygon) crosses edge arcs (“edges”) of the polygon based on relative orientations of vertices of the test ray and edges. A classifier vector (CV) for a test ray is calculated based on the cross-product of the TP and the EP. Using the CV, the orientation of each vertex of the polygon with respect to the test ray is determined. Candidate edges having vertices with opposite orientations with respect to the test ray are identified. Crossing edges are determine by calculating CVs for each candidate edge, and determining orientations of the TP and EP with respect to each candidate edge. A set of crossing edges is determined, where the TP and the EP have opposite orientations with respect to each crossing edge.


