[
https://issues.apache.org/jira/browse/LUCENE-7154?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15219824#comment-15219824
]
Karl Wright commented on LUCENE-7154:
-------------------------------------
Yup, [~rcmuir], thanks, I see it.
Geo3D needs to split non-convex polygons into multiple convex polygons, and I'm
basically trying to figure out how much work I should put into determining
whether or not a given provided hole has any intersection with a given convex
polygon. That's question #1. I could use *all* holes for *each* convex
polygon, of course, and that's what I'll probably do for starters.
The other issue I've got is this business of clockwise vs counterclockwise
ordering being meaningful. For Geo3D I just need a point that I know is inside
or outside. The internal API asks the user to specify the index of a point
that is convex (outside the two adjoining points if you connected them). I
haven't yet found an algorithm that maps to clockwise/counterclockwise points,
though. How are you handling this elsewhere?
> Add support for polygon holes to Geo3D
> --------------------------------------
>
> Key: LUCENE-7154
> URL: https://issues.apache.org/jira/browse/LUCENE-7154
> Project: Lucene - Core
> Issue Type: New Feature
> Reporter: Karl Wright
>
> Real-world polygons (e.g. from ESRI) have holes in them. We need polygon
> support in geo3D that works in the same way.
> The proposal would be to change the GeoConvexPolygon constructor to include a
> number of GeoPolygon inputs, each of which would specify a hole. Then, the
> GeoPolygonFactory.makeGeoPolygon() method would also need to accept a similar
> list of GeoPolygon hole descriptions.
> This change is likely to be fairly complex because of the already tricky
> algorithm used to create convex polygons from non-convex ones, implemented in
> GeoPolygonFactory.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]