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

Karl Wright edited comment on LUCENE-8696 at 2/26/19 7:24 AM:
--------------------------------------------------------------

Reviewing the solid, and what the edge points *should* be:

minx, maxx:      -0.7731590077686981, 1.0011188539924791
miny, maxy:      0.9519964046486451, 1.0011188539924791
minz, maxz:      -0.9977622932859775, 0.9977599768255027

The minz/maxz planes might touch the world at the poles, but probably don't.
The maxx plane might touch the world at the max X pole.
The minx plane definitely slices the world, so it should generate at least one 
point.
The maxy plane might touch the world at the max Y pole.
The miny plane slices the world, so it should generate at least one point.

This is the debugging output:

{code}
  [junit4]   2>  notableMinXPoints=[] notableMaxXPoints=[] notableMinYPoints=[] 
notableMaxYPoints=[] notableMinZPoints=[] notableMaxZPoints=[]
   [junit4]   2>  minXEdges=[] maxXEdges=[] minYEdges=[[X=0.0, 
Y=0.9519964046486451, Z=-0.30870622678085735]] maxYEdges=[[X=-0.0, 
Y=1.0011188539924791, Z=0.0]] minZEdges=[] maxZEdges=[]
{code}

"Notable points" are places where the plane intersections also intersect the 
world.  There are none of these, as expected.

The planes that intersect the world are minY and maxY.  We do *not* see 
intersections for minX, though, and we expected to.  That's got to be 
researched to figure out why.  It may be because the intersection is actually 
outside the solid bounds as determined by the Y plane.

So the question becomes whether the line (-0.7731590077686981, 
0.9519964046486451, t) ever can go through the world?  We can surely determine 
that by picking value 0, and computing the distance to the origin:

sqrt(x^2 + y^2 + 0) = 1.2264061340998847885343642874005, which is indeed off 
the surface.  So the points look reasonable.




was (Author: kwri...@metacarta.com):
Reviewing the solid, and what the edge points *should* be:

minx, maxx:      -0.7731590077686981, 1.0011188539924791
miny, maxy:      0.9519964046486451, 1.0011188539924791
minz, maxz:      -0.9977622932859775, 0.9977599768255027

The minz/maxz planes might touch the world at the poles, but probably don't.
The maxx plane might touch the world at the max X pole.
The minx plane definitely slices the world, so it should generate at least one 
point.
The maxy plane might touch the world at the max Y pole.
The miny plane slices the world, so it should generate at least one point.

This is the debugging output:

{code}
  [junit4]   2>  notableMinXPoints=[] notableMaxXPoints=[] notableMinYPoints=[] 
notableMaxYPoints=[] notableMinZPoints=[] notableMaxZPoints=[]
   [junit4]   2>  minXEdges=[] maxXEdges=[] minYEdges=[[X=0.0, 
Y=0.9519964046486451, Z=-0.30870622678085735]] maxYEdges=[[X=-0.0, 
Y=1.0011188539924791, Z=0.0]] minZEdges=[] maxZEdges=[]
{code}

"Notable points" are places where the plane intersections also intersect the 
world.  There are none of these, as expected.

The planes that intersect the world are minY and maxY.  We do *not* see 
intersections for minX, though, and we expected to.  That's got to be 
researched to figure out why.  It may be because the intersection is actually 
outside the solid bounds as determined by the Y plane.

Out of time for the moment though.



> 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