Comments (3)
If you define a ring as non closed and then you omit the repeated point it is a valid geometry. If you define a ring as closed and then you omit the repeated point the geometry is non valid. You can run correct
algorithm and then the geometry will be corrected to have the repeated point. So I think everything is as expected here.
Interestingly though, if you define a geometry to be open (as in your case) and you include the repeated point in the creation then the geometry is valid. @barendgehrels is this intended?
from geometry.
If you define a ring as non closed and then you omit the repeated point it is a valid geometry. If you define a ring as closed and then you omit the repeated point the geometry is non valid. You can run
correct
algorithm and then the geometry will be corrected to have the repeated point. So I think everything is as expected here.Interestingly though, if you define a geometry to be open (as in your case) and you include the repeated point in the creation then the geometry is valid. @barendgehrels is this intended?
Thanks a lot for your answer,
My point is that a non closed ring is an oxymoron.
If I follow you a non closed ring (a ring with template parameter set as non closed) is just non closed and a synonym of a linestring ?
Or it is a ring. So it is closed but by convinience the last point can be omitted in case of a "non closed" ring (by setting the template parameter)
In that case I suppose the result of valid ring (closed and non closed) shouldn't change because it model the same concept
from geometry.
The correct case is the second case you mentioned. A non closed ring is not a linestring.
from geometry.
Related Issues (20)
- within returns a wrong result with multi-linestrings
- static assertion failed: Not implemented for this Geometry's coordinate system HOT 1
- difference returns wrong results if double is the data type HOT 1
- Difference returns wrong result if hole touch the boundary of subtrahend HOT 2
- [Question] Get edges intersected with bounding boxes using boost::geometry::index::intersects HOT 2
- `boost::geometry::buffer()` of linestring returns inner polygon HOT 3
- Intersection gives incorrect result for polygon and line HOT 1
- Difference failed on two simple integer multi polygons (integral geometries cannot represent non-integral vertices/intersections) HOT 7
- Compilation Error with Boost.Geometry and NVCC (CUDA 12.4): '__T0' does not name a type HOT 3
- Buffer gives incorrect result for negative distance HOT 2
- VS2015(C++14 partly) cannot use this geometry HOT 1
- rtree extern template instantiation with interprocess compile error
- Union of a multipolygon and a polygon outputs empty multipolygon HOT 4
- Cannot make 'point_on_surface' compile HOT 4
- Incorrect results for geometries or inputs in geographic coordinate system at the edges longitude-latitude range HOT 7
- 1.80+ - Buffer out-then-in for round polygon produces multiple polygons with small "stubs" HOT 2
- Test libraries and executables should be declared EXCLUDE_FROM_ALL
- Negative buffer on MultiPolygon loses precision in area calculation HOT 5
- Type/Value mismatch in the point_xy.hpp file HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from geometry.