vatprism icon indicating copy to clipboard operation
vatprism copied to clipboard

Rework polygon merging

Open marvk opened this issue 2 years ago • 0 comments

Currently, there are some issues with merging polygons. It's probably best to wait for the source data to be fixed before trying to fix this to avoid the complexitys of the current, irregular formats, which may have clockwise or anticlockwise polygons and open or closed polygons.

2021-09-18 18:57:51,020 WARN  [      7209] --- [                 Thread-6] n.m.f.v.m.d.FlightInformationRegionBoundary   : Failed to merge polygons for CZQM, trying again...
 java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0
	at jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64) ~[?:?]
	at jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70) ~[?:?]
	at jdk.internal.util.Preconditions.checkIndex(Preconditions.java:248) ~[?:?]
	at java.util.Objects.checkIndex(Objects.java:359) ~[?:?]
	at java.util.ArrayList.get(ArrayList.java:427) ~[?:?]
	at net.marvk.fs.vatsim.map.data.Polygon.mergeAlongAntimeridian(Polygon.java:334) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.Polygon.merge(Polygon.java:306) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundary.mergeInto(FlightInformationRegionBoundary.java:111) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.mergeExtensions(FlightInformationRegionBoundaryRepository.java:210) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.updateList(FlightInformationRegionBoundaryRepository.java:90) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.SimpleDataRepository.reload(SimpleDataRepository.java:49) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel.runTimed(PreloaderViewModel.java:174) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CallableTask.call(PreloaderViewModel.java:198) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:225) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:204) ~[classes/:?]
	at javafx.concurrent.Task$TaskCallable.call(Task.java:1425) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$6(Service.java:725) ~[javafx-graphics-16-win.jar:?]
	at java.security.AccessController.doPrivileged(AccessController.java:391) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$7(Service.java:724) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?]
	at java.lang.Thread.run(Thread.java:832) [?:?]
2021-09-18 18:57:51,083 WARN  [      7272] --- [                 Thread-6] n.m.f.v.m.d.Polygon                           : Failed polylabel for CZQM_Extension_polygon: Can not label invalid geometries
2021-09-18 18:57:51,115 WARN  [      7304] --- [                 Thread-6] n.m.f.v.m.d.FlightInformationRegionBoundary   : Failed to merge polygons for LECM, trying again...
 java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 46
	at net.marvk.fs.vatsim.map.data.Polygon.mergeWithLineOverlap(Polygon.java:433) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.Polygon.merge(Polygon.java:298) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundary.mergeInto(FlightInformationRegionBoundary.java:111) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.mergeExtensions(FlightInformationRegionBoundaryRepository.java:210) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.updateList(FlightInformationRegionBoundaryRepository.java:90) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.SimpleDataRepository.reload(SimpleDataRepository.java:49) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel.runTimed(PreloaderViewModel.java:174) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CallableTask.call(PreloaderViewModel.java:198) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:225) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:204) ~[classes/:?]
	at javafx.concurrent.Task$TaskCallable.call(Task.java:1425) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$6(Service.java:725) ~[javafx-graphics-16-win.jar:?]
	at java.security.AccessController.doPrivileged(AccessController.java:391) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$7(Service.java:724) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?]
	at java.lang.Thread.run(Thread.java:832) [?:?]
2021-09-18 18:57:51,118 WARN  [      7307] --- [                 Thread-6] n.m.f.v.m.d.FlightInformationRegionBoundary   : Failed to merge polygons for LIMM, trying again...
 java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0
	at jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64) ~[?:?]
	at jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70) ~[?:?]
	at jdk.internal.util.Preconditions.checkIndex(Preconditions.java:248) ~[?:?]
	at java.util.Objects.checkIndex(Objects.java:359) ~[?:?]
	at java.util.ArrayList.get(ArrayList.java:427) ~[?:?]
	at net.marvk.fs.vatsim.map.data.Polygon.mergeAlongAntimeridian(Polygon.java:334) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.Polygon.merge(Polygon.java:306) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundary.mergeInto(FlightInformationRegionBoundary.java:111) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.mergeExtensions(FlightInformationRegionBoundaryRepository.java:210) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.updateList(FlightInformationRegionBoundaryRepository.java:90) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.SimpleDataRepository.reload(SimpleDataRepository.java:49) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel.runTimed(PreloaderViewModel.java:174) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CallableTask.call(PreloaderViewModel.java:198) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:225) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:204) ~[classes/:?]
	at javafx.concurrent.Task$TaskCallable.call(Task.java:1425) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$6(Service.java:725) ~[javafx-graphics-16-win.jar:?]
	at java.security.AccessController.doPrivileged(AccessController.java:391) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$7(Service.java:724) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?]
	at java.lang.Thread.run(Thread.java:832) [?:?]
