Modify

Opened 7 years ago

Closed 6 years ago

Last modified 6 years ago

#7959 closed defect (fixed)

[patch] join areas exception

Reported by: Larry0ua Owned by: team
Priority: major Milestone: 14.04
Component: Core Version: latest
Keywords: Cc: Balaitous

Description

While merging two polygons (BBOX 25.8947754,48.3082036,25.917263,48.3139691, IDs: way 86633791, way 86633396) exception occurs. Please do not upload merged polygon as it may be useful for further testing.

Repository Root: http://josm.openstreetmap.de/svn
Build-Date: 2012-08-12 01:31:10
Last Changed Author: Don-vip
Revision: 5433
Repository UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
URL: http://josm.openstreetmap.de/svn/trunk
Last Changed Date: 2012-08-12 02:49:21 +0200 (Sun, 12 Aug 2012)
Last Changed Rev: 5433

Identification: JOSM/1.5 (5433 en)
Memory Usage: 62 MB / 247 MB (16 MB allocated, but free)
Java version: 1.7.0_05, Oracle Corporation, Java HotSpot(TM) Client VM
Operating system: Windows NT (unknown)
Dataset consistency test: No problems found

Plugin: FastDraw (28412)
Plugin: OpeningHoursEditor (28477)
Plugin: PicLayer (27883)
Plugin: buildings_tools (28529)
Plugin: reltoolbox (28412)
Plugin: reverter (28535)
Plugin: utilsplugin2 (28523)
Plugin: wikipedia (28506)

java.lang.RuntimeException: Join areas internal error.
	at org.openstreetmap.josm.actions.JoinAreasAction.findBoundaryPolygons(JoinAreasAction.java:1015)
	at org.openstreetmap.josm.actions.JoinAreasAction.joinAreas(JoinAreasAction.java:470)
	at org.openstreetmap.josm.actions.JoinAreasAction.actionPerformed(JoinAreasAction.java:364)
	at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1661)
	at javax.swing.JComponent.processKeyBinding(JComponent.java:2879)
	at javax.swing.KeyboardManager.fireBinding(KeyboardManager.java:306)
	at javax.swing.KeyboardManager.fireKeyboardAction(KeyboardManager.java:263)
	at javax.swing.JComponent.processKeyBindingsForAllComponents(JComponent.java:2971)
	at javax.swing.JComponent.processKeyBindings(JComponent.java:2963)
	at javax.swing.JComponent.processKeyEvent(JComponent.java:2842)
	at java.awt.Component.processEvent(Component.java:6282)
	at java.awt.Container.processEvent(Container.java:2229)
	at java.awt.Component.dispatchEventImpl(Component.java:4861)
	at java.awt.Container.dispatchEventImpl(Container.java:2287)
	at java.awt.Component.dispatchEvent(Component.java:4687)
	at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1893)
	at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:752)
	at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1017)
	at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:889)
	at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:717)
	at java.awt.Component.dispatchEventImpl(Component.java:4731)
	at java.awt.Container.dispatchEventImpl(Container.java:2287)
	at java.awt.Window.dispatchEventImpl(Window.java:2719)
	at java.awt.Component.dispatchEvent(Component.java:4687)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:703)
	at java.awt.EventQueue.access$000(EventQueue.java:102)
	at java.awt.EventQueue$3.run(EventQueue.java:662)
	at java.awt.EventQueue$3.run(EventQueue.java:660)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.awt.EventQueue$4.run(EventQueue.java:676)
	at java.awt.EventQueue$4.run(EventQueue.java:674)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:673)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:97)

Attachments (3)

bad_polygons.osm (73.0 KB) - added by Larry0ua 7 years ago.
file reproducing the bug
bad_polygons-simplified.osm (1.7 KB) - added by AlfonZ 7 years ago.
Simplified file
ticket7959_2014-04-13_17:06:56_+0200.patch (14.6 KB) - added by Balaitous 6 years ago.
Need to be test

Download all attachments as: .zip

Change History (19)

comment:1 Changed 7 years ago by Larry0ua

this error looks like in #5747, but as that is old ticket I preferred opening new one.

comment:2 Changed 7 years ago by stoecker

Can you extract the polygons and attach an osm file, which only contains the minimum data to reproduce this error?

Changed 7 years ago by Larry0ua

Attachment: bad_polygons.osm added

file reproducing the bug

Changed 7 years ago by AlfonZ

Attachment: bad_polygons-simplified.osm added

Simplified file

comment:3 Changed 7 years ago by AlfonZ

I have attached simplified file. It seems the precise position of four nodes (I have named them 1-4) is crucial for reproducibility.

comment:4 Changed 7 years ago by Larry0ua

so the problem is with code related to intersecting vertical lines. Unfortunately we found two polygons with several points in one vertical line...

comment:5 Changed 7 years ago by Don-vip

Ticket #5966 has been marked as a duplicate of this ticket.

comment:6 Changed 7 years ago by Don-vip

Ticket #8044 has been marked as a duplicate of this ticket.

comment:7 Changed 6 years ago by Don-vip

Cc: Balaitous added

@Balaitous: I think you should like this one :)

comment:8 Changed 6 years ago by Balaitous

Ticket #9911 has been marked as a duplicate of this ticket.

comment:9 Changed 6 years ago by Balaitous

I will look at this

Changed 6 years ago by Balaitous

Need to be test

comment:10 Changed 6 years ago by Balaitous

Not easy, but work with test case ticket:7959:bad_polygons-simplified.osm.
#9911 is not the same case. The test case associate ticket:9911:join.osm.bz2 is a broken dataset (but good improvement for the algorithm !). Now it doesn't raise an error.

Last edited 6 years ago by stoecker (previous) (diff)

comment:11 Changed 6 years ago by Balaitous

Summary: join areas exception[patch] join areas exception

comment:12 Changed 6 years ago by Balaitous

Resolution: fixed
Status: newclosed

In 6976/josm:

fix #7959: join areas exception

comment:13 Changed 6 years ago by Don-vip

Milestone: 14.04

comment:14 Changed 6 years ago by anonymous

Problem is still present in v. 7000

comment:15 Changed 6 years ago by Don-vip

if it's still present, please attach a sample file showing the problem.

comment:16 Changed 6 years ago by akks

see also #9951 (incorrect merging results)

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain team.
as The resolution will be set.
The resolution will be deleted.

Add Comment


E-mail address and name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.