Allow more data types in Calculate node

Can the Calculate node be changed to allow for integer arithmetic? I know the automatic type converters kick in when it's hooked up to nodes that take Integers, but being able to set the type of the Calculate to Integer node would cause less clutter, less time selecting how to round the result, and less processing time in a loop.

Additionally, can it be changed to also allow 2/3/4D Points? In the event that a 3D Point is being used in a calculation, and the result is another 3D Point, right now three Calculate nodes need to be used, one per dimension. A point could be constructed within an expression using [these] brackets. A number could be used in an expression without any change, but perhaps a 2D Point could be written with _XY as a suffix, a 3D Point with _XYZ, etc. A dimension could be used from a point with just that dimension (instead of all dimensions) specified in the suffix.

The node could either take a single expression to calculate all dimensions in the point, or it could take an expression per dimension. Allowing for a bit of vector-style arithmetic could further open up some flexibility too, for example, by allowing adding two points, multiplying a point by a constant, multiplying dimensions (as in X1*X2, Y1*Y2, etc.), dot/cross products, a magnitude function (perhaps with |this| syntax...

Expressions might look like this:

radius * [cos(theta), sin(theta)] //Point on a circle at angle theta
deltaTime * velocity_XY + location_XY //New location after applying velocity
[velocity_X, deltaTime * gravity + velocity_Y] //New velocity after applying gravity

QC equivalent: 

Javascript (more or less)


Notes from Team Vuo

Vuo Pro: 

No — available with both Vuo and Vuo Pro licenses


●●○○ — A few weeks of work


●○○ — Appeals to current community



Here's a quick variation on Ryan Berkey's cool Iterate Geo composition.

I started by creating a gradient layer, then I made copies rotating it around in a circle, then made copies scaling it down toward the origin. I added mouse controls to change the number of layer copies, and their size and position.

Composition and supporting files: 

Exported App: 

Getting Started — Part 7

quick start 7

Live coding and Editor tools for examining a composition.

Update: If you're trying to recreate this composition in Vuo 1.2.4 or later, hold down the Shift key (Vuo 1.2.6+) or Option key (Vuo 1.2.4 and 1.2.5) while connecting the cable from the Fire Periodically node's Fired port to the Count node's Increment port. This makes a thin (event-only) cable instead of the default thick (data+event) cable.


  1. OK. We've built this composition. When we press "Run," it creates this window and counts upon it. Now, let's learn some more about Vuo by walking through a little bit of live coding. Live coding means modifying your composition while it's running. This can be handy, for example, if want to see what you're building while you're building it, or if you're creating live visuals at a show and want to mix it up.


Subscribe to RSS - Math