Buffering Polygon Produces Strange Hole

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Buffering Polygon Produces Strange Hole

Stephen Wong
Hello,

I used the JTS Test Builder (/bin/testbuilder.bat) on Windows and came across a strange hole in a buffered donut. Can anyone justify the hole or determine why it exists?  See screenshot. The input geometry used is below (just copy it into Input A).

POLYGON ((104347.913797701 460046.222411423 -2.57857846164703,104343.194931314 460045.01099316 -2.57857846164703,104337.238927879 460047.492539769 -2.57857846164703,104332.171430505 460048.27858917 -2.57857846164703,104326.912145221 460048.981760041 -1.35382506227493,104319.37715744 460046.769154654 -1.32865458774567,104318.835373424 460047.857041838 -1.32865458774567,104318.15032141 460049.79221103 -1.32865458774567,104316.45049775 460054.593957915 -1.36065260505676,104316.242092573 460055.166513849 -1.3953137254715,104323.454977054 460057.932515592 -1.3953137254715,104327.610938669 460059.617703701 -2.57857846164703,104331.699083779 460061.077439501 -2.57857846164703,104335.762333798 460062.599453946 -2.57857846164703,104340.831685606 460064.523223713 -2.57857846164703,104342.798720951 460059.7157002 -1.11266797161102,104345.822688362 460051.555808305 -1.11266797161102,104346.00516978 460051.090387482 -2.57857846164703,104365.77432273 460072.264829035 -1.01276668262482,104365.160178146 460073.41351613 -0.986683636665344,104364.606860223 460075.281783528 -2.57857846164703,104364.550267698 460077.351706971 -2.57857846164703,104365.072589018 460079.71356977 -2.57857846164703,104365.728740032 460080.546208005 -2.57857846164703,104365.368371687 460085.224396179 -2.57857846164703,104366.420754483 460088.146777958 -2.57857846164703,104368.225588501 460090.053075788 -2.57857846164703,104376.066149172 460095.551742262 -2.57857846164703,104384.158303817 460100.518198769 -2.57857846164703,104386.171556504 460101.153418996 -2.57857846164703,104388.211936718 460101.510696196 -2.57857846164703,104389.409253843 460101.543431319 -2.57857846164703,104389.969666471 460101.368667728 -1.38065136623383,104391.540229866 460100.707388119 -1.35665285301208,104393.339446006 460100.756579399 -1.28865706634522,104394.489102596 460101.148123674 -1.23666028881073,104396.37984485 460102.240141476 -1.16866450214386,104399.318415741 460104.521168892 -1.01667392015457,104399.937367383 460105.298328161 -1.02067367172241,104405.057398192 460109.597112765 -2.57857846164703,104409.005137034 460113.144402142 -2.57140686988831,104412.22665058 460115.879663597 -2.57857846164703,104417.196880599 460120.271519415 -2.57857846164703,104417.412771384 460120.300638409 -1.24066004085541,104419.454713625 460122.167706058 -1.24066004085541,104422.434710498 460123.951479456 -2.57857846164703,104429.060853467 460128.128412407 -2.57857846164703,104435.646029312 460131.831841485 -2.57857846164703,104437.801863133 460133.184910396 -2.57857846164703,104438.633160048 460133.787696553 -2.57857846164703,104438.820860057 460134.312372242 -2.57857846164703,104438.92808929 460135.020605639 -2.57857846164703,104438.926058539 460135.709419503 -2.57857846164703,104438.773868459 460136.362063807 -2.57857846164703,104438.675146514 460136.565638975 -2.57857846164703,104442.932915681 460139.244595669 -2.57857846164703,104445.456996792 460140.884876387 -2.57857846164703,104448.037762743 460142.537595625 -2.57857846164703,104452.955972208 460145.265708014 -2.57857846164703,104453.958452124 460144.979979989 -2.57857846164703,104454.95889406 460144.916540877 -2.57857846164703,104455.582171469 460144.933581528 -2.57857846164703,104456.045388565 460145.073622211 -2.57857846164703,104457.629420734 460145.705162463 -2.57857846164703,104460.911842283 460147.276873675 -2.57857846164703,104466.188865146 460150.4045313 -2.57857846164703,104474.579473908 460156.053717116 -2.57857846164703,104481.502589868 460160.601833498 -2.57857846164703,104490.214428316 460165.74917032 -2.57857846164703,104498.940411567 460171.201335129 -2.57857846164703,104505.408725476 460175.21884282 -2.57857846164703,104507.080491612 460176.10821304 -2.57857846164703,104510.812350178 460178.478290215 -2.57857846164703,104513.015757983 460180.055355846 -2.57857846164703,104514.238199142 460181.17008269 -2.57857846164703,104515.202632378 460182.202363403 -2.57857846164703,104515.013725421 460182.553432405 -2.57857846164703,104515.056915713 460182.784359439 -1.90061914634705,104519.017062907 460185.665476146 -2.57857846164703,104522.328336857 460188.052026222 -2.57857846164703,104525.512623921 460190.345554156 -2.57857846164703,104529.574953753 460193.260604827 -2.57857846164703,104530.206470985 460193.001273948 -2.57857846164703,104531.057670866 460192.79006216 -2.57857846164703,104531.428219005 460192.782744651 -2.57857846164703,104532.35234346 460192.908501641 -2.57857846164703,104533.920672976 460193.105677465 -2.57857846164703,104535.500669478 460193.557881086 -2.57857846164703,104542.622325801 460197.960497089 -2.57857846164703,104552.187997914 460204.292036902 -2.57857846164703,104560.76906088 460209.600418202 -2.57857846164703,104562.634499588 460210.545594411 -1.40634685993195,104562.887832893 460210.363597241 -1.38865087032318,104563.996489262 460209.781629244 -1.42864839172363,104564.633955732 460209.649024726 -1.45664665699005,104565.481637042 460210.032338086 -1.50064393091202,104566.215318231 460210.500802861 -1.55331948184967,104567.878895219 460209.748623363 -2.57857846164703,104569.634353553 460207.815699225 -2.57857846164703,104569.653640345 460207.818659105 -2.57857846164703,104569.793134507 460207.546876324 -1.57263946962357,104570.265903824 460207.177492293 -1.58063897418976,104570.666590781 460207.209584929 -1.58063897418976,104571.314323467 460207.596846833 -1.58463872623444,104571.719748678 460207.868877817 -1.61263699102402,104572.281973952 460207.977791067 -1.60063773441315,104572.60189175 460207.971473395 -1.58863847827911,104574.305655737 460207.137721415 -1.58063897418976,104575.761436933 460205.785322866 -1.61240038299561,104576.505594878 460205.094011474 -1.62863599967957,104577.782611513 460202.90850594 -1.61263699102402,104578.948345772 460201.165256506 -1.70863104248047,104578.977819808 460201.084408741 -1.71121975469589,104579.403741492 460199.91609853 -1.74862856435776,104579.590265064 460199.232324664 -1.74862856435776,104579.576840012 460198.552499342 -1.76062782096863,104579.321107484 460197.7574431 -1.76462757301331,104578.415273144 460196.455155779 -1.76062782096863,104576.406430197 460194.297925071 -1.67268799686432,104573.077115869 460191.519902327 -1.57263946962357,104563.797064005 460185.502338333 -1.52064269161224,104554.689466951 460179.771569846 -1.59772275161743,104549.622603388 460176.239808857 -1.45978450345993,104545.845152769 460173.91892939 -1.43112466239929,104539.869043925 460169.613233738 -1.36902833890915,104534.147507118 460165.953472037 -1.47172610425949,104528.262268515 460162.49561276 -1.3785816192627,104523.515380921 460159.594344381 -1.40724146080017,104515.82663594 460155.059656281 -1.45739618301392,104508.995406838 460150.620089381 -1.31170865631103,104502.031029969 460146.604078246 -1.27665781021118,104500.357349913 460145.286732164 -1.27665781021118,104496.250212464 460142.807770846 -2.57857846164703,104490.788669429 460139.967989408 -2.57857846164703,104479.630607566 460132.803246204 -2.57857846164703,104466.137222849 460124.368475208 -2.57857846164703,104453.954710889 460116.859286964 -2.57857846164703,104442.611014418 460109.941799127 -2.57857846164703,104429.821900164 460102.13359674 -2.57857846164703,104422.156492129 460097.255743355 -2.57857846164703,104420.097968019 460097.384597734 -1.2703140039444,104417.653490074 460097.238946473 -1.38495336914063,104417.223842071 460097.247290285 -1.38495336914063,104415.723358244 460097.194806567 -1.42077817153931,104415.210861192 460097.091291831 -1.22254760169983,104409.776900848 460093.876978693 -1.44704969215393,104401.634821363 460088.445887593 -1.46854457378387,104401.121989119 460087.977916166 -1.47093289375305,104400.925397102 460087.303561739 -1.44466137218475,104400.763649462 460085.510941758 -1.22015928125381,104400.498448701 460084.568186457 -1.22015928125381,104400.2924086 460083.882883878 -2.57857846164703,104398.07872406 460082.481891689 -2.57857846164703,104388.406147209 460076.73010311 -2.57857846164703,104384.080241764 460073.607600138 -2.57857846164703,104381.091812357 460072.257386548 -1.12913215732574,104378.912508334 460071.137034771 -1.13266673278809,104376.780777455 460070.078440712 -1.12466722822189,104375.471190541 460069.682523879 -1.12466722822189,104373.837370422 460069.437792252 -1.12066747617722,104371.95818912 460069.386414693 -1.12066747617722,104369.515972267 460069.439680923 -1.12466722822189,104368.711948091 460069.577748455 -1.1166677236557,104368.087654727 460069.789753018 -1.1166677236557,104347.372757844 460047.602339402 -2.57857846164703,104347.913797701 460046.222411423 -2.57857846164703))

Thanks,

Stephen

_______________________________________________
jts-devel mailing list
[hidden email]
http://lists.refractions.net/mailman/listinfo/jts-devel

jts-builder.jpg (89K) Download Attachment
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Buffering Polygon Produces Strange Hole

Martin Davis
This is probably due to some round-off error during the computation of
the buffer outline.  It doesn't occur for quadrantSegments >= 5 - can
you use a higher value for this parameter?

Stephen Wong wrote:

> Hello,
>
> I used the JTS Test Builder (/bin/testbuilder.bat) on Windows and came
> across a strange hole in a buffered donut. Can anyone justify the hole
> or determine why it exists?  See screenshot. The input geometry used
> is below (just copy it into Input A).
>
>
>
> Thanks,
>
> Stephen
>
> ------------------------------------------------------------------------
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> jts-devel mailing list
> [hidden email]
> http://lists.refractions.net/mailman/listinfo/jts-devel
>  

--
Martin Davis
Senior Technical Architect
Refractions Research, Inc.
(250) 383-3022

_______________________________________________
jts-devel mailing list
[hidden email]
http://lists.refractions.net/mailman/listinfo/jts-devel
Loading...