source: josm/trunk/test/data/regress/17695/bib2.osm@ 15069

Last change on this file since 15069 was 15069, checked in by GerdP, 5 years ago

fix #17695

  • add support to find multipolygon inside polygon or multipolygon with ContainsFinder
  • add some unit tests
  • performance_1: improve isPolygonInsideMultiPolygon() by using the areas calculated

in MultipolygonBuilder.joinWays() instead of calling getArea() again.

  • performance_2: improve isPolygonInsideMultiPolygon() by first checking bounding boxes (helps with complex MP containing many inners as it avoids the Area.intersect() method)
  • performance_3: implement new methods to reuse result of complex method MultipolygonBuilder.joinWays() in ContainsFinder
File size: 11.8 KB
Line 
1<?xml version='1.0' encoding='UTF-8'?>
2<osm version='0.6' generator='JOSM' upload='never'>
3 <node id='-102236' action='modify' visible='true' lat='52.89733676698' lon='8.4603267498' />
4 <node id='-102238' action='modify' visible='true' lat='52.89732696084' lon='8.46285139425' />
5 <node id='-102242' action='modify' visible='true' lat='52.89615602196' lon='8.46303385762' />
6 <node id='-102244' action='modify' visible='true' lat='52.89611905028' lon='8.46044047743' />
7 <node id='-102248' action='modify' visible='true' lat='52.89715816378' lon='8.4608902313' />
8 <node id='-102250' action='modify' visible='true' lat='52.89711883103' lon='8.46193285455' />
9 <node id='-102252' action='modify' visible='true' lat='52.89643633706' lon='8.46202305064' />
10 <node id='-102254' action='modify' visible='true' lat='52.89648815049' lon='8.46079534734' />
11 <node id='-102292' action='modify' visible='true' lat='52.89718353496' lon='8.46227297414' />
12 <node id='-102294' action='modify' visible='true' lat='52.8968188065' lon='8.46230807347' />
13 <node id='-102296' action='modify' visible='true' lat='52.89682975541' lon='8.46262071435' />
14 <node id='-102298' action='modify' visible='true' lat='52.89719448378' lon='8.46258561501' />
15 <node id='-102333' action='modify' visible='true' lat='52.89619435334' lon='8.46625117412' />
16 <node id='-102335' action='modify' visible='true' lat='52.89615738169' lon='8.46365779393' />
17 <node id='-102337' action='modify' visible='true' lat='52.89719649427' lon='8.46410754779' />
18 <node id='-102339' action='modify' visible='true' lat='52.89715716156' lon='8.46515017105' />
19 <node id='-102341' action='modify' visible='true' lat='52.89647466818' lon='8.46524036714' />
20 <node id='-102343' action='modify' visible='true' lat='52.89652648157' lon='8.46401266384' />
21 <node id='-102345' action='modify' visible='true' lat='52.89722186543' lon='8.46549029064' />
22 <node id='-102347' action='modify' visible='true' lat='52.89686808619' lon='8.46583803084' />
23 <node id='-102349' action='modify' visible='true' lat='52.89685713729' lon='8.46552538997' />
24 <node id='-102351' action='modify' visible='true' lat='52.89723281424' lon='8.46580293151' />
25 <node id='-102353' action='modify' visible='true' lat='52.89737509731' lon='8.46354406629' />
26 <node id='-102355' action='modify' visible='true' lat='52.89736529118' lon='8.46606871075' />
27 <node id='-102459' action='modify' visible='true' lat='52.89540612124' lon='8.46420574137' />
28 <node id='-102461' action='modify' visible='true' lat='52.89536678691' lon='8.46524836462' />
29 <node id='-102463' action='modify' visible='true' lat='52.89468426533' lon='8.46533856071' />
30 <node id='-102465' action='modify' visible='true' lat='52.89473608086' lon='8.46411085741' />
31 <node id='-102467' action='modify' visible='true' lat='52.89527712192' lon='8.4645123706' />
32 <node id='-102469' action='modify' visible='true' lat='52.89492332681' lon='8.46486011081' />
33 <node id='-102471' action='modify' visible='true' lat='52.89491237741' lon='8.46454746994' />
34 <node id='-102473' action='modify' visible='true' lat='52.89528807122' lon='8.46482501148' />
35 <node id='-102475' action='modify' visible='true' lat='52.89558473166' lon='8.46364225987' />
36 <node id='-102477' action='modify' visible='true' lat='52.89557492512' lon='8.46616690432' />
37 <node id='-102479' action='modify' visible='true' lat='52.89440393891' lon='8.46634936769' />
38 <node id='-102481' action='modify' visible='true' lat='52.89436696574' lon='8.4637559875' />
39 <node id='-105602' action='modify' visible='true' lat='52.89549777816' lon='8.46058045197' />
40 <node id='-105604' action='modify' visible='true' lat='52.89552727685' lon='8.4630351299' />
41 <node id='-105606' action='modify' visible='true' lat='52.89439143731' lon='8.46307263546' />
42 <node id='-105608' action='modify' visible='true' lat='52.89436193784' lon='8.46061795753' />
43 <node id='-105610' action='modify' visible='true' lat='52.89523228897' lon='8.46092273774' />
44 <node id='-105612' action='modify' visible='true' lat='52.89524408852' lon='8.46232121959' />
45 <node id='-105614' action='modify' visible='true' lat='52.89465232478' lon='8.46233493865' />
46 <node id='-105616' action='modify' visible='true' lat='52.89464052506' lon='8.46093645681' />
47 <node id='-105623' action='modify' visible='true' lat='52.89498154473' lon='8.46127480799' />
48 <node id='-105625' action='modify' visible='true' lat='52.89498690023' lon='8.46190953673' />
49 <node id='-105627' action='modify' visible='true' lat='52.89494614585' lon='8.46191048156' />
50 <node id='-105629' action='modify' visible='true' lat='52.89494079035' lon='8.46127575281' />
51 <node id='-105912' action='modify' visible='true' lat='52.8935794489' lon='8.46089783301' />
52 <node id='-105914' action='modify' visible='true' lat='52.89392562521' lon='8.46177079193' />
53 <node id='-105916' action='modify' visible='true' lat='52.89341244577' lon='8.46252214927' />
54 <node id='-105918' action='modify' visible='true' lat='52.8930092104' lon='8.46148875658' />
55 <node id='-105920' action='modify' visible='true' lat='52.89363423585' lon='8.46133294523' />
56 <node id='-105922' action='modify' visible='true' lat='52.89373812737' lon='8.46159451477' />
57 <node id='-105924' action='modify' visible='true' lat='52.89343295493' lon='8.46192753951' />
58 <node id='-105926' action='modify' visible='true' lat='52.89332906269' lon='8.46166596997' />
59 <node id='-106033' action='modify' visible='true' lat='52.89362388571' lon='8.46152785035' />
60 <node id='-106035' action='modify' visible='true' lat='52.89361503572' lon='8.46171855242' />
61 <node id='-106037' action='modify' visible='true' lat='52.89347562201' lon='8.46170077657' />
62 <node id='-106039' action='modify' visible='true' lat='52.89348447203' lon='8.4615100745' />
63 <node id='-106656' action='modify' visible='true' lat='52.89385092093' lon='8.46480705795' />
64 <node id='-106657' action='modify' visible='true' lat='52.89354574929' lon='8.46514008269' />
65 <node id='-106659' action='modify' visible='true' lat='52.89344185732' lon='8.46487851314' />
66 <node id='-106665' action='modify' visible='true' lat='52.89374436656' lon='8.46413369749' />
67 <node id='-106667' action='modify' visible='true' lat='52.89402866691' lon='8.46506602807' />
68 <node id='-106668' action='modify' visible='true' lat='52.89346745157' lon='8.46571621045' />
69 <node id='-106669' action='modify' visible='true' lat='52.89313742214' lon='8.46461376748' />
70 <node id='-106670' action='modify' visible='true' lat='52.89374702969' lon='8.46454548841' />
71 <node id='-106718' action='modify' visible='true' lat='52.89363848503' lon='8.46489167529'>
72 <tag k='building' v='yes' />
73 </node>
74 <way id='-106040' action='modify' visible='true'>
75 <nd ref='-102236' />
76 <nd ref='-102238' />
77 <nd ref='-102242' />
78 <nd ref='-102244' />
79 <nd ref='-102236' />
80 </way>
81 <way id='-106041' action='modify' visible='true'>
82 <nd ref='-102248' />
83 <nd ref='-102250' />
84 <nd ref='-102252' />
85 <nd ref='-102254' />
86 <nd ref='-102248' />
87 <tag k='building' v='yes' />
88 </way>
89 <way id='-106042' action='modify' visible='true'>
90 <nd ref='-102292' />
91 <nd ref='-102298' />
92 <nd ref='-102296' />
93 <nd ref='-102294' />
94 <nd ref='-102292' />
95 </way>
96 <way id='-106043' action='modify' visible='true'>
97 <nd ref='-102337' />
98 <nd ref='-102339' />
99 <nd ref='-102341' />
100 <nd ref='-102343' />
101 <nd ref='-102337' />
102 <tag k='building' v='yes' />
103 </way>
104 <way id='-106044' action='modify' visible='true'>
105 <nd ref='-102345' />
106 <nd ref='-102351' />
107 <nd ref='-102347' />
108 <nd ref='-102349' />
109 <nd ref='-102345' />
110 </way>
111 <way id='-106045' action='modify' visible='true'>
112 <nd ref='-102353' />
113 <nd ref='-102355' />
114 <nd ref='-102333' />
115 <nd ref='-102335' />
116 <nd ref='-102353' />
117 <tag k='building' v='yes' />
118 </way>
119 <way id='-106046' action='modify' visible='true'>
120 <nd ref='-102467' />
121 <nd ref='-102473' />
122 <nd ref='-102469' />
123 <nd ref='-102471' />
124 <nd ref='-102467' />
125 </way>
126 <way id='-106047' action='modify' visible='true'>
127 <nd ref='-102459' />
128 <nd ref='-102461' />
129 <nd ref='-102463' />
130 <nd ref='-102465' />
131 <nd ref='-102459' />
132 <tag k='building' v='yes' />
133 </way>
134 <way id='-106048' action='modify' visible='true'>
135 <nd ref='-102475' />
136 <nd ref='-102477' />
137 <nd ref='-102479' />
138 <nd ref='-102481' />
139 <nd ref='-102475' />
140 <tag k='building' v='yes' />
141 </way>
142 <way id='-106049' action='modify' visible='true'>
143 <nd ref='-105602' />
144 <nd ref='-105604' />
145 <nd ref='-105606' />
146 <nd ref='-105608' />
147 <nd ref='-105602' />
148 <tag k='building' v='yes' />
149 </way>
150 <way id='-106050' action='modify' visible='true'>
151 <nd ref='-105610' />
152 <nd ref='-105612' />
153 <nd ref='-105614' />
154 <nd ref='-105616' />
155 <nd ref='-105610' />
156 </way>
157 <way id='-106051' action='modify' visible='true'>
158 <nd ref='-105623' />
159 <nd ref='-105625' />
160 <nd ref='-105627' />
161 <nd ref='-105629' />
162 <nd ref='-105623' />
163 </way>
164 <way id='-106052' action='modify' visible='true'>
165 <nd ref='-105912' />
166 <nd ref='-105914' />
167 <nd ref='-105916' />
168 <nd ref='-105918' />
169 <nd ref='-105912' />
170 </way>
171 <way id='-106053' action='modify' visible='true'>
172 <nd ref='-105920' />
173 <nd ref='-105922' />
174 <nd ref='-105924' />
175 <nd ref='-105926' />
176 <nd ref='-105920' />
177 <tag k='building' v='yes' />
178 </way>
179 <way id='-106054' action='modify' visible='true'>
180 <nd ref='-106033' />
181 <nd ref='-106035' />
182 <nd ref='-106037' />
183 <nd ref='-106039' />
184 <nd ref='-106033' />
185 <tag k='building' v='yes' />
186 </way>
187 <way id='-106658' action='modify' visible='true'>
188 <nd ref='-106665' />
189 <nd ref='-106667' />
190 <nd ref='-106668' />
191 <nd ref='-106669' />
192 <nd ref='-106665' />
193 </way>
194 <way id='-106661' action='modify' visible='true'>
195 <nd ref='-106670' />
196 <nd ref='-106656' />
197 <nd ref='-106657' />
198 <nd ref='-106659' />
199 <nd ref='-106670' />
200 <tag k='building' v='yes' />
201 </way>
202 <relation id='-106055' action='modify' visible='true'>
203 <member type='way' ref='-106040' role='outer' />
204 <member type='way' ref='-106042' role='inner' />
205 <tag k='building' v='yes' />
206 <tag k='name' v='R1' />
207 <tag k='type' v='multipolygon' />
208 </relation>
209 <relation id='-106056' action='modify' visible='true'>
210 <member type='way' ref='-106045' role='outer' />
211 <member type='way' ref='-106044' role='inner' />
212 <tag k='name' v='R2' />
213 <tag k='type' v='multipolygon' />
214 </relation>
215 <relation id='-106057' action='modify' visible='true'>
216 <member type='way' ref='-106047' role='outer' />
217 <member type='way' ref='-106046' role='inner' />
218 <tag k='name' v='R4' />
219 <tag k='type' v='multipolygon' />
220 </relation>
221 <relation id='-106058' action='modify' visible='true'>
222 <member type='way' ref='-106050' role='outer' />
223 <member type='way' ref='-106051' role='inner' />
224 <tag k='building' v='yes' />
225 <tag k='name' v='R3' />
226 <tag k='type' v='multipolygon' />
227 </relation>
228 <relation id='-106059' action='modify' visible='true'>
229 <member type='way' ref='-106052' role='outer' />
230 <member type='way' ref='-106053' role='inner' />
231 <tag k='amenity' v='parking' />
232 <tag k='name' v='R5' />
233 <tag k='type' v='multipolygon' />
234 </relation>
235 <relation id='-106856' action='modify' visible='true'>
236 <member type='way' ref='-106658' role='outer' />
237 <member type='way' ref='-106661' role='inner' />
238 <tag k='amenity' v='parking' />
239 <tag k='name' v='R6' />
240 <tag k='type' v='multipolygon' />
241 </relation>
242</osm>
Note: See TracBrowser for help on using the repository browser.