10055886

Three-Dimensional Point-In-Polygon Operation to Facilitate Visualizing Data Points Bounded by 3d Geometric Regions

PublishedAugust 21, 2018
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
30 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A computer-implemented method for visualizing location of a data point relative to a 3D geometric region, comprising: projecting each face of the 3D geometric region onto a reference plane to generate corresponding 2D geometric regions; performing, for each 2D geometric region, a 2D point-in-polygon (PIP) operation in the reference plane using an index of open line segments to determine whether the 2D geometric region bounds a projection of the data point onto the reference plane; determining whether the data point is bound by the 3D geometric region by, for each 2D geometric region determined to bound the projected data point, counting intersections between a ray projected from the data point in a direction orthogonal to the reference plane and a corresponding face of the 3D geometric region; and causing a presentation of a visual representation of whether the data point is bounded by the 3D geometric region.

2

2. The computer-implemented method of claim 1 , wherein the 2D point-in-polygon (PIP) operation comprises, for one of the 2D geometric regions: projecting parallel rays from segment endpoints of the 2D geometric region onto a reference line to generate intersection points between the projected rays and the reference line; and storing in the index at least a subset of the projected rays as point data structures, the point data structures corresponding to the intersection points, and associated open line segments of the 2D geometric region; obtaining a projected ray from the index and an associated set of open line segments, the obtained projected ray corresponding to a ray projected from the projected data point onto the reference line; and counting the open line segments in the set.

3

3. The computer-implemented method of claim 2 , wherein storing the subset of projected rays in the index includes maintaining a list of open line segments for every nth interval on the reference line; and wherein obtaining a projected ray and an associated set of open line segments includes obtaining a list of open line segments for a nearest nth interval on the reference line, and adjusting the list to account for intervening line segment openings and closings associated with intersection points located between the nearest nth interval and a relevant interval on the reference line corresponding to the ray projected from the data point onto the reference line, to produce a list of open line segments for the relevant interval.

4

4. The computer-implemented method of claim 1 , wherein the reference plane is a plane that includes an X- and a Y-coordinate axis.

5

5. The computer-implemented method of claim 1 , wherein the reference line is an X-coordinate axis.

6

6. The computer-implemented method of claim 1 , wherein the reference line is a Y-coordinate axis.

7

7. The computer-implemented method of claim 1 , wherein the projection of the data point onto the reference plane comprises setting a Z-coordinate for the data point to zero.

8

8. The computer-implemented method of claim 1 , wherein projecting each face of the 3D geometric region onto a reference plane comprises setting Z-coordinates for line segments of each face of the 3D geometric region.

9

9. The computer-implemented method of claim 1 , wherein the visual representation of whether the data point is bounded by the 3D geometric region is for a computer game or a medical-imaging system.

10

10. The computer-implemented method of claim 1 , additionally comprising obtaining the data point by: receiving a query to be processed, wherein the query is associated with the 3D geometric region; and using a late-binding schema generated from the query to retrieve the data point from a set of events containing previously gathered data.

11

11. The computer-implemented method of claim 1 , wherein the method operates in an aircraft navigation system; wherein the data point represents an aircraft; wherein the 3D geometric region represents an air corridor or a portion thereof; and wherein the method additionally determines when the aircraft enters or leaves the air corridor or portion thereof.

12

12. The computer-implemented method of claim 1 , wherein the method operates in a video game; wherein the data point represents a vehicle that can be manned or unmanned; wherein the 3D geometric region represents a physical object in the video game; and wherein the method additionally determines when the vehicle collides with or is in danger of colliding with the physical object.

13

13. A non-transitory computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method for visualizing location of a data point relative to a 3D geometric region, the method comprising: projecting each face of the 3D geometric region onto a reference plane to generate corresponding 2D geometric regions; performing, for each 2D geometric region, a 2D point-in-polygon (PIP) operation in the reference plane using an index of open line segments to determine whether the 2D geometric region bounds a projection of the data point onto the reference plane; determining whether the data point is bound by the 3D geometric region by, for each 2D geometric region determined to bound the projected data point, counting intersections between a ray projected from the data point in a direction orthogonal to the reference plane and a corresponding face of the 3D geometric region; and causing a presentation of a visual representation of whether the data point is bounded by the 3D geometric region.

14

14. The non-transitory computer-readable storage medium of claim 13 , wherein the 2D point-in-polygon (PIP) operation comprises, for one of the 2D geometric regions: projecting parallel rays from segment endpoints of the 2D geometric region onto a reference line to generate intersection points between the projected rays and the reference line; and storing in the index at least a subset of the projected rays as point data structures, the point data structures corresponding to the intersection points, and associated open line segments of the 2D geometric region; obtaining a projected ray from the index and an associated set of open line segments, the obtained projected ray corresponding to a ray projected from the projected data point onto the reference line; and counting the open line segments in the set.

15

