MoI discussion forum
MoI discussion forum

Full Version: Nodebundle for playing with nodes

Show messages:  1-20  …  1781-1800  1801-1820  1821-1840  1841-1859

Thread Split: Some posts in this thread have been moved here

From: bemfarmer
21 May 2021   [#1841] In reply to [#1840]
See posts by Max, a few years ago.
Also see nodeeditor code, e.g. in notepad++.
See Javascript functions, Ecmascript 5, for example at W3 site

- Brian
From: sunspeed
21 May 2021   [#1842] In reply to [#1841]
Thanks Brian. Sometimes it's really the easiest to directly look into the code although Java is not a know language for me. But Max did a very good readable code, so it was easy to simply add the ROUND() function to the list of codes.

In line 78 of basic.js the function can be added:
this.properties = { mode:["Long","Long","Short"], f:"a+b", preset:["a+b", "a+b", "a-b", "a*b", "a/b", "sin[a]", "cos[a]", "pow(a,b)", "round(a)"], a:[1], b:[1]};

Works now perfect for me.
From: bemfarmer
21 May 2021   [#1843] In reply to [#1842]
Thankyou sunspeed for sharing your Javascript (5) solution.
- Brian
From: bemfarmer
12 Mar 2022   [#1844]
Is bundlePts available anywhere?
Is bundlePts redundant?

Was bundlePts replaced with some combination of array nodes?
As per Karsten, bundlePts combines the 1st point of each input array, then 2nd point of each input array, etc., which seems to be one of the multi process combinations?

Search of +bundlePts only yields 6 mentions.

- Brian
From: James (JFH)
12 Mar 2022   [#1845] In reply to [#1844]
Brian

"Bundle" node in "ArrayExt" menu is multi-modal: Points, as well as Numbers& Objects.

James
https://www.instagram.com/nodeology/
From: bemfarmer
12 Mar 2022   [#1846] In reply to [#1845]
Thank you James.

So, to clarify my understanding:
The old bundlePts node is redundant, or superceded and replaced.
Instead, under the "ArrayExt" menu, use the "bundleArray" node, in "Points" mode, as a replacement.

- Brian

bundleArray has three modes, Points, Numbers, or Objects. These correspond to input and output pointarrays, numarrays, or objarrays.
bundleArray grabs the 1st element of each input array, and outputs them sequentially in an array.
Then grabs the 2nd elements, and outputs them.
etcetera, to the ends of all of the input arrays.
If an input has less elements that the other inputs, EDIT: THE GRABS STOP. (=Short)
(slice(s) or cross section(s) of arrays?) (Some explanation by Max in multiprocess mode combinations? Short, NOT Long). (See James next post.)

So if the input array elements are arranged in Rows, the output would be the Column elements, sequentially. Or vice-versa.
For example, isoline u elements could be converted to isoline v elements.
Weft could be converted to Warp(???) EDIT: Well, see next two posts for elaboration.
From: James (JFH)
12 Mar 2022   [#1847] In reply to [#1846]
Brian,
quote:
If an input has less elements that the other inputs, it contributes no element for the remaining grabs.
(slice(s) or cross section(s) of arrays?) (Some explanation by Max in multiprocess mode combinations? Long or Long+?)

You have alluded to a flaw in bundle node: effectively it is "Short" list matching only. If you look at the image below,
the final list should, if it did "long" matching, include "4" at the end. This is also the case with ptArrays & collections of objects.


quote:
So if the input array elements are arranged in Rows, the output would be the Column elements, sequentially. Or vice-versa.
For example, isoline u elements could be converted to isoline v elements. Weft could be converted to Warp.

I'm not clear how bundle node could perform the operation of swapping warp & weft of ptArray, but the means of achieving this would certainly be useful.

James
https://www.instagram.com/nodeology/

See Pilou's post for brief explanation of array matching modes
http://moi3d.com/forum/lmessages.php?webtag=MOI&msg=9476.66

Image Attachments:
bundle_NODE.jpg 


From: bemfarmer
13 Mar 2022   [#1848] In reply to [#1847]
Thank you James, for the clarifications, corrections, explanations, and link to Pilou.

They help with my better understanding of the node. What it could do, how it could do it.

I'll try and make some corrections, and elaborations, so as to not mislead.

The weaving was an attempt at an example.
If each input array represented (points of) one warp thread...
Output might represent weft thread location, for additional up/down weave information, somehow ???

- Brian
From: Psygorn (DRILLBIT)
14 Mar 2022   [#1849]
Hello James,

I tried to recreate what you have made here: https://www.instagram.com/p/CbAAG0Xrssv/

However, for me, it doesn't work! I have problems creating an Array with Knob

.nod file is attached.

Could you please help me through it?

Attachments:
Phyllotaxis Arrangement of Cones.nod


From: James (JFH)
14 Mar 2022   [#1850] In reply to [#1849]
Psygorn,

The equation that feeds into "Z" input of point node should be:

sqrt(a-pow(sqrt(b),2))*c

Also the cone needs to be beefed up in size, & importantly
have a negative number for "Height" input so it points outwards.

I used "Radius": 15 "Height" : -35
James
https://www.instagram.com/nodeology/
From: Psygorn (DRILLBIT)
14 Mar 2022   [#1851] In reply to [#1850]
Hi James,

Thank you for your reply I am using sqrt(a-pow(sqrt(b),2))*c to feed into "Z" input of the point node now. however, I still don't get your result!

No need to mention I changed cone specifications to what you suggested there appears only one cone!

My question is that I see your "shiftDublicate" node says "numArray" while mine says "In" what am I doing wrong?
From: James (JFH)
14 Mar 2022   [#1852] In reply to [#1851]
Psygorn

Not sure why it is not working your end, because your NOD file with
the recommended changes works for me.

You could try replacing "shiftDublicate" node with "Basic/Progression" node.

In this setup, they are effectively the same, and "Progression" node
would be the more obvious choice, however when I built this circuit
I was initially attempting something different from what I ended up with.
Sorry if this created confusion.

James
https://www.instagram.com/nodeology/
From: MO (MO_TE)
1 Apr 2023   [#1853]
"ConnectPoints" node
Update: range mode

Address: Curves2/ConnectPoints

Attachments:
ConnectPoints.js


From: MO (MO_TE)
2 Apr 2023   [#1854]
An update on "idxSelect" node
Inverse mode added.

Attachments:
idxSelect.js


From: James (JFH)
2 Apr 2023   [#1855] In reply to [#1854]
MO,

Thank you very much for update of "idxSelect" node.
This incremental change will have a profound effect on the usability of NE.

There is another node that could be revised to great effect.
Less incremental change than change to increments.
Please see link below:
http://moi3d.com/forum/index.php?webtag=MOI&msg=9581.3

There several ways this could be achieved, but perhaps the easiest would be to introduce a RMB option as per image below


What do you think?
James
https://www.instagram.com/nodeology/

Image Attachments:
knob.jpg 


From: MO (MO_TE)
2 Apr 2023   [#1856] In reply to [#1855]
I'm glad you liked it.
I did take a look at "Knob" node.
It looks a bit scary to be honest! :)
Maybe I can add a "step" property, but not sure.
From: MO (MO_TE)
3 Apr 2023   [#1857]
Unfortunately I couldn't find a decent way to do this, But somehow I managed to reach a result.
I added a "step" property.(Default: 1 But it can be negative too)
It can increment by step number, but the incremental mode works only with mouse wheel.
I post it here in case someone wants to use or improve it.

Attachments:
Widget_Knob.js


From: MO (MO_TE)
4 Apr 2023   [#1858]
"ArrayGem" node
Inputs:
Object: Objects + an optional base circle
Path: curve/curves
Surface: To set objects orientation (optional)



Address:
Objects2/ArrayGem

Attachments:
ArrayGem.js


From: MO (MO_TE)
8 Apr 2023   [#1859]
"SurfaceNormals" node
Moved here
https://moi3d.com/forum/index.php?webtag=MOI&msg=9581.321

Show messages:  1-20  …  1781-1800  1801-1820  1821-1840  1841-1859