<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Verdana;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.E-MailFormatvorlage17
        {mso-style-type:personal-reply;
        font-family:"Verdana","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="DE-CH" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Verdana","sans-serif";color:#1F497D">I would like to see some changes in the snapping interface.
</span><span lang="FR-CH" style="font-size:10.0pt;font-family:"Verdana","sans-serif";color:#1F497D">If you got some 30+ layers it is really difficult to find a specific layer.
</span><span style="font-size:10.0pt;font-family:"Verdana","sans-serif";color:#1F497D">A layer tree for snapping just like for the legend would be great. And add the tree as tab like the browser.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Verdana","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<div style="border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt">
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="DE" style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">Von:</span></b><span lang="DE" style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> qgis-developer-bounces@lists.osgeo.org [mailto:qgis-developer-bounces@lists.osgeo.org]
<b>Im Auftrag von </b>antoniolocandro<br>
<b>Gesendet:</b> Montag, 22. April 2013 14:36<br>
<b>An:</b> bernhard.stroebl@jena.de; diego.gnesi@gmail.com<br>
<b>Cc:</b> qgis-developer@lists.osgeo.org<br>
<b>Betreff:</b> Re: [Qgis-developer] Make QGIS interact with LibreCAD.<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">I would say add CAD tools within QGIS, <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">1. Extend <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">2. Trim<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">3. Snapping environment<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">4. digitise using either icons or commands on a console<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">5. Intersection, etc.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">CAD tools are faster for digitising and more precise, having that possibility from within QGIS would make it so much better, I find digitising in QGIS very limited so for me right now its not to a point I can recommend it since in my industry
 we do a lot of complex shapes and edits.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<div>
<p class="MsoNormal">Sent from Samsung tablet<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><br>
Bernhard Ströbl <<a href="mailto:bernhard.stroebl@jena.de">bernhard.stroebl@jena.de</a>> wrote:<br>
Hi Diego,<br>
<br>
based on a discussion [1] on this list a couple of months ago I started <br>
coding some of the missing tools as my time allows. This is going to be <br>
a Python plugin made from scratch.<br>
What I do have right now is:<br>
1) Dissolve multi geometries (code from Alexandre Neto's plugin)<br>
2) Split feature with feature of another layer<br>
3) Cut out feature with polygon of another layer<br>
<br>
I can share what I have on github. Maybe you want to have a look or join in.<br>
<br>
What would be the tools you have in mind (I do not know LibreCAD)?<br>
<br>
Bernhard<br>
<br>
<br>
[1] <br>
<a href="http://osgeo-org.1560.x6.nabble.com/more-advanced-editing-tools-td5019552.html">http://osgeo-org.1560.x6.nabble.com/more-advanced-editing-tools-td5019552.html</a><br>
<br>
Am 22.04.2013 13:29, schrieb Diego Gnesi Bartolani:<br>
> Hi Bernhard,<br>
><br>
> I'll take your opinion into account. I'm still in a preliminary phase<br>
> and I'm still deciding. I verified that adding shapefile support to<br>
> LibreCAD is relatively simple, due to the good architecture of<br>
> LibreCAD's IO and geometry classes. Now I'll test how hard is adding<br>
> advanced cad tools to QGIS and how much time it can require to me.<br>
> Then I'll compare all the pros and cons of the two solutions and I'll<br>
> start to work. I need to finish the work before september, when I'll<br>
> have to use it in my job).<br>
> I'm not an expert of the QGIS API, and I need to study the source code<br>
> and the documentation in order to know precisely how can I interact<br>
> with QGIS while drawing:<br>
><br>
> - changing the snapping behavior and override the default one when required;<br>
> - having context menus with CTRL + right click (like on AutoCAD);<br>
> - drawing temporary entities (i.e. to trace extension lines);<br>
> - forcing the pointer to move along specific directions inside the map canvas;<br>
> - fast accessing to vertices, lines and angles of the existing shapes,<br>
> also for polygons.<br>
><br>
> I also need to understand if I can do all these things from a plugin<br>
> or do I need to make changes to the QGIS source code (I'll try to<br>
> avoid this).<br>
> I'll update this threads with all my progresses in the next days.<br>
><br>
> Diego<br>
><br>
> 2013/4/22 Bernhard Ströbl<<a href="mailto:bernhard.stroebl@jena.de">bernhard.stroebl@jena.de</a>>:<br>
>> Hi Diego,<br>
>><br>
>> some of my users with more complex editing tasks (and familiar with CAD<br>
>> software) are complaining about not having similar possibilities in QGIS and<br>
>> I admit that our CAD has much more to offer in that respect (snapping,<br>
>> construction), so thanks for the move.<br>
>> IMHO the best would be to have CAD-like functions in QGIS (strategy #1)<br>
>> because<br>
>> 1) many people missing these functions already might use some CAD or another<br>
>> to get their work done and are exchanging data between the two systems (with<br>
>> all problems), so strategy #2 would simply exchange their CAD software (if<br>
>> they are willing to change)<br>
>> 2) and more important: many things that work in CAD do not work in GIS and<br>
>> vice versa, e.g. CAD: line color, hatching, dimensioning...., GIS:<br>
>> attributes. Splines could be resolved into polylines, resembling the<br>
>> original spline, though. In short words: CAD is about drawing, GIS is about<br>
>> data modelling. So if you have the functions in QGIS you can more easily<br>
>> prevent users from doing silly things.<br>
>><br>
>> my 2 ct<br>
>><br>
>> Bernhard<br>
>><br>
>> Am 21.04.2013 12:52, schrieb Diego Gnesi Bartolani:<br>
>>><br>
>>> Hi,<br>
>>><br>
>>> Yesterday I posted in a wrong thread, so I'm opening a new one. I'll<br>
>>> copy and paste the previous message and add some notes. Sorry for the<br>
>>> mess!<br>
>>><br>
>>> Original post:<br>
>>><br>
>>> I am an Italian archaeologist and an enthusiastic QGIS user. I do what<br>
>>> I can to spread the knowledge about QGIS and other open source<br>
>>> softwares to my university students (I am a contract professor at the<br>
>>> Basilicata University and some days ago I've become contract professor<br>
>>> at the Specialization School of Archeology of Udin, Venice and<br>
>>> Trieste). The main difficulty I have with open source GIS is the<br>
>>> advanced editing of vector layers. QGIS doesn't offer too much support<br>
>>> for digitizing, the CAD Tools plugin has some useful functions but is<br>
>>> far from being complete and the kind of interaction that it proposes<br>
>>> is not very productive and time-saving (it's not a critic: CAD Tools<br>
>>> saved my life a lot of time, and I want to thank the developers and<br>
>>> maintainers). Many times, I had to convert my vector layers to dxf and<br>
>>> back in order to perform some complex tasks (with all kind of<br>
>>> conversion problems, like the preservation of the attributes values,<br>
>>> etc.).<br>
>>> I have some experience in programming (about ten years of<br>
>>> developement, mainly in C# with the .NET Framework, before I switched<br>
>>> to Linux), and I would like to try (only try, without promising<br>
>>> anything!!) to implement complete CAD tools and functions (If there<br>
>>> isn't and analogous project already active; in that case, nevermind!).<br>
>>><br>
>>> I think that developing a CAD plugin from scratch is very hard to me<br>
>>> and maybe not the better way to get good results, so I'm oriented to<br>
>>> try to augment the interaction between QGIS and an existing CAD<br>
>>> software (I'm thinking to LibreCAD). I thought to two possible<br>
>>> strategies:<br>
>>><br>
>>> 1. Use the LibreCAD library and source code to develop a C++ QGIS plugin;<br>
>>> 2. Create a shapefile/spatialite/postgis driver for LibreCAD in order<br>
>>> to edit those formats inside LibreCAD.<br>
>>> 3. Convert some layers of the QGIS project in a dxf file and back<br>
>>> (each QGIS layer in a different layer of the final dxf file).<br>
>>><br>
>>> I'm asking your opinion about which of those ways could be the faster<br>
>>> or the better to implement, or which one is impossible to undertake<br>
>>> according to your knowledge of the QGIS API.<br>
>>><br>
>>> My doubts are:<br>
>>><br>
>>> Strategy #1: Probably the ideal one, but does the implementation of<br>
>>> complex snaps or constraints against the features of other layers<br>
>>> (i.e. midpoint, parallels, etc.) require changes to the QGIS API, or<br>
>>> all these operations can be contained on a plugin? Is it better to<br>
>>> work directly on QGIS vector layers or to create a plugin layer, edit<br>
>>> it and then commit the changes to the vector layer? The conversion<br>
>>> could help me to manage geometries in the way LibreCAD wants. Is it<br>
>>> possible in your opinion to have an interactive shell (i.e. draw the<br>
>>> first point, and then inserting the coordinates of the second point)?<br>
>>><br>
>>> Strategy #2: Probably the easier, but I should find a way to disable<br>
>>> some LibreCAD functions (i.e. the drawing of splines, or the drawing<br>
>>> of points on a line layer) without disseminating my changes all over<br>
>>> LibreCAD's source files. For this kind of solution I'll ask to the<br>
>>> developers of LibreCAD.<br>
>>><br>
>>> Strategy #3: The problem is on committing the changes of the dxf file<br>
>>> to the original layer: how to specify that a line in the dxf file must<br>
>>> replace the geometry of and existing record of the original spatialite<br>
>>> layer? Maybe it's impossible, it doesn't seem to me that I can put on<br>
>>> a dxf file the necessary metadata to preserve a link to the original<br>
>>> features.<br>
>>><br>
>>> What do you think? And what do you actually do when you have to draw<br>
>>> complex shapes on shapefiles or other vector layers?<br>
>>><br>
>>> NEW COMMENTS:<br>
>>><br>
>>> - Antonio Locandro is compiling a list of required CAD features. It<br>
>>> would be very useful, so please Antonio, get me a link to this list<br>
>>> when it's finished.<br>
>>> - The more I explore QGIS and LibreCAD source codes, the more I'm<br>
>>> convincing that integrating LibreCAD's tools on QGIS is very<br>
>>> difficult, and it would be easier to develop those tools from scratch.<br>
>>> To get the best results in a short amount of time, I think that I<br>
>>> could work to make shapefiles and other vector layers editable in<br>
>>> LibreCAD (using GDAL). This solution has the issue that it doesn't<br>
>>> allow to snap to other QGIS layers, nevertheless it could be of great<br>
>>> help and available in a reasonable amount of time. Then, when I have<br>
>>> more practice with QGIS and LibreCAD APIs, I'll try to do something<br>
>>> better (i.e. develop a "QGIS driver" for LibreCAD in order to open the<br>
>>> whole QGIS project in LibreCAD, organized by layers).<br>
>>> I'm waiting for the answers to an analogous thread in LibreCAD's mailing<br>
>>> list:<br>
>>><br>
>>><br>
>>> <a href="http://forum.librecad.org/Using-LibreCAD-s-tools-on-GIS-vector-layers-td5707930.html">
http://forum.librecad.org/Using-LibreCAD-s-tools-on-GIS-vector-layers-td5707930.html</a><br>
>>><br>
>>> I think that I'm going to work on this project in a few weeks.<br>
>>><br>
>>> Let me know what do you think and if you have suggestions.<br>
>>><br>
>>> Diego Gnesi<br>
>>> _______________________________________________<br>
>>> Qgis-developer mailing list<br>
>>> <a href="mailto:Qgis-developer@lists.osgeo.org">Qgis-developer@lists.osgeo.org</a><br>
>>> <a href="http://lists.osgeo.org/mailman/listinfo/qgis-developer">http://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br>
>>><br>
>>><br>
>>> __________ Information from ESET Mail Security, version of virus signature<br>
>>> database 8250 (20130421) __________<br>
>>><br>
>>> The message was checked by ESET Mail Security.<br>
>>> <a href="http://www.eset.com">http://www.eset.com</a><br>
>>><br>
>>><br>
>><br>
>><br>
>> __________ Information from ESET Mail Security, version of virus signature<br>
>> database 8252 (20130422) __________<br>
>><br>
>> The message was checked by ESET Mail Security.<br>
>> <a href="http://www.eset.com">http://www.eset.com</a><br>
>><br>
>><br>
>> _______________________________________________<br>
>> Qgis-developer mailing list<br>
>> <a href="mailto:Qgis-developer@lists.osgeo.org">Qgis-developer@lists.osgeo.org</a><br>
>> <a href="http://lists.osgeo.org/mailman/listinfo/qgis-developer">http://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br>
><br>
><br>
> __________ Information from ESET Mail Security, version of virus signature database 8252 (20130422) __________<br>
><br>
> The message was checked by ESET Mail Security.<br>
> <a href="http://www.eset.com">http://www.eset.com</a><br>
><br>
><br>
<br>
<br>
__________ Information from ESET Mail Security, version of virus signature database 8253 (20130422) __________<br>
<br>
The message was checked by ESET Mail Security.<br>
<a href="http://www.eset.com">http://www.eset.com</a><br>
<br>
<br>
_______________________________________________<br>
Qgis-developer mailing list<br>
<a href="mailto:Qgis-developer@lists.osgeo.org">Qgis-developer@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/mailman/listinfo/qgis-developer">http://lists.osgeo.org/mailman/listinfo/qgis-developer</a><o:p></o:p></p>
</div>
</div>
</body>
</html>