I would say add CAD tools within QGIS, 1. Extend 2. Trim 3. Snapping environment 4. digitise using either icons or commands on a console 5. Intersection, etc.
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. Sent from Samsung tabletBernhard Ströbl <[email protected]> wrote:Hi Diego, based on a discussion [1] on this list a couple of months ago I started coding some of the missing tools as my time allows. This is going to be a Python plugin made from scratch. What I do have right now is: 1) Dissolve multi geometries (code from Alexandre Neto's plugin) 2) Split feature with feature of another layer 3) Cut out feature with polygon of another layer I can share what I have on github. Maybe you want to have a look or join in. What would be the tools you have in mind (I do not know LibreCAD)? Bernhard [1] http://osgeo-org.1560.x6.nabble.com/more-advanced-editing-tools-td5019552.html Am 22.04.2013 13:29, schrieb Diego Gnesi Bartolani: > Hi Bernhard, > > I'll take your opinion into account. I'm still in a preliminary phase > and I'm still deciding. I verified that adding shapefile support to > LibreCAD is relatively simple, due to the good architecture of > LibreCAD's IO and geometry classes. Now I'll test how hard is adding > advanced cad tools to QGIS and how much time it can require to me. > Then I'll compare all the pros and cons of the two solutions and I'll > start to work. I need to finish the work before september, when I'll > have to use it in my job). > I'm not an expert of the QGIS API, and I need to study the source code > and the documentation in order to know precisely how can I interact > with QGIS while drawing: > > - changing the snapping behavior and override the default one when required; > - having context menus with CTRL + right click (like on AutoCAD); > - drawing temporary entities (i.e. to trace extension lines); > - forcing the pointer to move along specific directions inside the map canvas; > - fast accessing to vertices, lines and angles of the existing shapes, > also for polygons. > > I also need to understand if I can do all these things from a plugin > or do I need to make changes to the QGIS source code (I'll try to > avoid this). > I'll update this threads with all my progresses in the next days. > > Diego > > 2013/4/22 Bernhard Ströbl<[email protected]>: >> Hi Diego, >> >> some of my users with more complex editing tasks (and familiar with CAD >> software) are complaining about not having similar possibilities in QGIS and >> I admit that our CAD has much more to offer in that respect (snapping, >> construction), so thanks for the move. >> IMHO the best would be to have CAD-like functions in QGIS (strategy #1) >> because >> 1) many people missing these functions already might use some CAD or another >> to get their work done and are exchanging data between the two systems (with >> all problems), so strategy #2 would simply exchange their CAD software (if >> they are willing to change) >> 2) and more important: many things that work in CAD do not work in GIS and >> vice versa, e.g. CAD: line color, hatching, dimensioning...., GIS: >> attributes. Splines could be resolved into polylines, resembling the >> original spline, though. In short words: CAD is about drawing, GIS is about >> data modelling. So if you have the functions in QGIS you can more easily >> prevent users from doing silly things. >> >> my 2 ct >> >> Bernhard >> >> Am 21.04.2013 12:52, schrieb Diego Gnesi Bartolani: >>> >>> Hi, >>> >>> Yesterday I posted in a wrong thread, so I'm opening a new one. I'll >>> copy and paste the previous message and add some notes. Sorry for the >>> mess! >>> >>> Original post: >>> >>> I am an Italian archaeologist and an enthusiastic QGIS user. I do what >>> I can to spread the knowledge about QGIS and other open source >>> softwares to my university students (I am a contract professor at the >>> Basilicata University and some days ago I've become contract professor >>> at the Specialization School of Archeology of Udin, Venice and >>> Trieste). The main difficulty I have with open source GIS is the >>> advanced editing of vector layers. QGIS doesn't offer too much support >>> for digitizing, the CAD Tools plugin has some useful functions but is >>> far from being complete and the kind of interaction that it proposes >>> is not very productive and time-saving (it's not a critic: CAD Tools >>> saved my life a lot of time, and I want to thank the developers and >>> maintainers). Many times, I had to convert my vector layers to dxf and >>> back in order to perform some complex tasks (with all kind of >>> conversion problems, like the preservation of the attributes values, >>> etc.). >>> I have some experience in programming (about ten years of >>> developement, mainly in C# with the .NET Framework, before I switched >>> to Linux), and I would like to try (only try, without promising >>> anything!!) to implement complete CAD tools and functions (If there >>> isn't and analogous project already active; in that case, nevermind!). >>> >>> I think that developing a CAD plugin from scratch is very hard to me >>> and maybe not the better way to get good results, so I'm oriented to >>> try to augment the interaction between QGIS and an existing CAD >>> software (I'm thinking to LibreCAD). I thought to two possible >>> strategies: >>> >>> 1. Use the LibreCAD library and source code to develop a C++ QGIS plugin; >>> 2. Create a shapefile/spatialite/postgis driver for LibreCAD in order >>> to edit those formats inside LibreCAD. >>> 3. Convert some layers of the QGIS project in a dxf file and back >>> (each QGIS layer in a different layer of the final dxf file). >>> >>> I'm asking your opinion about which of those ways could be the faster >>> or the better to implement, or which one is impossible to undertake >>> according to your knowledge of the QGIS API. >>> >>> My doubts are: >>> >>> Strategy #1: Probably the ideal one, but does the implementation of >>> complex snaps or constraints against the features of other layers >>> (i.e. midpoint, parallels, etc.) require changes to the QGIS API, or >>> all these operations can be contained on a plugin? Is it better to >>> work directly on QGIS vector layers or to create a plugin layer, edit >>> it and then commit the changes to the vector layer? The conversion >>> could help me to manage geometries in the way LibreCAD wants. Is it >>> possible in your opinion to have an interactive shell (i.e. draw the >>> first point, and then inserting the coordinates of the second point)? >>> >>> Strategy #2: Probably the easier, but I should find a way to disable >>> some LibreCAD functions (i.e. the drawing of splines, or the drawing >>> of points on a line layer) without disseminating my changes all over >>> LibreCAD's source files. For this kind of solution I'll ask to the >>> developers of LibreCAD. >>> >>> Strategy #3: The problem is on committing the changes of the dxf file >>> to the original layer: how to specify that a line in the dxf file must >>> replace the geometry of and existing record of the original spatialite >>> layer? Maybe it's impossible, it doesn't seem to me that I can put on >>> a dxf file the necessary metadata to preserve a link to the original >>> features. >>> >>> What do you think? And what do you actually do when you have to draw >>> complex shapes on shapefiles or other vector layers? >>> >>> NEW COMMENTS: >>> >>> - Antonio Locandro is compiling a list of required CAD features. It >>> would be very useful, so please Antonio, get me a link to this list >>> when it's finished. >>> - The more I explore QGIS and LibreCAD source codes, the more I'm >>> convincing that integrating LibreCAD's tools on QGIS is very >>> difficult, and it would be easier to develop those tools from scratch. >>> To get the best results in a short amount of time, I think that I >>> could work to make shapefiles and other vector layers editable in >>> LibreCAD (using GDAL). This solution has the issue that it doesn't >>> allow to snap to other QGIS layers, nevertheless it could be of great >>> help and available in a reasonable amount of time. Then, when I have >>> more practice with QGIS and LibreCAD APIs, I'll try to do something >>> better (i.e. develop a "QGIS driver" for LibreCAD in order to open the >>> whole QGIS project in LibreCAD, organized by layers). >>> I'm waiting for the answers to an analogous thread in LibreCAD's mailing >>> list: >>> >>> >>> http://forum.librecad.org/Using-LibreCAD-s-tools-on-GIS-vector-layers-td5707930.html >>> >>> I think that I'm going to work on this project in a few weeks. >>> >>> Let me know what do you think and if you have suggestions. >>> >>> Diego Gnesi >>> _______________________________________________ >>> Qgis-developer mailing list >>> [email protected] >>> http://lists.osgeo.org/mailman/listinfo/qgis-developer >>> >>> >>> __________ Information from ESET Mail Security, version of virus signature >>> database 8250 (20130421) __________ >>> >>> The message was checked by ESET Mail Security. >>> http://www.eset.com >>> >>> >> >> >> __________ Information from ESET Mail Security, version of virus signature >> database 8252 (20130422) __________ >> >> The message was checked by ESET Mail Security. >> http://www.eset.com >> >> >> _______________________________________________ >> Qgis-developer mailing list >> [email protected] >> http://lists.osgeo.org/mailman/listinfo/qgis-developer > > > __________ Information from ESET Mail Security, version of virus signature > database 8252 (20130422) __________ > > The message was checked by ESET Mail Security. > http://www.eset.com > > __________ Information from ESET Mail Security, version of virus signature database 8253 (20130422) __________ The message was checked by ESET Mail Security. http://www.eset.com _______________________________________________ Qgis-developer mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/qgis-developer
_______________________________________________ Qgis-developer mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/qgis-developer
