<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
thanks a lot<br>
<br>
<div class="moz-cite-prefix">On 06/05/2015 11:20 AM, Marco
Hugentobler wrote:<br>
</div>
<blockquote cite="mid:557169C9.5090104@sourcepole.ch" type="cite">
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<div class="moz-cite-prefix">On 05.06.2015 09:17, Denis Rouzaud
wrote:<br>
</div>
<blockquote
cite="mid:CAMtsY+a8Dqo3AG1cdwEOMiyG+40yKi8KHdyRuJzd2fF+UDbmTg@mail.gmail.com"
type="cite">
<div dir="ltr">Hi Marco,
<div><br>
</div>
<div>Can you tell me if these two issues are related to your
work?</div>
<div><a moz-do-not-send="true"
href="http://hub.qgis.org/issues/12885">http://hub.qgis.org/issues/12885</a><br>
</div>
<div><a moz-do-not-send="true"
href="http://hub.qgis.org/issues/12886">http://hub.qgis.org/issues/12886</a><br>
</div>
</div>
</blockquote>
<br>
I think so, therefore assigned the tickets to me.<br>
<br>
Regards,<br>
Marco<br>
<br>
<br>
<blockquote
cite="mid:CAMtsY+a8Dqo3AG1cdwEOMiyG+40yKi8KHdyRuJzd2fF+UDbmTg@mail.gmail.com"
type="cite">
<div dir="ltr">
<div><br>
</div>
<div>Thanks a lot,</div>
<div>Denis</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">2015-06-04 15:52 GMT+02:00 Marco
Hugentobler <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:marco.hugentobler@sourcepole.ch"
target="_blank">marco.hugentobler@sourcepole.ch</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Nyall<span
class=""><br>
<br>
>Firstly, I *think* that there's an issue with the<br>
>inheritance of some of the classes. Specifically
QgsMultiLineStringV2<br>
>and QgsMultiPolygonV2. Currently both of these
derive from<br>
>QgsGeometryCollectionV2, but I think they should
derive from<br>
>QgsMultiCurveV2 and QgsMultiSurfaceV2. This would
seem logical to me<br>
>since QgsLineStringV2 derives from QgsCurveV2 and
QgsPolygonV2 derives<br>
>from QgsCurvePolygonV2. It also would match with how
I understand the<br>
>OGC simple features access specification describes
(see 6.1.8.1 -<br>
>MultiCurve should be non-instantiable, 6.1.9
multiline is a<br>
>multicurve, and 6.1.13.1 and 6.1.14 for the
corresponding<br>
>multisurface/multipolygon types). What's your
thoughts?<br>
<br>
</span> Yes, in the ISO and OGC models, MultiPolygon
inherits from MultiSurface and MultiLineString from
MultiCurve. The implementation of the geometryV2 classes
differs a bit compared to the model, because most methods
are implemented on GeometryCollection level (e.g. in the
ISO model, length() and area() are not in the collection
class). So there is little practical relevance if
QgsMultiPolygon is derived from MultiSurface (and
overwrites all its methods) or from GeometryCollection.
One exception is the segmentize() method. By default
(straight geometries), this is equal to a normal clone().
As MultiSurface needs to overwrite it (may contain curved
geometries), MultiPolygon would need to overwrite it again
with the default behaviour if it was derived from
MultiSurface.<br>
<br>
>MultiCurve should be non-instantiable<br>
<br>
In the OGC model, it is non-instantiable. In the ISO model
(which is relevant here), it is left to the implementation
if it is instantiable or not.<br>
<br>
Regards,<br>
Marco
<div class="HOEnZb">
<div class="h5"><br>
<br>
On 03.06.2015 09:05, Marco Hugentobler wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi Nyall<br>
<br>
Thanks for your input. I'll back in the office
tomorrow and can give you more detailed answers to
the technical questions.<br>
<br>
To the technical issues:<br>
Yes, I plan to fix them in the next time, but
definitely before release ( fixed #12857 and started
to look at #12836 already). I think you should focus
on other bugs, otherwise we risk to do the same work
twice.<br>
<br>
Regards,<br>
Marco<br>
<br>
<br>
Am 02.06.2015 um 23:34 schrieb Nyall Dawson:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi Marco (also cc-ing dev list)<br>
<br>
I've been looking over the new geometry engine and
it's really nice<br>
stuff. It's fantastic to have this in QGIS and
it's a huge improvement<br>
over the old geometry class. Thank you!<br>
<br>
I have a couple of questions regarding this which
I'm hoping you can<br>
clarify for me. Firstly, I *think* that there's an
issue with the<br>
inheritance of some of the classes. Specifically
QgsMultiLineStringV2<br>
and QgsMultiPolygonV2. Currently both of these
derive from<br>
QgsGeometryCollectionV2, but I think they should
derive from<br>
QgsMultiCurveV2 and QgsMultiSurfaceV2. This would
seem logical to me<br>
since QgsLineStringV2 derives from QgsCurveV2 and
QgsPolygonV2 derives<br>
from QgsCurvePolygonV2. It also would match with
how I understand the<br>
OGC simple features access specification describes
(see 6.1.8.1 -<br>
MultiCurve should be non-instantiable, 6.1.9
multiline is a<br>
multicurve, and 6.1.13.1 and 6.1.14 for the
corresponding<br>
multisurface/multipolygon types). What's your
thoughts?<br>
<br>
Secondly, are you able to share your plans for bug
fixing leading up<br>
to 2.10? There's a number of serious regressions
following this work,<br>
and I'm wondering if I should be focusing on these
during the<br>
sponsored bug fixing or whether you plan to tackle
them before<br>
release? The biggest issues I see are:<br>
- #12836 : layers fail to render<br>
- unfiled: I get a lot of unknown exceptions when
working with<br>
geometries. I can reproduce this consistently by
trying to use the<br>
reshape tool on a polygon, or by rotating a map
within the canvas or a<br>
composer.<br>
- #12843: simplify tool broken<br>
- i noticed there's also a number of stubbed
methods in geometry with<br>
todo comments (eg QgsGeometry::buffer ).<br>
<br>
If you can share your plans then I can plan my
work accordingly.<br>
<br>
Again, thanks again for this fantastic work!<br>
<br>
Nyall<br>
</blockquote>
<br>
<br>
</blockquote>
<br>
<br>
-- <br>
Dr. Marco Hugentobler<br>
Sourcepole - Linux & Open Source Solutions<br>
Weberstrasse 5, CH-8004 Zürich, Switzerland<br>
<a moz-do-not-send="true"
href="mailto:marco.hugentobler@sourcepole.ch"
target="_blank">marco.hugentobler@sourcepole.ch</a>
<a moz-do-not-send="true"
href="http://www.sourcepole.ch" target="_blank">http://www.sourcepole.ch</a><br>
Technical Advisor QGIS Project Steering Committee<br>
<br>
_______________________________________________<br>
Qgis-developer mailing list<br>
<a moz-do-not-send="true"
href="mailto:Qgis-developer@lists.osgeo.org"
target="_blank">Qgis-developer@lists.osgeo.org</a><br>
<a moz-do-not-send="true"
href="http://lists.osgeo.org/mailman/listinfo/qgis-developer"
target="_blank">http://lists.osgeo.org/mailman/listinfo/qgis-developer</a></div>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
<br>
<pre class="moz-signature" cols="72">--
Dr. Marco Hugentobler
Sourcepole - Linux & Open Source Solutions
Weberstrasse 5, CH-8004 Zürich, Switzerland
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:marco.hugentobler@sourcepole.ch">marco.hugentobler@sourcepole.ch</a> <a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://www.sourcepole.ch">http://www.sourcepole.ch</a>
Technical Advisor QGIS Project Steering Committee </pre>
</blockquote>
<br>
</body>
</html>