[
https://issues.apache.org/jira/browse/LUCENE-8251?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16437275#comment-16437275
]
Karl Wright edited comment on LUCENE-8251 at 4/13/18 1:00 PM:
--------------------------------------------------------------
Unfortunately I need to deal with some other burning issues at the moment, and
I have no idea how to fix this particular problem either, so I'm going to have
to put it on hold until I think of something workable.
Next steps: First, validate the picture that the reason that the intersections
aren't getting detected is because they'd be off the ellipsoid. This can be
done in theory by seeing if the Plane.findIntersections code finds zero
solutions for the intersection in question. I bet it does, and that would
confirm the picture.
was (Author: [email protected]):
Unfortunately I need to deal with some other burning issues at the moment, and
I have no idea how to fix this particular problem either, so I'm going to have
to put it on hold until I think of something workable.
Next steps: First, validate the picture that the reason that the intersections
aren't getting detected is because they'd be off the ellipsoid.
> Test failure, geo3d complex polygons
> ------------------------------------
>
> Key: LUCENE-8251
> URL: https://issues.apache.org/jira/browse/LUCENE-8251
> Project: Lucene - Core
> Issue Type: Bug
> Components: modules/spatial3d
> Affects Versions: master (8.0)
> Reporter: Karl Wright
> Assignee: Karl Wright
> Priority: Major
> Fix For: 6.7, 7.4, master (8.0)
>
> Attachments: LUCENE-8251.jpg
>
>
> {code}
> Error Message:
> Standard polygon: GeoCompositePolygon: {[GeoConvexPolygon:
> {planetmodel=PlanetModel.WGS84, points=[[lat=-0.12884119701201008,
> lon=-1.157781399251359([X=0.3984689569776051, Y=-0.9092889699600808,
> Z=-0.1286216320286114])], [lat=-0.8977173781916888,
> lon=2.3672262552845993([X=-0.44522608342175374, Y=0.435509619867484,
> Z=-0.7811731004355484])], [lat=-1.0294747773716673,
> lon=1.97235866074843([X=-0.20112459723348416, Y=0.47363995489643546,
> Z=-0.8558716366345036])]], internalEdges={2}}, GeoConvexPolygon:
> {planetmodel=PlanetModel.WGS84, points=[[lat=-0.12884119701201008,
> lon=-1.157781399251359([X=0.3984689569776051, Y=-0.9092889699600808,
> Z=-0.1286216320286114])], [lat=-1.0294747773716673,
> lon=1.97235866074843([X=-0.20112459723348416, Y=0.47363995489643546,
> Z=-0.8558716366345036])], [lat=-6.4E-323, lon=0.0([X=1.0011188539924791,
> Y=0.0, Z=-6.4E-323])]], internalEdges={0}}]} Large polygon:
> GeoComplexPolygon: {planetmodel=PlanetModel.WGS84, number of shapes=1,
> address=814a2a8c, testPoint=[lat=-1.1675693914784415,
> lon=-1.850615018297906E-4([X=0.39171238223740806, Y=-7.249088256972983E-5,
> Z=-0.9182146655290553])], testPointInSet=true, shapes={
> {[lat=-0.12884119701201008, lon=-1.157781399251359([X=0.3984689569776051,
> Y=-0.9092889699600808, Z=-0.1286216320286114])], [lat=-0.8977173781916888,
> lon=2.3672262552845993([X=-0.44522608342175374, Y=0.435509619867484,
> Z=-0.7811731004355484])], [lat=-1.0294747773716673,
> lon=1.97235866074843([X=-0.20112459723348416, Y=0.47363995489643546,
> Z=-0.8558716366345036])], [lat=-6.4E-323, lon=0.0([X=1.0011188539924791,
> Y=0.0, Z=-6.4E-323])]}} Point: [lat=3.5E-323,
> lon=9.046923007656787E-5([X=1.0011188498955597, Y=9.057045181228716E-5,
> Z=3.5E-323])] WKT: POLYGON((135.63207358036593
> -51.43541696593334,113.00782694696038 -58.984559858566556,0.0
> -3.68E-321,-66.33598777585381 -7.382056816201731,135.63207358036593
> -51.43541696593334)) WKT: POINT(0.005183505059185348 1.98E-321) normal
> polygon: false large polygon: true
> Stack Trace:
> java.lang.AssertionError:
> Standard polygon: GeoCompositePolygon: {[GeoConvexPolygon:
> {planetmodel=PlanetModel.WGS84, points=[[lat=-0.12884119701201008,
> lon=-1.157781399251359([X=0.3984689569776051, Y=-0.9092889699600808,
> Z=-0.1286216320286114])], [lat=-0.8977173781916888,
> lon=2.3672262552845993([X=-0.44522608342175374, Y=0.435509619867484,
> Z=-0.7811731004355484])], [lat=-1.0294747773716673,
> lon=1.97235866074843([X=-0.20112459723348416, Y=0.47363995489643546,
> Z=-0.8558716366345036])]], internalEdges={2}}, GeoConvexPolygon:
> {planetmodel=PlanetModel.WGS84, points=[[lat=-0.12884119701201008,
> lon=-1.157781399251359([X=0.3984689569776051, Y=-0.9092889699600808,
> Z=-0.1286216320286114])], [lat=-1.0294747773716673,
> lon=1.97235866074843([X=-0.20112459723348416, Y=0.47363995489643546,
> Z=-0.8558716366345036])], [lat=-6.4E-323, lon=0.0([X=1.0011188539924791,
> Y=0.0, Z=-6.4E-323])]], internalEdges={0}}]}
> Large polygon: GeoComplexPolygon: {planetmodel=PlanetModel.WGS84, number of
> shapes=1, address=814a2a8c, testPoint=[lat=-1.1675693914784415,
> lon=-1.850615018297906E-4([X=0.39171238223740806, Y=-7.249088256972983E-5,
> Z=-0.9182146655290553])], testPointInSet=true, shapes={
> {[lat=-0.12884119701201008, lon=-1.157781399251359([X=0.3984689569776051,
> Y=-0.9092889699600808, Z=-0.1286216320286114])], [lat=-0.8977173781916888,
> lon=2.3672262552845993([X=-0.44522608342175374, Y=0.435509619867484,
> Z=-0.7811731004355484])], [lat=-1.0294747773716673,
> lon=1.97235866074843([X=-0.20112459723348416, Y=0.47363995489643546,
> Z=-0.8558716366345036])], [lat=-6.4E-323, lon=0.0([X=1.0011188539924791,
> Y=0.0, Z=-6.4E-323])]}}
> Point: [lat=3.5E-323, lon=9.046923007656787E-5([X=1.0011188498955597,
> Y=9.057045181228716E-5, Z=3.5E-323])]
> WKT: POLYGON((135.63207358036593 -51.43541696593334,113.00782694696038
> -58.984559858566556,0.0 -3.68E-321,-66.33598777585381
> -7.382056816201731,135.63207358036593 -51.43541696593334))
> WKT: POINT(0.005183505059185348 1.98E-321)
> normal polygon: false
> large polygon: true
> at
> __randomizedtesting.SeedInfo.seed([C1E5FF7FBC7AC980:47CE8D3C5A69DD5B]:0)
> at org.junit.Assert.fail(Assert.java:93)
> at org.junit.Assert.assertTrue(Assert.java:43)
> at
> org.apache.lucene.spatial3d.geom.RandomGeoPolygonTest.testComparePolygons(RandomGeoPolygonTest.java:179)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at
> com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1737)
> at
> com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:934)
> at
> com.carrotsearch.randomizedtesting.RandomizedRunner$9.evaluate(RandomizedRunner.java:970)
> at
> com.carrotsearch.randomizedtesting.RandomizedRunner$10.evaluate(RandomizedRunner.java:984)
> at
> org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:49)
> at
> org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at
> org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:48)
> at
> org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:64)
> at
> org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:47)
> at
> com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
> at
> com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:368)
> at
> com.carrotsearch.randomizedtesting.ThreadLeakControl.forkTimeoutingTask(ThreadLeakControl.java:817)
> at
> com.carrotsearch.randomizedtesting.ThreadLeakControl$3.evaluate(ThreadLeakControl.java:468)
> at
> com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:943)
> at
> com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:829)
> at
> com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:879)
> at
> com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:890)
> at
> org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at
> com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
> at
> org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:41)
> at
> com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:40)
> at
> com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:40)
> at
> com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
> at
> com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
> at
> com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
> at
> org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:53)
> at
> org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:47)
> at
> org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:64)
> at
> org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:54)
> at
> com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
> at
> com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:368)
> at java.lang.Thread.run(Thread.java:748)
> {code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]