Hey Aaron,
Thanks a lot for the links to the mail discussion. Very very helpful! I think you won't mind me throwing this on the devel maillist?
From what I gather from the discussion, no consensus was reached on the
SVG representation. Perhaps it is best, like Bulia said, to first make it working the 'ugly' simple way,
<path original-d= ... d = ... path-effect="sample" path-effect-param1="0.0" path-effect-param2="0.0" path-effect-param3="0.0" path-effect-param4="0.0" />
Then we can see what needs to be improved, what UI needs there are etc. Does that make sense? Once I have this working, we can discuss how to make a more versatile SVG representation.
I want to make skeletal strokes first, because it also probes for on-canvas UI needs (on-canvas parameter editing).
<path original-d="..." (input curve) d = "..." (result curve) path-effect="skeletal_strokes" (how are we going to name the effects?) path-effect-param1="..." (input curve) />
Cheers, Johan
On Sun, 2007-04-15 at 22:13 -0500, Aaron Spike wrote:
I'm already sick of typing Live Path Effects over and over so I'm abbreviating. :-)
I believe we can harvest a diff of my changes on the branch with a command like:
svn diff --new=https://inkscape.svn.sourceforge.net/svnroot/inkscape/inkscape/branches/live...... --old=https://inkscape.svn.sourceforge.net/svnroot/inkscape/inkscape/trunk@...1725...
Now this takes a long time to execute and I haven't stuck it out all the way yet. I'll try to remember to leave it running when I go to work tomorrow. The idea is to diff the current head of the branch with the last revision merged in from trunk. I think reading this diff will give you a pretty good idea of what has been done so far.
Aaron Spike
On Tue, 2007-04-17 at 10:15 +0200, Johan Engelen wrote:
From what I gather from the discussion, no consensus was reached on the
SVG representation. Perhaps it is best, like Bulia said, to first make it working the 'ugly' simple way,
<path original-d= ... d = ... path-effect="sample" path-effect-param1="0.0" path-effect-param2="0.0" path-effect-param3="0.0" path-effect-param4="0.0" />
When are you going to get started on this? (basically when is school over) I seriously have most of the code done for getting this working "right", but unfortunately it's on a branch that is severely out of date with the codebase (distributed SCM is fun!) -- I think I'm going to have to hand merge it. But, I do have a 9 hour flight for LGM coming up, and two batteries... so I could probably get it done by the end of LGM -- would that impede your progress?
Also, I would like as part of this if we could introduce attributes (in the inkscape namespace) for the pressure and tilt of the pen. I think this would be something very powerful for the path effects to use, and is currently data we're throwing away.
--Ted
When are you going to get started on this?
Right now!
I know about the branch. Perhaps it is best if I hand merge it, so I know where things are, how it works, etc. If you can just give me some pointers or files to check I think I'll be able to figure it out.
Regarding tablet + LPE, I cannot make promises. I agree this would make a powerful parameter to use for lpe's but I will focus on getting them there first. I hope to come up with a parameter system that is flexible enough to easily handle different parameter types (such as tilt).
Cheers, Johan
-----Original Message----- From: Ted Gould [mailto:ted@...11...] Sent: dinsdag 17 april 2007 17:22 To: Engelen, J.B.C. (Johan) Cc: Aaron Spike; inkscape-devel Subject: Re: [Inkscape-devel] LPE diff
On Tue, 2007-04-17 at 10:15 +0200, Johan Engelen wrote:
From what I gather from the discussion, no consensus was
reached on
the
SVG representation. Perhaps it is best, like Bulia said, to
first make
it working the 'ugly' simple way,
<path original-d= ... d = ... path-effect="sample" path-effect-param1="0.0" path-effect-param2="0.0" path-effect-param3="0.0" path-effect-param4="0.0" />
When are you going to get started on this? (basically when is school over) I seriously have most of the code done for getting this working "right", but unfortunately it's on a branch that is severely out of date with the codebase (distributed SCM is fun!) -- I think I'm going to have to hand merge it. But, I do have a 9 hour flight for LGM coming up, and two batteries... so I could probably get it done by the end of LGM -- would that impede your progress?
Also, I would like as part of this if we could introduce attributes (in the inkscape namespace) for the pressure and tilt of the pen. I think this would be something very powerful for the path effects to use, and is currently data we're throwing away.
--Ted
J.B.C.Engelen@...1578... wrote:
When are you going to get started on this?
Right now!
I know about the branch. Perhaps it is best if I hand merge it, so I know where things are, how it works, etc. If you can just give me some pointers or files to check I think I'll be able to figure it out.
Ted is talking about a different branch. He's using SVK locally. Let's not move this into trunk yet. Please keep the work in the branch and as promised I'll take care of merging trunk back in so that we don't diverge, one way or another.
I mailed you a diff command that will create a diff that shows you the changes so that you can familiarize yourself.
Aaron Spike
Ted Gould wrote:
On Tue, 2007-04-17 at 10:15 +0200, Johan Engelen wrote:
From what I gather from the discussion, no consensus was reached on the
SVG representation. Perhaps it is best, like Bulia said, to first make it working the 'ugly' simple way,
<path original-d= ... d = ... path-effect="sample" path-effect-param1="0.0" path-effect-param2="0.0" path-effect-param3="0.0" path-effect-param4="0.0" />
When are you going to get started on this? (basically when is school over) I seriously have most of the code done for getting this working "right", but unfortunately it's on a branch that is severely out of date with the codebase (distributed SCM is fun!) -- I think I'm going to have to hand merge it. But, I do have a 9 hour flight for LGM coming up, and two batteries... so I could probably get it done by the end of LGM -- would that impede your progress?
With what you have and it working "right", would it store parameters in the way Johan described for it to work in the short term? Or is it really right and stored otherwise? (just curious)
Also, I would like as part of this if we could introduce attributes (in the inkscape namespace) for the pressure and tilt of the pen. I think this would be something very powerful for the path effects to use, and is currently data we're throwing away.
That sounds fantastic! This would be needed for us to do the skeletal strokes and such correctly (meaning pressure and tilt are retained for changing "brushes" or patterns). Plus I'm sure Bulia will come up with other ideas no one has else has thought of. ;)
-Josh
On Tue, 17 Apr 2007 10:15:21 +0200, Johan Engelen <j.b.c.engelen@...1578...> wrote:
Then we can see what needs to be improved, what UI needs there are etc. Does that make sense? Once I have this working, we can discuss how to make a more versatile SVG representation.
That's fine -- as long as we don't end up stuck with that first draft of the representation down the road.
-mental
Johan Engelen wrote:
Thanks a lot for the links to the mail discussion. Very very helpful! I think you won't mind me throwing this on the devel maillist?
I much prefer the list and would encourage SoCers to keep as much relevant discussion here as possible. :-)
From what I gather from the discussion, no consensus was reached on the SVG representation. Perhaps it is best, like Bulia said, to first make it working the 'ugly' simple way,
After our chat the other day, I think I agree. At first I didn't want to have this ugly simple representation anywhere near the code, because I wanted to merge it into trunk and I didn't want to deal with any backward incompatibility nightmares. This is part of the reason why I was discouraged from working on it. But If you don't mind writing this incrementally and coming back to the same issues more than once I think completing the simple version will be very beneficial. Our chat made me realize just how complicated the final mechanism might need to be. I don't think you can design something like this correctly the first time without a few prototypes to acclimate you to the topic. So yes, please continue completing the simple version according to bbyak's outline as found on the wiki in the live-effects branch. When Ted's code gets merged into the branch (or trunk) we can think about a more complex arrangement with stacks of effects and such. But I'm now convinced this prototype won't be wasted work.
Aaron Spike
On Apr 17, 2007, at 1:15 AM, Johan Engelen wrote:
<path original-d= ... d = ... path-effect="sample" path-effect-param1="0.0" path-effect-param2="0.0" path-effect-param3="0.0" path-effect-param4="0.0" />
I'm trying to remember some other things that were discussed.
One alternative might be to use a list
<path original-d= ... d = ... path-params="0.0 0.0 0.0 0.0" />
or <path original-d= ... d = ... path-params="0.0,0.0 0.0 0.0" />
On 4/17/07, Jon A. Cruz <jon@...18...> wrote:
On Apr 17, 2007, at 1:15 AM, Johan Engelen wrote:
<path original-d= ... d = ... path-effect="sample" path-effect-param1="0.0" path-effect-param2="0.0" path-effect-param3="0.0" path-effect-param4="0.0" />
I'm trying to remember some other things that were discussed.
One alternative might be to use a list
<path original-d= ... d = ... path-params="0.0 0.0 0.0 0.0" />
or <path original-d= ... d = ... path-params="0.0,0.0 0.0 0.0" />
Hi, I think string and boolean parameter types can be useful too. (Thinking on the user interface and effects possibilities)
So, i think is better to do one tag attribute for each effect parameter.
Aurium
JonCruz wrote:
I'm trying to remember some other things that were discussed.
See [1], the reference section (scroll all the way down). Or [2]. [1] http://wiki.inkscape.org/wiki/index.php/LivePathEffects http://wiki.inkscape.org/wiki/index.php/LivePathEffects [2] http://sourceforge.net/mailarchive/message.php?msg_id=444F68E9.9000806%40eki...
Your alternative is a good idea, but how will it work if parameter 2 is a path? (skeletal strokes) If there is a delimiter that is always valid, we can use a list like you describe, which would solve some of the problems. (effect chaining is still not possible this way i think) I think for a method that allows for an arbitrary amount of parameters for an effect, the only solution will be to extend the XML tree, either in the <path> itself or in the <defs> section (like gradients).
________________________________
From: Jon A. Cruz [mailto:jon@...18...] Sent: dinsdag 17 april 2007 22:44 To: Engelen, J.B.C. (Johan) Cc: Aaron Spike; inkscape-devel Subject: Re: [Inkscape-devel] LPE diff
On Apr 17, 2007, at 1:15 AM, Johan Engelen wrote:
<path
original-d= ...
d = ...
path-effect="sample"
path-effect-param1="0.0"
path-effect-param2="0.0"
path-effect-param3="0.0"
path-effect-param4="0.0" />
I'm trying to remember some other things that were discussed.
One alternative might be to use a list
<path original-d= ... d = ... path-params="0.0 0.0 0.0 0.0" />
or <path original-d= ... d = ... path-params="0.0,0.0 0.0 0.0" />
participants (8)
-
unknown@example.com
-
Aaron Spike
-
Aurélio A. Heckert
-
Johan Engelen
-
Jon A. Cruz
-
Joshua A. Andler
-
MenTaLguY
-
Ted Gould