Hi guys..
Path support is now committed. I didn't get the bezier subdivision /
rendering / shortest distance done, but I did make a few last minute
fixes:
- Fix setting line width when printing.
- Removed "origin" coordinates in the first line of the path definition.
(Previously, there were x,y origin coords, and these were added onto
every path segment coordinate. Now just work with the path coordinates
directly for translation etc..)
- Shuffled grip manipulation code to be (marginally) less evil for
paths.
- Added XOR lines between bezier segment end-points and the respective
control-points, so you can see what is what.
NB: Printing supports bezier segments, but we can't render them on
screen. The cairo branch renders these segments properly, but can't
compute the closest distance to them yet.
I'd very much appreciate:
* Testing
* Bug reports
* Shiny'fication of various symbols which could benefit from filled areas.
To get started, look at one of my example symbols which uses this
feature, such as npn-1.sym. Look for a line such as:
p 3 0 0 0 -1 -1 1 -1 -1 -1 -1 -1 1
M 410,240 L 501,200 L 455,295 L 435,265 z
That is:
{path_object} {color} {line_width} {line_end} {line_type} {line_length}
{line_space} {fill_type} {fill_width} {angle1} {pitch1} {angle2}
{pitch2} {num_lines}
Followed by {num_lines} worth of SVG-esque path string. (I say "-esque",
I actually re-used code from an SVG parser, so it is the same).
With this in mind, if you want to construct a shape but don't want to
learn SVG paths, or to think in X-Y coordinates, fire up an SVG editor
(Inkscape), make your path (with appropriate coordinates for gschem's
world - e.g. mils / thou), save the SVG, then hunt out the path string
from inside that.
Best wishes,
--
Peter Clifton
Electrical Engineering Division,
Engineering Department,
University of Cambridge,
9, JJ Thomson Avenue,
Cambridge
CB3 0FA
Tel: +44 (0)7729 980173 - (No signal in the lab!)
_______________________________________________
geda-dev mailing list
[email protected]
http://www.seul.org/cgi-bin/mailman/listinfo/geda-dev