2021-09-18 18:57:51,121 WARN  [      7310] --- [                 Thread-6] n.m.f.v.m.d.FlightInformationRegionBoundary   : Failed to merge polygons for SKED, trying again...
 java.lang.ArrayIndexOutOfBoundsException: Index 20 out of bounds for length 20
	at net.marvk.fs.vatsim.map.data.Polygon.mergeWithLineOverlap(Polygon.java:433) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.Polygon.merge(Polygon.java:298) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundary.mergeInto(FlightInformationRegionBoundary.java:111) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.mergeExtensions(FlightInformationRegionBoundaryRepository.java:210) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.updateList(FlightInformationRegionBoundaryRepository.java:90) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.SimpleDataRepository.reload(SimpleDataRepository.java:49) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel.runTimed(PreloaderViewModel.java:174) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CallableTask.call(PreloaderViewModel.java:198) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:225) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:204) ~[classes/:?]
	at javafx.concurrent.Task$TaskCallable.call(Task.java:1425) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$6(Service.java:725) ~[javafx-graphics-16-win.jar:?]
	at java.security.AccessController.doPrivileged(AccessController.java:391) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$7(Service.java:724) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?]
	at java.lang.Thread.run(Thread.java:832) [?:?]
2021-09-18 18:57:51,122 WARN  [      7311] --- [                 Thread-6] n.m.f.v.m.d.FlightInformationRegionBoundary   : Failed to merge polygons for VVHM, trying again...
 java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 16
	at net.marvk.fs.vatsim.map.data.Polygon.mergeWithLineOverlap(Polygon.java:433) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.Polygon.merge(Polygon.java:298) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundary.mergeInto(FlightInformationRegionBoundary.java:111) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.mergeExtensions(FlightInformationRegionBoundaryRepository.java:210) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.updateList(FlightInformationRegionBoundaryRepository.java:90) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.SimpleDataRepository.reload(SimpleDataRepository.java:49) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel.runTimed(PreloaderViewModel.java:174) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CallableTask.call(PreloaderViewModel.java:198) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:225) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:204) ~[classes/:?]
	at javafx.concurrent.Task$TaskCallable.call(Task.java:1425) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$6(Service.java:725) ~[javafx-graphics-16-win.jar:?]
	at java.security.AccessController.doPrivileged(AccessController.java:391) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$7(Service.java:724) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?]
	at java.lang.Thread.run(Thread.java:832) [?:?]
2021-09-18 18:57:51,124 WARN  [      7313] --- [                 Thread-6] n.m.f.v.m.d.FlightInformationRegionBoundary   : Failed to merge polygons for ZBAA, trying again...
 java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0
	at jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64) ~[?:?]
	at jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70) ~[?:?]
	at jdk.internal.util.Preconditions.checkIndex(Preconditions.java:248) ~[?:?]
	at java.util.Objects.checkIndex(Objects.java:359) ~[?:?]
	at java.util.ArrayList.get(ArrayList.java:427) ~[?:?]
	at net.marvk.fs.vatsim.map.data.Polygon.mergeAlongAntimeridian(Polygon.java:334) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.Polygon.merge(Polygon.java:306) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundary.mergeInto(FlightInformationRegionBoundary.java:111) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.mergeExtensions(FlightInformationRegionBoundaryRepository.java:210) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.updateList(FlightInformationRegionBoundaryRepository.java:90) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.SimpleDataRepository.reload(SimpleDataRepository.java:49) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel.runTimed(PreloaderViewModel.java:174) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CallableTask.call(PreloaderViewModel.java:198) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:225) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:204) ~[classes/:?]
	at javafx.concurrent.Task$TaskCallable.call(Task.java:1425) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$6(Service.java:725) ~[javafx-graphics-16-win.jar:?]
	at java.security.AccessController.doPrivileged(AccessController.java:391) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$7(Service.java:724) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?]
	at java.lang.Thread.run(Thread.java:832) [?:?]
