Ray Casting Geofencing Indexing for Real-Time Point-in-Polygon
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing point-in-polygon indexing techniques are computationally expensive and inefficient, especially when dealing with large geographic data sets, as they require iterating over numerous vertices in each polygon boundary, making it impractical for real-time querying and visualization.
Innovation Solution
A new indexing technique that involves casting horizontal rays from polygon segments onto a reference line, storing intersected segments, and using a sorted point structure to retrieve intersected segments for a given point, allowing direct application of the crossing number technique without iterating through polygon boundaries.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If brute force crossing number technique is used to solve point-in-polygon problem, then measurement precision is maintained, but processing time increases significantly
Solution Approach 1:
The patent applies preliminary action by pre-processing polygon boundaries into a sorted data structure before queries are executed. The boundary vertices are sorted by x-coordinate and stored in an optimized format that enables rapid retrieval during point-in-polygon testing, eliminating the need to iterate through all vertices at query time.
Solution Approach 2:
The patent segments the polygon boundary into ordered vertex pairs that define edges, storing them in a structured format where consecutive vertices are paired. This segmentation allows the algorithm to efficiently traverse only relevant boundary segments rather than all vertices, improving query performance while maintaining accuracy.
2Measurement precision
If crossing number technique iterates over all polygon vertices, then measurement precision is ensured, but device complexity increases
Solution Approach 1:
The patent reduces algorithmic complexity during query execution by performing the complex sorting and structuring operation in advance. The pre-processed data structure organizes vertices and edges in a way that simplifies the crossing number calculation, requiring only linear traversal rather than full iteration over all vertices.
Solution Approach 2:
The patent changes the parameter organization from unstructured vertex lists to sorted, paired vertex structures with associated edge information. This parameter reorganization transforms the computational complexity from O(n) per query to O(log n) or better, while preserving the geometric accuracy needed for geofencing operations.
3Adaptability or versatility
If traditional point-in-polygon indexing is used, then geographic data can be queried, but productivity decreases due to computational expense
Solution Approach 1:
The patent applies preliminary action by pre-processing geographic polygon data into an optimized indexing structure that enables rapid point-in-polygon queries. The sorted vertex pairs and organized boundary representations are computed once during data loading, allowing multiple queries to execute efficiently without repeating the expensive sorting operation.
Solution Approach 2:
The patent creates a simplified copy of the geographic boundary data in a specialized data structure that preserves geometric accuracy but optimizes for query performance. This copied structure with sorted vertices and paired edges enables fast traversal and intersection testing, significantly improving productivity for geofencing operations while maintaining adaptability for various query types.
Data Source
AI summary
A system that facilitates a geofencing operation is disclosed. The system obtains polygons that define a set of geographic regions. Then, the system projects rays from endpoints of the line segments that define the polygons onto a reference line to form intersection points. For each interval between pairs of consecutive intersection points on the reference line, the system keeps track of open line segments that project onto the interval. For each data point in a set of data points, the system identifies a relevant interval on the reference line that the data point projects onto, and performs a crossing number operation to identify polygons that the data point falls into, and the system increments a count for each polygon that the data point falls into. Finally, the system performs a geofencing operation for the location-aware device based on the identified polygons that the data point falls into.