15. The non-transitory computer-readable storage medium of claim 14 , wherein storing the subset of projected rays in the index includes maintaining a list of open line segments for every nth interval on the reference line; and wherein obtaining a projected ray and an associated set of open line segments includes obtaining a list of open line segments for a nearest nth interval on the reference line, and adjusting the list to account for intervening line segment openings and closings associated with intersection points located between the nearest nth interval and a relevant interval on the reference line corresponding to the ray projected from the data point onto the reference line, to produce a list of open line segments for the relevant interval.

16

16. The non-transitory computer-readable storage medium of claim 13 , wherein the reference plane is a plane that includes an X- and a Y-coordinate axis.

17

17. The non-transitory computer-readable storage medium of claim 13 , wherein the reference line is an X-coordinate axis.

18

18. The non-transitory computer-readable storage medium of claim 13 , wherein the reference line is a Y-coordinate axis.

19

19. The non-transitory computer-readable storage medium of claim 13 , wherein the projection of the data point onto the reference plane comprises setting a Z-coordinate for the data point to zero.

20

20. The non-transitory computer-readable storage medium of claim 13 , wherein projecting each face of the 3D geometric region onto a reference plane comprises setting Z-coordinates for line segments of each face of the 3D geometric region.

21

21. The non-transitory computer-readable storage medium of claim 13 , wherein the visual representation of whether the data point is bounded by the 3D geometric region is for a computer game or a medical-imaging system.

22

22. The non-transitory computer-readable storage medium of claim 13 , the method additionally comprising obtaining the data point by: receiving a query to be processed, wherein the query is associated with the 3D geometric region; and using a late-binding schema generated from the query to retrieve the data point from a set of events containing previously gathered data.

23

23. The non-transitory computer-readable storage medium of claim 13 , wherein the method operates in an aircraft navigation system; wherein the data point represents an aircraft; wherein the 3D geometric region represents an air corridor or a portion thereof; and wherein the method additionally determines when the aircraft enters or leaves the air corridor or portion thereof.

24

24. The non-transitory computer-readable storage medium of claim 13 , wherein the method operates in a video game; wherein the data point represents a vehicle that can be manned or unmanned; wherein the 3D geometric region represents a physical object in the video game; and wherein the method additionally determines when the vehicle collide with or is in danger of colliding with the physical object.

25

25. A system for visualizing location of a data point relative to a 3D geometric region, comprising: at least one processor and at least one associated memory; and a display mechanism that executes on the at least one processor and is configured to: project each face of the 3D geometric region onto a reference plane to generate corresponding 2D geometric regions; perform, for each 2D geometric region, a 2D point-in-polygon (PIP) operation in the reference plane using an index of open line segments to determine whether the 2D geometric region bounds a projection of the data point onto the reference plane; determine whether the data point is bound by the 3D geometric region by, for each 2D geometric region determined to bound the projected data point, counting intersections between a ray projected from the data point in a direction orthogonal to the reference plane and a corresponding face of the 3D geometric region; and cause a presentation of a visual representation of whether the data point is bounded by the 3D geometric region.

26

26. The system of claim 25 , wherein the display mechanism is configured to perform the 2D point-in-polygon (PIP) operation by, one of the each 2D geometric regions: projecting parallel rays from segment endpoints of the 2D geometric region onto a reference line to generate intersection points between the projected rays and the reference line; and storing in the index at least a subset of the projected rays as point data structures, the point data structures corresponding to the intersection points, and associated open line segments of the 2D geometric region; obtaining a projected ray from the index and an associated set of open line segments, the obtained projected ray corresponding to a ray projected from the projected data point onto the reference line; and counting the open line segments in the set.

27

27. The system of claim 26 , wherein storing the subset of projected rays in the index includes maintaining a list of open line segments for every nth interval on the reference line; and wherein obtaining a projected ray and an associated set of open line segments includes obtaining a list of open line segments for a nearest nth interval on the reference line, and adjusting the list to account for intervening line segment openings and closings associated with intersection points located between the nearest nth interval and a relevant interval on the reference line corresponding to the ray projected from the data point onto the reference line, to produce a list of open line segments for the relevant interval.

28

28. The system of claim 25 , wherein the reference plane is a plane that includes an X- and a Y-coordinate axis.

29

29. The system of claim 25 , wherein the reference line is an X-coordinate axis.

30

30. The system of claim 25 , wherein the reference line is a Y-coordinate axis.

Patent Metadata

Filing Date

Unknown

Publication Date

August 21, 2018

Inventors

Geoffrey R. Hendrey

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “THREE-DIMENSIONAL POINT-IN-POLYGON OPERATION TO FACILITATE VISUALIZING DATA POINTS BOUNDED BY 3D GEOMETRIC REGIONS” (10055886). https://patentable.app/patents/10055886

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.

THREE-DIMENSIONAL POINT-IN-POLYGON OPERATION TO FACILITATE VISUALIZING DATA POINTS BOUNDED BY 3D GEOMETRIC REGIONS — Geoffrey R. Hendrey | Patentable