Hi Michaël,

do you mean the option
Options>View/Edit>Prevent edits resulting invalid geometries?

I am not understanding this option.
What is the use of drawing a selfintersection polygon?

1. In my opinion a program should never *compute* invalide
geometries like multipolygon if it is not
a valid multipolygon.

2. If a user construct an invalide geometry there
must be a warning but it should not drawn.

2. The other side is to *load* invalide geometries
from extern and have a chance to correct them.
Is this option

Options>View/Edit>Prevent edits resulting invalid geometries

for this case?

Uwe

Am 10.04.2013 08:53, schrieb Michaël Michaud:
> Hi Larry,
>
> Thanks for the input,
> I followed your suggestion to add a warning in the status bar.
> I did the test for the MultiPolygon case only though.
>
> Not sure it is useful in the general case. Maybe it would be
> better to make the plugin consistent with the edit tools option
> "accept invalid geometry". I think it is not yet.
>
> Michaël
>
>> Hi Michaël,
>>
>> Echoing what I think you are proposing:
>>
>> 1) when Combine Selected Features is invoked, a basic topology
>> validity check is done on the result.
>>
>> 2) Any errors should be reported in the status bar or the Output Window.
>>
>> 3) If an invalid geometry results from building a MultiPolygon,  a
>> GeometryCollection is built instead.
>>
>> +1 if this is the plan.  -1 if the plan is to just build a
>> GeometryCollection instead.
>>
>> regards,
>>
>> Larry
>>
>> On Tue, Apr 9, 2013 at 1:36 PM, Michaël Michaud
>> <michael.mich...@free.fr <mailto:michael.mich...@free.fr>> wrote:
>>
>>     Hi,
>>     > Is it in OJ possible to check first for valid
>>     > geometries when
>>     > "Combine Selected Features"
>>     > or is this a great problem?
>>     >
>>     > If it is a great problem maybe it is better
>>     > "Combine Selected Features"
>>     > makes always a geometrycollection?
>>     There are several points :
>>
>>     1 - in the step by step process you described, error should
>>     have been thrown while combining the two polygons, not
>>     while moving the resulted invalid multipolygon
>>
>>     2 - I agree that in this case, building a valid GeometryCollection
>>     is better than building an invalid Multipolygon, even if
>>     GeometryCollection are much less useful (many operations
>>     accepting MultiPolygon will fail on GeometryCollection).
>>     If if no one has any objection, I propose to do the change.
>>
>>     3 - you surely knows that OpenJUMP has a hidden option to
>>     accept/refuse invalid geometries during edit operations (in
>>     this case, it is of no help though)
>>
>>     Regards,
>>
>>     Michaël
>>     >
>>     > What do you think?
>>     >
>>     > Regards
>>     >
>>     > Uwe
>>     >
>>     > Am 09.04.2013 03:21, schrieb Martin Davis:
>>     >> As Michael and Stefan point out, Polygons in a MultiPolygon must be
>>     >> edge-disjoint (which another way of stating the formal
>>     definition "must
>>     >> only touch at a finite number of points".  If they touched along an
>>     >> edge, that would cause an infinite number of points to be
>>     coincident).
>>     >>
>>     >> Another way of looking at this is that MultiPolygons are in a
>>     sense the
>>     >> canonical description of a given area of the plane.  If edge
>>     touches or
>>     >> overlaps were allowed then there would be an infinite number of
>>     >> geometries which described the same area.
>>     >>
>>     >> Also, from the point of view of computing polygon overlay and
>>     spatial
>>     >> relationships this is a nice rule to have, since it reduces the
>>     number
>>     >> of cases which need to be checked for.  This makes the code
>>     simpler and
>>     >> more performant.  The cost is that it is necessary to ensure that
>>     >> MultiPolygons are valid at creation time.  This is a reasonable
>>     >> tradeoff, since in general geometries are queried more often
>>     than they
>>     >> are created.
>>     >>
>>     >> GeometryCollections on the other hand have no particular
>>     semantics -
>>     >> they are just "bags" of geometries.  This makes them useful for
>>     holding
>>     >> arbitrary sets of geometries, but makes them more complex (and
>>     sometimes
>>     >> slower) to process.
>>     >>
>>     >> On 4/8/2013 11:04 AM, Michaël Michaud wrote:
>>     >>> Hi Uwe, Stefan,
>>     >>>
>>     >>> OpenJUMP (JTS) is right, this MultiPolygon is not OGC conform
>>     >>>
>>     >>> Here is the citation :
>>     >>> Multipolygon
>>     >>> 2. The Boundaries of any 2 Polygons that are elements of a
>>     MultiPolygon
>>     >>> may not ‘cross’ and may touch
>>     >>> at only a finite number of points. (Note that crossing is
>>     prevented by
>>     >>> assertion 1 above).
>>     >>>
>>     >>> Don't ask me why, I've always thought it is strange that lines can
>>     >>> share their boundaries in a MultiLineString and polygons cannot
>>     >>> share an edge in a MultiPolygon, but it's a well established rule
>>     >>> that JTS follows.
>>     >>>
>>     >>> Michaël
>>     >>>
>>     >>>
>>     >>>> Hi Uwe,
>>     >>>>
>>     >>>> I am not sure I would call it a bug. OJ, should (try to)
>>     create data
>>     >>>> that are OGC conform, but in this case it doesn't. Which
>>     means, the
>>     >>>> case
>>     >>>> needs special treatment, but this is not implemented.
>>     >>>>
>>     >>>> That the multi-polygon causes an error is with the OGS SF
>>     >>>> specification
>>     >>>> = correct. However, that the geometry collection does not
>>     cause an
>>     >>>> error
>>     >>>> should be correct aw well, because there is, I believe,
>>     nothing said
>>     >>>> about geometry collections and their validity. Geometry
>>     collections
>>     >>>> should be allowed to have any type of geometries in what ever
>>     way they
>>     >>>> are drawn - like a "container". If we would check geometry
>>     collections
>>     >>>> for their validity it may be that people cannot store anymore
>>     the data
>>     >>>> they have. Hence, checking should be optional.
>>     >>>>
>>     >>>> But I guess here, Michael M. knows probably more about OGC
>>     >>>> conformance?
>>     >>>> I'll also cc to JTS list.
>>     >>>>
>>     >>>> cheers,
>>     >>>> stefan
>>     >>>>
>>     >>>> PS: the Multi-polygon:
>>     >>>>
>>     >>>> MULTIPOLYGON (((
>>     >>>>                 80 125,
>>     >>>>                 80 241,
>>     >>>>                 175 241,
>>     >>>>                 175 125,
>>     >>>>                 80 125
>>     >>>>             )), ((
>>     >>>>                 175 125,
>>     >>>>                 175 241,
>>     >>>>                 263 241,
>>     >>>>                 263 125,
>>     >>>>                 175 125
>>     >>>>             )))
>>     >>>>
>>     >>>> Am 08.04.13 09:48, schrieb Uwe Dalluege:
>>     >>>>> Hi Stefan,
>>     >>>>>
>>     >>>>> I am afraid I do not understand :-(
>>     >>>>> Do you think this is a bug in OJ?
>>     >>>>> The multipolygon causes an error
>>     >>>>> the geometrycollection not.
>>     >>>>>
>>     >>>>> Is this behaviour OGC-conform (simpel features...)?
>>     >>>>> What do you think?
>>     >>>>>
>>     >>>>> uwe
>>     >>>>>
>>     >>>>> Am 08.04.2013 16:36, schrieb Stefan Steiniger:
>>     >>>>>> Hi,
>>     >>>>>>
>>     >>>>>> so - well the situation is not so nice, as it should be valid.
>>     >>>>>> However,
>>     >>>>>> the JTS TestBuilder says the Multi-Polgyon is invalid
>>     because of
>>     >>>>>> "Self-intersection at or near point (175.0, 125.0, NaN)"
>>     >>>>>>
>>     >>>>>> Same message appears when you try to add it as a new feature.
>>     >>>>>>
>>     >>>>>> maybe you can make it valid before by running a zero-buffer
>>     over it?
>>     >>>>>>
>>     >>>>>> stefan
>>     >>>>>>
>>     >>>>>> Am 08.04.13 07:30, schrieb Uwe Dalluege:
>>     >>>>>>> Hi,
>>     >>>>>>>
>>     >>>>>>> if you put a third geometrie to the two polygons,
>>     >>>>>>> for instance a linestring, and combine them
>>     >>>>>>> you will receive a geometrycollection
>>     >>>>>>> and not a multipolygon.
>>     >>>>>>>
>>     >>>>>>> The geometrycollection causes *no* errors
>>     >>>>>>> but the multipolygon.
>>     >>>>>>>
>>     >>>>>>> Uwe
>>     >>>>>>>
>>     >>>>>>>
>>     >>>>>>> Am 08.04.2013 12:05, schrieb Uwe Dalluege:
>>     >>>>>>>> Hi,
>>     >>>>>>>>
>>     >>>>>>>> I get the error:
>>     >>>>>>>>
>>     >>>>>>>> "The new geometry is invalid. Cancelled."
>>     >>>>>>>> and I am not shure whether this error is correct.
>>     >>>>>>>>
>>     >>>>>>>> 1. Switch "Snap to vertices" option.
>>     >>>>>>>>
>>     >>>>>>>> 2. Draw a rectangle.
>>     >>>>>>>>
>>     >>>>>>>> 3. Draw a second rectangle with two identical
>>     >>>>>>>> vertices from the first rectangle (with snap).
>>     >>>>>>>>
>>     >>>>>>>> 4. Select the two rectangles and
>>     >>>>>>>> "Combine Selected features"
>>     >>>>>>>>
>>     >>>>>>>> 5. Try to move this multipolygon with
>>     >>>>>>>> "Move Selected Items Tool".
>>     >>>>>>>>
>>     >>>>>>>> 6. The error appears
>>     >>>>>>>> "The new geometry is invalid. Cancelled."
>>     >>>>>>>>
>>     >>>>>>>> 7. The QA>Validate Selected Layers...
>>     >>>>>>>> causes a self-intersection in *one* point.
>>     >>>>>>>>
>>     >>>>>>>> Is this a bug in OJ (a precision-problem)
>>     >>>>>>>> or is the new geometry really invalide?
>>     >>>>>>>>
>>     >>>>>>>> Uwe
>>     >>>>>>>>
>>     >>>>>>>>
>>     
>> ------------------------------------------------------------------------------
>>     >>>>>>>>
>>     >>>>>>>>
>>     >
>>     >
>>
>>
>>     
>> ------------------------------------------------------------------------------
>>     Precog is a next-generation analytics platform capable of advanced
>>     analytics on semi-structured data. The platform includes APIs for
>>     building
>>     apps and a phenomenal toolset for data science. Developers can use
>>     our toolset for easy data analysis & visualization. Get a free
>>     account!
>>     http://www2.precog.com/precogplatform/slashdotnewsletter
>>     _______________________________________________
>>     Jump-pilot-devel mailing list
>>     Jump-pilot-devel@lists.sourceforge.net
>>     <mailto:Jump-pilot-devel@lists.sourceforge.net>
>>     https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Precog is a next-generation analytics platform capable of advanced
>> analytics on semi-structured data. The platform includes APIs for building
>> apps and a phenomenal toolset for data science. Developers can use
>> our toolset for easy data analysis & visualization. Get a free account!
>> http://www2.precog.com/precogplatform/slashdotnewsletter
>>
>>
>> _______________________________________________
>> Jump-pilot-devel mailing list
>> Jump-pilot-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>
>
>
> ------------------------------------------------------------------------------
> Precog is a next-generation analytics platform capable of advanced
> analytics on semi-structured data. The platform includes APIs for building
> apps and a phenomenal toolset for data science. Developers can use
> our toolset for easy data analysis & visualization. Get a free account!
> http://www2.precog.com/precogplatform/slashdotnewsletter
>
>
>
> _______________________________________________
> Jump-pilot-devel mailing list
> Jump-pilot-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>

------------------------------------------------------------------------------
Precog is a next-generation analytics platform capable of advanced
analytics on semi-structured data. The platform includes APIs for building
apps and a phenomenal toolset for data science. Developers can use
our toolset for easy data analysis & visualization. Get a free account!
http://www2.precog.com/precogplatform/slashdotnewsletter
_______________________________________________
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to