2021-09-18 18:57:51,128 WARN  [      7317] --- [                 Thread-6] n.m.f.v.m.d.FlightInformationRegionBoundary   : Failed to merge polygons for ZUUU, trying again...
 java.lang.NullPointerException: Cannot invoke "java.lang.Integer.intValue()" because the return value of "java.util.Map.get(Object)" is null
	at net.marvk.fs.vatsim.map.data.Polygon.mergeWithEndPointOverlap(Polygon.java:400) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.Polygon.merge(Polygon.java:300) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundary.mergeInto(FlightInformationRegionBoundary.java:111) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.mergeExtensions(FlightInformationRegionBoundaryRepository.java:210) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.updateList(FlightInformationRegionBoundaryRepository.java:90) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.SimpleDataRepository.reload(SimpleDataRepository.java:49) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel.runTimed(PreloaderViewModel.java:174) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CallableTask.call(PreloaderViewModel.java:198) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:225) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:204) ~[classes/:?]
	at javafx.concurrent.Task$TaskCallable.call(Task.java:1425) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$6(Service.java:725) ~[javafx-graphics-16-win.jar:?]
	at java.security.AccessController.doPrivileged(AccessController.java:391) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$7(Service.java:724) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?]
	at java.lang.Thread.run(Thread.java:832) [?:?]
2021-09-18 18:57:51,129 WARN  [      7318] --- [                 Thread-6] n.m.f.v.m.d.FlightInformationRegionBoundary   : Failed to merge polygons for ZSSS, trying again...
 java.lang.ArrayIndexOutOfBoundsException: Index 28 out of bounds for length 28
	at net.marvk.fs.vatsim.map.data.Polygon.mergeWithLineOverlap(Polygon.java:433) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.Polygon.merge(Polygon.java:298) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundary.mergeInto(FlightInformationRegionBoundary.java:111) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.mergeExtensions(FlightInformationRegionBoundaryRepository.java:210) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.updateList(FlightInformationRegionBoundaryRepository.java:90) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.SimpleDataRepository.reload(SimpleDataRepository.java:49) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel.runTimed(PreloaderViewModel.java:174) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CallableTask.call(PreloaderViewModel.java:198) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:225) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:204) ~[classes/:?]
	at javafx.concurrent.Task$TaskCallable.call(Task.java:1425) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$6(Service.java:725) ~[javafx-graphics-16-win.jar:?]
	at java.security.AccessController.doPrivileged(AccessController.java:391) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$7(Service.java:724) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?]
	at java.lang.Thread.run(Thread.java:832) [?:?]
2021-09-18 18:57:51,132 WARN  [      7321] --- [                 Thread-6] n.m.f.v.m.d.FlightInformationRegionBoundary   : Failed to merge polygons for ZWWW, trying again...
 java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0
	at jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64) ~[?:?]
	at jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70) ~[?:?]
	at jdk.internal.util.Preconditions.checkIndex(Preconditions.java:248) ~[?:?]
	at java.util.Objects.checkIndex(Objects.java:359) ~[?:?]
	at java.util.ArrayList.get(ArrayList.java:427) ~[?:?]
	at net.marvk.fs.vatsim.map.data.Polygon.mergeAlongAntimeridian(Polygon.java:334) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.Polygon.merge(Polygon.java:306) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundary.mergeInto(FlightInformationRegionBoundary.java:111) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.mergeExtensions(FlightInformationRegionBoundaryRepository.java:210) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.updateList(FlightInformationRegionBoundaryRepository.java:90) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.SimpleDataRepository.reload(SimpleDataRepository.java:49) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel.runTimed(PreloaderViewModel.java:174) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CallableTask.call(PreloaderViewModel.java:198) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:225) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:204) ~[classes/:?]
	at javafx.concurrent.Task$TaskCallable.call(Task.java:1425) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$6(Service.java:725) ~[javafx-graphics-16-win.jar:?]
	at java.security.AccessController.doPrivileged(AccessController.java:391) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$7(Service.java:724) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?]
	at java.lang.Thread.run(Thread.java:832) [?:?]
2021-09-18 18:57:51,137 WARN  [      7326] --- [                 Thread-6] n.m.f.v.m.d.FlightInformationRegionBoundary   : Failed to merge polygons for ZYTX, trying again...
 java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0
	at jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64) ~[?:?]
	at jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70) ~[?:?]
	at jdk.internal.util.Preconditions.checkIndex(Preconditions.java:248) ~[?:?]
	at java.util.Objects.checkIndex(Objects.java:359) ~[?:?]
	at java.util.ArrayList.get(ArrayList.java:427) ~[?:?]
	at net.marvk.fs.vatsim.map.data.Polygon.mergeAlongAntimeridian(Polygon.java:334) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.Polygon.merge(Polygon.java:306) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundary.mergeInto(FlightInformationRegionBoundary.java:111) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.mergeExtensions(FlightInformationRegionBoundaryRepository.java:210) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.updateList(FlightInformationRegionBoundaryRepository.java:90) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.SimpleDataRepository.reload(SimpleDataRepository.java:49) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel.runTimed(PreloaderViewModel.java:174) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CallableTask.call(PreloaderViewModel.java:198) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:225) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:204) ~[classes/:?]
	at javafx.concurrent.Task$TaskCallable.call(Task.java:1425) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$6(Service.java:725) ~[javafx-graphics-16-win.jar:?]
	at java.security.AccessController.doPrivileged(AccessController.java:391) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$7(Service.java:724) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?]
	at java.lang.Thread.run(Thread.java:832) [?:?]
