
-----Original Message----- From: inkscape-devel-bounces@lists.sourceforge.net [mailto:inkscape-devel-bounces@lists.sourceforge.net] On Behalf Of Maximilian Albert Sent: zondag 30 maart 2008 0:11 To: bulia byak Cc: inkscape; Engelen, J.B.C. (Johan) Subject: Re: [Inkscape-devel] GSoC08: Tech Drawing ideas (comments verywelcome)
What I'm wondering is how "geometric points" would be represented with the LPE approach. For example, when constructing the parallel to a line which passes through a given point, it should be possible to specify this point by clicking on the canvas (and possibly dragging it afterwards). Would this point be an additional parameter to the LPE? It shouldn't be present as an *ordinary* SVG element because it's only a "virtual" kind of data. But it should be draggable, and the parallel should follow, similar to how resizing a linked offset works.
Could a LPE display such a handle and react on it being dragged? How many "input objects" can a LPE have anyway? I think Johan added some functionality in this area recently. Would it be possible, e.g., to have _two_ lines as input for a single LPE? Something like this would be needed for angle bisectors.
LPEs can have an unlimited number of input parameters. All LPE parameters are what you call "virtual" data, not SVG elements, but Inkscae:SVG elements. (in the <defs> section). The handles that you need is a PointParam, which is on-canvas editable! However, you do need some contraints on dragging the pointparams. This is possible, but needs some basic work as well to enable it; at the moment none of the LPEs use it, but it would be very nice if constraints on parameters are done well. Please have some thought about how to do this once you are familiar with LPE framework. I can give you some pointers as well.
Sorry if these are noob questions but I haven't used LPEs myself yet. But the more I think about it the more I like this approach. In particular, it looks much easier to do than I originally imagined. Great. :)
:) Just have a look at some of the effects and see how little extra effort is needed other than the actual effect.
Really, look at this wiki page: http://wiki.inkscape.org/wiki/index.php/MakingLivePathEffects If anything is too brief, incomplete or unclear, please add text to the page! (or tell me to expand specific things)
Maybe we can think of a way to apply an LPE more natural than selecting the original path, etc etc. For the angle between two lines, it is much more intuitive to select the two lines and then press "do angle LPE". This should then create a new single node svg:path and put it in sensible location, and set the two path parameters to link to the two lines.
Cheers, Johan