<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body><div>hey Jonathan<br></div>
<div> </div>
<div>thx for the screencast!<br></div>
<div> </div>
<blockquote type="cite"><div>Here's a rudimentary screencast:<br></div>
<div><a href="http://pdblog.nfshost.com/fielddemo.webm">http://pdblog.nfshost.com/fielddemo.webm</a><br></div>
</blockquote><div>oh yeah! that looks indeed really handy and cute :). then i guess such a circle can have (animated) inlets/outlets and "modulate" other guis and so on... nice<br></div>
<div> </div>
<div>cheers</div>
<div> </div>
<div>On Sat, Sep 5, 2015, at 07:31 AM, Jonathan Wilkes wrote:<br></div>
<blockquote type="cite"><div>On 09/03/2015 08:11 AM, jamal crawford
wrote:<br></div>
<blockquote type="cite" cite="mid:1441282276.3413904.373735769.070BCC82@webmail.messagingengine.com"><div>oh nice :) im looking forward to this<br></div>
</blockquote><div> </div>
<div>
Here's a rudimentary screencast:<br></div>
<div> <a href="http://pdblog.nfshost.com/fielddemo.webm">http://pdblog.nfshost.com/fielddemo.webm</a><br></div>
<div> </div>
<div>
I start with a little abstraction named "b.pd". It just polls an
[osc~] which is scaled and offset by some amount to compute<br></div>
<div>
a value for the [field radius]. In a toplevel patch, setting the
[field] does nothing.<br></div>
<div> </div>
<div>
However, when I create the struct with the "canvas a b" definition,
it tells Pd to load up the contents of "b.pd" into memory. And when
I create the scalar "foo", I also get a canvas "b.pd" associated
with that scalar.<br></div>
<div> </div>
<div>
Now when I set the [field radius] in that abstraction, it updates
the "radius" field for that scalar. The "radius" field also happens
to be used as a parameter to [draw circle]. That means when the
"radius" changes it animates the circle's radius.<br></div>
<div> </div>
<div>
As I make copies of the scalar you can see why this interface is so
powerful-- each scalar has its own [osc~] controlling the animation
at a frequency independent of the others. You can also get each one
to [throw~] a signal to a bus for sound, but I didn't do audio with
this screencast.<br></div>
<div> </div>
<div>
None of this is particularly efficient. But conceptually it's much
easier to deal with than juggling gpointers. Also, once you start
sending a lot of animation data to the gui, sys_queugui filters out
redundant messages.<br></div>
<div> </div>
<div>
-Jonathan<br></div>
<div> </div>
</blockquote><div> </div>
</body>
</html>