2021-09-18 18:57:51,143 WARN  [      7332] --- [                 Thread-6] n.m.f.v.m.d.FlightInformationRegionBoundary   : Failed to merge polygons for ZYTL-AR03, trying again...
 java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 8
	at net.marvk.fs.vatsim.map.data.Polygon.mergeWithLineOverlap(Polygon.java:433) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.Polygon.merge(Polygon.java:298) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundary.mergeInto(FlightInformationRegionBoundary.java:111) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.mergeExtensions(FlightInformationRegionBoundaryRepository.java:210) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.updateList(FlightInformationRegionBoundaryRepository.java:90) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.SimpleDataRepository.reload(SimpleDataRepository.java:49) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel.runTimed(PreloaderViewModel.java:174) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CallableTask.call(PreloaderViewModel.java:198) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:225) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:204) ~[classes/:?]
	at javafx.concurrent.Task$TaskCallable.call(Task.java:1425) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$6(Service.java:725) ~[javafx-graphics-16-win.jar:?]
	at java.security.AccessController.doPrivileged(AccessController.java:391) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$7(Service.java:724) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?]
	at java.lang.Thread.run(Thread.java:832) [?:?]
2021-09-18 18:57:51,143 ERROR [      7332] --- [                 Thread-6] n.m.f.v.m.d.FlightInformationRegionBoundary   : Completely failed to merge polygons for ZYTL-AR03
 java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 8
	at net.marvk.fs.vatsim.map.data.Polygon.mergeWithLineOverlap(Polygon.java:433) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.Polygon.merge(Polygon.java:298) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundary.mergeInto(FlightInformationRegionBoundary.java:116) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.mergeExtensions(FlightInformationRegionBoundaryRepository.java:210) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.updateList(FlightInformationRegionBoundaryRepository.java:90) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.SimpleDataRepository.reload(SimpleDataRepository.java:49) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel.runTimed(PreloaderViewModel.java:174) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CallableTask.call(PreloaderViewModel.java:198) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:225) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:204) ~[classes/:?]
	at javafx.concurrent.Task$TaskCallable.call(Task.java:1425) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$6(Service.java:725) ~[javafx-graphics-16-win.jar:?]
	at java.security.AccessController.doPrivileged(AccessController.java:391) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$7(Service.java:724) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?]
	at java.lang.Thread.run(Thread.java:832) [?:?]
2021-09-18 18:57:51,145 WARN  [      7334] --- [                 Thread-6] n.m.f.v.m.d.FlightInformationRegionBoundary   : Failed to merge polygons for UHPP, trying again...
 java.lang.NullPointerException: Cannot invoke "java.lang.Integer.intValue()" because the return value of "java.util.Map.get(Object)" is null
	at net.marvk.fs.vatsim.map.data.Polygon.mergeWithEndPointOverlap(Polygon.java:400) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.Polygon.merge(Polygon.java:300) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundary.mergeInto(FlightInformationRegionBoundary.java:111) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.mergeExtensions(FlightInformationRegionBoundaryRepository.java:210) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.FlightInformationRegionBoundaryRepository.updateList(FlightInformationRegionBoundaryRepository.java:90) ~[classes/:?]
	at net.marvk.fs.vatsim.map.data.SimpleDataRepository.reload(SimpleDataRepository.java:49) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel.runTimed(PreloaderViewModel.java:174) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CallableTask.call(PreloaderViewModel.java:198) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:225) ~[classes/:?]
	at net.marvk.fs.vatsim.map.view.preloader.PreloaderViewModel$CompositeTask.call(PreloaderViewModel.java:204) ~[classes/:?]
	at javafx.concurrent.Task$TaskCallable.call(Task.java:1425) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$6(Service.java:725) ~[javafx-graphics-16-win.jar:?]
	at java.security.AccessController.doPrivileged(AccessController.java:391) ~[?:?]
	at javafx.concurrent.Service.lambda$executeTask$7(Service.java:724) ~[javafx-graphics-16-win.jar:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?]
	at java.lang.Thread.run(Thread.java:832) [?:?]

marvk avatar Sep 18 '21 17:09 marvk