I've been using Inkscape for a couple of years now. I had inquired about adding some object snaps to Inkscape when I first started using the program, but I didn't know any C++ at the time, and didn't want to tackle the language.
That has changed, since I'm now using a Linux box at home and work, in addition to my MS Windows boxes. I've been learning some C programming, and even bought a 900 page book on C++ programming. :]
I volunteer as one of the project admins for an open source GIS/Mapping program. I was planning on creating a map drafting and printing extension for the program from scratch. However, someone wrote a plug-in for our program that allows us to export the data in SVG, and one of the users began producing cartographic quality maps in Inkscape!
That really got my wheels turning. I am considering the possibility as using Inkscpape and perhaps Scribus as the main cartographic map production tools for our program. If this works out, I'd like to begin contributing to Inkscape as a developer.
My primary areas of interest are object snapping and precision drafting/drawing tools. I'd also be interested in some advanced labeling tools, DXF import/export, layer management, and sheet layout for printing/plotting.
I saw Matthew Squires was working on DXF support for Inkscape as part of Google's Summer of Code, but I didn't see any files on his SourceForge site yet. Is that project still ongoing?
Is anyone else working on the areas I mentioned? (I took a look at the roadmap on the Inkscape site, but didn't see any of these things mentioned.)
If you would be willing to put up with my questions, I'd be willing to help implement some of these features. :] I must warn you ahead of time, I do have a good knowledge of programming and XML, and even own a couple of textbooks on SVG, but I am a C++ rookie.
I'm going to read over the Inkscape Developer's Manual posted on the wiki tonight. I'd look forward to some advice on how to get started. I think I'd like to start with the object snaps tools first.
At any rate, I look forward to hearing from you guys about this, and hope I'll have the chance to improve a great open source tool I've been using for a long time.
Scott Huey
On 27/08/06, Redefined Horizons <redefined.horizons@...400...> wrote:
...
That really got my wheels turning. I am considering the possibility of using Inkscape and perhaps Scribus as the main cartographic map production tools for our program. If this works out, I'd like to begin contributing to Inkscape as a developer.
There's nobody who can say "No". All you have to do is participate.
My primary areas of interest are object snapping and precision drafting/drawing tools. I'd also be interested in some advanced labeling tools, DXF import/export, layer management, and sheet layout for printing/plotting.
Is anyone else working on the areas I mentioned? (I took a look at the roadmap on the Inkscape site, but didn't see any of these things mentioned.)
The road map is always a bit out of date. The layer management has been improved recently, and even if you think that it needs more work (or indeed a complete re-design), you might want to leave this until there has been more feedback. The object snapping seems to be too complicated to me, but I guess that someone must like it (otherwise it wouldn't have been written like that). I would guess that the other things that you mention are always going to be in need of enhancement!
If you would be willing to put up with my questions, I'd be willing to help implement some of these features. :] I must warn you ahead of time, I do have a good knowledge of programming and XML, and even own a couple of textbooks on SVG, but I am a C++ rookie.
That is fine, we can teach you C++; but your enthusiam for getting your functionality into Inkscape cannot be engendered.
Although we are getting some fairly advanced C++ code being committed just at the moment, most of the code is fairly easy to understand, though there is rather a lot of it. From a practical point of view, the biggest hurdle is getting all the libraries and dependencies together, which is bit awkward, though easier on linux than on any other platform, I would guess.
At any rate, I look forward to hearing from you guys about this, and hope I'll have the chance to improve a great open source tool I've been using for a long time.
There is a Bug or RFE open for an 'Involute Gear Tool' and if I ever get any copious spare time, I would like to do this - my first thought would be to implement the geometry in Javascript and have the renderer replace the script element with the result of running the script (not sure if the SVG spec allows this)' as a stand in, I would encourage you to make a start on any part of your project and see where it leads.
Ben
On Sun, Aug 27, 2006 at 12:56:33PM -0700, Redefined Horizons wrote:
That has changed, since I'm now using a Linux box at home and work, in addition to my MS Windows boxes. I've been learning some C programming, and even bought a 900 page book on C++ programming. :]
I volunteer as one of the project admins for an open source GIS/Mapping program. I was planning on creating a map drafting and printing extension for the program from scratch. However, someone wrote a plug-in for our program that allows us to export the data in SVG, and one of the users began producing cartographic quality maps in Inkscape!
Ooh, nice - screenshots?
That really got my wheels turning. I am considering the possibility as using Inkscpape and perhaps Scribus as the main cartographic map production tools for our program. If this works out, I'd like to begin contributing to Inkscape as a developer.
Excellent, we will love to welcome you to the project. :-)
It's funny, I first got into Inkscape (Sodipodi at the time) due to an interest in using the software for cartographic map making (for games). It would be awesome to see new inkscape features suited for technical drawing / mapping added to the code.
My primary areas of interest are object snapping and precision drafting/drawing tools. I'd also be interested in some advanced labeling tools, DXF import/export, layer management, and sheet layout for printing/plotting.
By labeling tools do you mean like dimensioning? I have looked into this a bit myself (it intersects a little with the markers stuff) so could share some ideas there.
There has been a lot of work in the area of layer management; I can imagine that for cartography/CAD purposes it may need some slightly different capabilities, so perhaps folks would be interested in hearing your thoughts on how it could be improved. Possibly Inkscape already does those things, but the UI or tutorials simply need to cover that usage better.
Could you describe what you mean by 'sheet management'?
I saw Matthew Squires was working on DXF support for Inkscape as part of Google's Summer of Code, but I didn't see any files on his SourceForge site yet. Is that project still ongoing?
That was last year, actually, and unfortunately he had some school work that unexpectedly required his time for most of the summer; he only had a chance to get to the DXF stuff for the final week or two of the summer of code project, so the converter only covered a subset of the DXF format.
VectorSection has SVG and DXF support, although I don't know if it is able to convert between them 100%.
Also, tt appears that there are some other GPL'd programs that are able to import/export both SVG and DXF, so a thought would be to extract that code from one of those programs and use it to create a simple pair of dxf2svg / svg2dxf converters.
If you would be willing to put up with my questions, I'd be willing to help implement some of these features. :] I must warn you ahead of time, I do have a good knowledge of programming and XML, and even own a couple of textbooks on SVG, but I am a C++ rookie.
Certainly! A lot of the inkscape developers are quite open to answering questions. We love to see more people coding on Inkscape, and providing pointers to new C++ers is more than a fair exchange. ;-)
A good C++ book we often recommend is 'Thinking in C++' by Eckel. It's available for free online as well as for purchase in print.
I'm going to read over the Inkscape Developer's Manual posted on the wiki tonight. I'd look forward to some advice on how to get started. I think I'd like to start with the object snaps tools first.
Carl Hetherington would be good to touch base with, as this has been an area he's done much work in.
You'll probably find the files in inkscape/src/*snap* of interest to review, to see how the various forms of snapping work currently. I'm not familiar with this code, but it looks like there is an abstracted general purpose snap management system provided by snap.cpp that may be a good starting point.
As you've probably read, new developers can gain SVN access after having two patches accepted. Once you've submitted a couple patches, let me or one of the other project admins know and we can hook you up.
At any rate, I look forward to hearing from you guys about this, and hope I'll have the chance to improve a great open source tool I've been using for a long time.
Scott Huey
Welcome to the team Scott!
Bryce
Redefined Horizons wrote:
I volunteer as one of the project admins for an open source GIS/Mapping program. I was planning on creating a map drafting and printing extension for the program from scratch. However, someone wrote a plug-in for our program that allows us to export the data in SVG, and one of the users began producing cartographic quality maps in Inkscape!
Which open source project are you working on ? There are several GIS related projects including Grass, QGIS, Gdal, Postgis, etc - which SVG export plugin ? Inkscape is an excellent program to work with especially now with the new layer support and constantly improving bit trace raster conversion. Some ideas for inkscape plugins could include projection conversions, different coordinate displays, etc. Also maybe as part of Open Clip Art to have a group of SVG cartographic symbols.
John
You may want to give a look at lib2geom. It is a 2d geometry library with special emphasis on "paths" being developed with the hope that it can replace Inkscape's current menagerie of internal path representations. I can only assume that lib2geom's capabilities will greatly simplify the work needed to do things like snapping and conversion of curves from CAD formats.
http://sourceforge.net/projects/lib2geom
Aaron Spike
Aaron,
I will take a look at the library that you mentioned.
Scott
On 8/28/06, Aaron Spike <aaron@...749...> wrote:
You may want to give a look at lib2geom. It is a 2d geometry library with special emphasis on "paths" being developed with the hope that it can replace Inkscape's current menagerie of internal path representations. I can only assume that lib2geom's capabilities will greatly simplify the work needed to do things like snapping and conversion of curves from CAD formats.
http://sourceforge.net/projects/lib2geom
Aaron Spike
jtaber,
I work as a project admin on the JUMP Pilot Project. We are working on OpenJUMP.
http://jump-pilot.sourceforge.net/
Scott
On 8/28/06, Redefined Horizons <redefined.horizons@...400...> wrote:
Aaron,
I will take a look at the library that you mentioned.
Scott
On 8/28/06, Aaron Spike <aaron@...749...> wrote:
You may want to give a look at lib2geom. It is a 2d geometry library with special emphasis on "paths" being developed with the hope that it can replace Inkscape's current menagerie of internal path representations. I can only assume that lib2geom's capabilities will greatly simplify the work needed to do things like snapping and conversion of curves from CAD formats.
http://sourceforge.net/projects/lib2geom
Aaron Spike
participants (5)
-
Aaron Spike
-
Ben Fowler
-
Bryce Harrington
-
jtaber
-
Redefined Horizons