[ 
https://issues.apache.org/jira/browse/LUCENE-8696?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16776841#comment-16776841
 ] 

Karl Wright commented on LUCENE-8696:
-------------------------------------

I've verified that there are two solid edge points and they both lie within the 
path:

{code}
   [junit4]   2>  solid edge point [X=0.0, Y=0.9519964046486451, 
Z=-0.30870622678085735] path.isWithin()? true
   [junit4]   2>  solid edge point [X=-0.0, Y=1.0011188539924791, Z=0.0] 
path.isWithin()? true
   [junit4]   2>  path edge point [X=0.22516844226485835, 
Y=0.003930329545205224, Z=0.9721897091178435] isWithin()? false 
minx=0.9983274500335564 maxx=-0.7759504117276208 miny=-0.9480660751034399 
maxy=-0.9971885244472739 minz=1.969952002403821 maxz=-0.025570267707659133
{code}

So this confirms that there is no intersection detected, and how the conclusion 
that the solid is completely within the path is arrived at.

Possible errors that would cause this:

(1) We might be missing a solid edge point.  These edge points are computed 
based on the lines of intersection between adjoining solid planes and the 
surface of the world.  There is also special computation to handle the case 
where a solid edge plane intersects the world by itself, but this logic might 
not be complete.  We need to capture all plane/world intersection closed curves 
and come up with an example point for each.

(2) There might be numerical precision issues with intersection computation 
that prevent us from concluding that the path edges intersect the solid edges.

I still have to figure out which is the real problem here.


> TestGeo3DPoint.testGeo3DRelations failure
> -----------------------------------------
>
>                 Key: LUCENE-8696
>                 URL: https://issues.apache.org/jira/browse/LUCENE-8696
>             Project: Lucene - Core
>          Issue Type: Bug
>          Components: modules/spatial3d
>            Reporter: Ignacio Vera
>            Assignee: Karl Wright
>            Priority: Major
>         Attachments: LUCENE-8696.patch
>
>
> Reproduce with:
> {code:java}
> ant test  -Dtestcase=TestGeo3DPoint -Dtests.method=testGeo3DRelations 
> -Dtests.seed=721195D0198A8470 -Dtests.slow=true -Dtests.badapples=true 
> -Dtests.locale=sr-RS -Dtests.timezone=Europe/Istanbul -Dtests.asserts=true 
> -Dtests.file.encoding=ISO-8859-1{code}
> Error:
> {code:java}
>    [junit4] FAILURE 1.16s | TestGeo3DPoint.testGeo3DRelations <<<
>    [junit4]    > Throwable #1: java.lang.AssertionError: invalid hits for 
> shape=GeoStandardPath: {planetmodel=PlanetModel.WGS84, 
> width=1.3439035240356338(77.00000000000001), 
> points={[[lat=2.4457272005608357E-47, 
> lon=0.017453291479645996([X=1.0009663787601641, Y=0.017471932090601616, 
> Z=2.448463612203698E-47])], [lat=2.4457272005608357E-47, 
> lon=0.8952476719156919([X=0.6260252093310985, Y=0.7812370940381473, 
> Z=2.448463612203698E-47])], [lat=2.4457272005608357E-47, 
> lon=0.6491968536639036([X=0.7974608400583222, Y=0.6052232384770843, 
> Z=2.448463612203698E-47])], [lat=-0.7718789008737459, 
> lon=0.9236607495528212([X=0.43181767034308555, Y=0.5714183775701452, 
> Z=-0.6971214014446648])]]}}{code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to