I am totally onboard with your wrapping function for additional outputs proposal.
However could it be achieved with a two tiered menu as shown?
& removed in a similar method to the removal of additional inputs
This way the info panel is not further crowded with non-dynamic elements.
I had the same idea also, but I could not get it to run:-( I don't understand the core stuff already. Every time I have a short look in it, I have to google for hours. Nevertheless I am still learning. The other reason why I switched back to a selection of the function in the info panel was, that I don't know a good way for multiple outputs (not implemented, but I think possible this way) So the code is only an experiment to explain the idea, not a real solution. I hope Max will implement such a feature. It would help to extend the nodeeditor with such basic functions in a simple way.
I also think it would be useful to introduce a radio button associated to inputs as shown.
In the case of array nodes, range inputs could all be activated with cascade menu directly on node
or individually in info panel. It would be immediately apparent in the info panel which field has an
active input and which can be activated/deactivated if need be.
The simple remains simple; & the complex is possible
> Marco, this ArrayReplicator looks good, but it will be better if we use a multiple output connections. ;)
I totally agree with you!
While waiting your next NodeEditor release, i'm still playing with array nodes, and after "PatternSelArray" and "ArrayReplicator",
i'm thinking to write :
- "ArrayShuffler" : shuffle the elements inside one array
- "ArrayInspector" : it should output to a textarea, the numeric values of all array elements. Useful for debugging purposes.
- "ArrayExporter" : it should output to a file, the numeric values of all array elements.
- "RandomArray" : In should generate random points inside a 3d cube area.
These ideas are nothing more then a funny and simple javascript programming practice for me,
simple ideas that you might find interesting.
Here is a lighter color for the Canvas.
Under nodeeditor/core/imgs, save the original grid.png, and replace it with the lighter grid.png.
The colors of the original grid was inverted. This was done with Gimp2, or with Greenfish Icon Editor Pro (GFIE).
The lighter colors were swapped with GFIE. GFIE does not compress the PNG, so PNGGauntlet was used to shrink the PNG file size.
A button to select the grid colors might be nice, as well as an even lighter grid for printing.
- Brian (Grid.png removed as it is no longer used.)
Hello Brian,
dont't delete the message. The cursor can be customized with e.g. Gimp. Take a cursor example (also png) from this thread and change form and color and share it also, please.
To switch to an arrow cursor, locate the litegraph.css file under nodeeditor\css\, and change "crosshair" to "default", without the quote marks.
(Line 4)
Attached is a lighter grid.png replacement for the canvas. In the canvas display it still seems to be relatively dark.
The Wand selector of the Greenfish Icon editor cannot distinguish between two different tints and/or tones and/or shades, which are nearly the same .
This makes it hard to select the proper areas of the grid.png for editing.
The Wand selector of the IcoFX2 icon editor can so distinguish, but does not do Hex colors. Setting one of the two colors of Grid.png to a very different color allows the .png to be edited in the Greenfish Icon editor, which does do Hex colors.
While waiting the next official NodeEditor release by Max, here's my the first stable version (0.1) of some nodes i wrote :
N.B. these nodes requires the latest v.0.65b version of Max's NodeEditor.
- "PatternSelArray" : returns a PointArray, made by a patterned+subset selection of the input PointArray's element
- "ArrayShuffler" : returns a PointArray, by shuffling the elements inside the input PointArray (RMB -> Update : generate a new random shuffle)
For example, it may be useful to create objects like ball of wool.
- "ArrayFlipper" : returns a PointArray, made by flipping the elements of the input PointArray
- "ArrayLogger" : Outputs to a textarea the content of the input PointArray. It's useful for debugging.
You can copy/paste the textarea's content, to a text editor, in order to better view all the text.
Every line of text contains the full data of each point present in the input PointArray, separated by a single space :
X Y Z AngleX AngleY AngleZ Size
- "ArrayReplicator" : Replicates the input PointArray. It may be useful only in order to keep the graph cleaner.
In order to use these new nodes, follow these steps :
1) copy the "arraysExt.js" file into the "nodes" folder of NodeEditor
2) copy the "litegraphExt.js" file into the "core" folder of NodeEditor
3) add these lines of code to the "index.html" file of NodeEditor
Thank You very much for sharing. I have tested some nodes and for now, everything works fine. Especially the ArrayLogger will help to debug while programming and also while using the nodeeditor. I'm very curious what's comming next.
I'm glad to know that you appreciated my little contribution and also that you haven't found some strange bugs...
Currently i'm working on a node that will be called "ArraySketcher".
It will process a PointArray and, following some criteria, it will use the array elements to draw some basic geometry objects :
"Triangles", "Quads", "Curve", "Interpcurve", "Arc3pt", "Circle3pt", "Rect3pts", "EllipseDiam","EllipseCen" and some others...
I also wrote "PatternSelObjects" node, that does the same things of "PatternSelArray", but with it,
it's possible to operate on a ObjectList rather than a PointArray.