Polygon Preprocessing for Faster Inside-Outside Determination
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing polygon inside/outside determination technologies, such as the Crossing Number method and Winding Number method, face inefficiencies when applied to polygons with numerous vertices or elongated shapes, leading to prolonged processing times, and bounding containers like MBRs often fail to significantly reduce processing time for such polygons.
Innovation Solution
Implementing preprocessing methods including vertex reduction, polygon rotation, and division into smaller polygons to reduce the complexity of the polygon before performing inside/outside determination, utilizing algorithms like Ramer-Douglas-Peucker, polygon triangulation, and rotation to minimize the area of bounding containers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If the Crossing Number method or Winding Number method is used to determine whether a coordinate is inside a polygon with many vertexes, then the determination accuracy is maintained, but the processing time becomes longer
Solution Approach 1:
The patent divides the polygon into multiple sub-polygons by adding division lines between vertexes. This segmentation reduces the number of vertexes in each sub-polygon, allowing the Crossing Number or Winding Number method to execute faster on smaller subsets while maintaining overall determination accuracy through coordinated evaluation of all sub-polygons.
Solution Approach 2:
The patent performs preliminary actions by pre-calculating and storing division lines that partition the polygon into sub-polygons. These pre-computed division structures enable faster query processing by avoiding the need to process all original vertexes during each determination operation, thus reducing processing time while preserving accuracy.
2Area of stationary object
If an MBR (Minimal Bounding Rectangle) is used as a bounding container for an elongated polygon, then the container includes the entire polygon, but the area of the container includes many regions outside the polygon, reducing the effectiveness of the bounding container
Solution Approach 1:
The patent segments the elongated polygon into multiple smaller sub-polygons using division lines. Each sub-polygon is then associated with its own smaller MBR, creating multiple compact bounding containers instead of one large MBR. This reduces the total area covered by bounding containers while maintaining complete coverage of the original polygon, thereby improving processing efficiency by reducing the number of false positive coordinates that need detailed checking.
3Loss of time
If the polygon is divided into smaller sub-polygons, then the processing time for inside/outside determination is shortened, but the device complexity increases
Solution Approach 1:
The patent performs the complex polygon division operation as a preliminary action during data preparation or system initialization. The division lines and sub-polygon structures are pre-computed and stored, so that during actual determination operations, the system only needs to perform simple coordinate-to-sub-polygon checks rather than complex geometric calculations, thus reducing real-time processing time while confining the complexity increase to the setup phase.
Data Source
Figure 1
Figure 2~3
Figure 4~5
AI summary
A vertex reduction device (10) includes a vertex reduction unit (131) configured to acquire coordinate information of respective vertexes of a polygon for inside/outside determination and reduce the vertexes of the polygon for inside/outside determination as preprocessing of determination processing of determining whether a coordinate to be determined exists inside or outside the polygon for inside/outside determination, and a communication unit (11) configured to output the coordinate information of the respective vertexes of the polygon after the vertexes are reduced by the vertex reduction unit (131), to a device which performs the determination processing.