MoI discussion forum
MoI discussion forum

Full Version: Nodebundle for playing with nodes

Show messages:  1-11  …  532-551  552-571  572-591  592-611  612-631  632-651  652-671  …  1852-1859

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

From: James (JFH)
7 Oct 2017   [#592] In reply to [#586]
Hi Karsten,

formfinding node is very impressive. My dearest hope is that showers are forecast for tomorrow (your time) so that you may finesse the coding.At first, I had assumed that Moi was freezing when I tried you examples, but then when I finally saw the results, my heart leaped...truly truly inspiring stuff.
(I have dreamed the dreams of Frei Otto)

Great work!
James
From: Mike (MGG942)
7 Oct 2017   [#593]
I'm trying to build a nod using the circular array node.
It appears that the node requires the count input to be an integer.
Is it possible to convert the output of a Math node from floating point to integer?
I've tried using (Int) in the Math function field but that doesn't seem to work.
Is there another way?

Mike.
From: James (JFH)
7 Oct 2017   [#594] In reply to [#593]
Hi Mike,

Use Basic/Math node with formula: "round(a)"
to round to near integer,

or floor(a) to round down
or ceil(a) to round up

Hope this helps
James
From: Mike (MGG942)
7 Oct 2017   [#595] In reply to [#594]
Thanks!!!
From: Karsten (KMRQUS)
8 Oct 2017   [#596] In reply to [#592]
Hello James,

it will take a while until the node will work. At the moment I have some bugs and I'm not a programmer. JavaScript isn't easy to debug. I have to find a solution for fast convergence and a good criterium for equilibrium. Sometimes the algorythm blows the mesh into space. A display after every step won't work, but I don't know why - it would help to understand what's going on - and would be an eye catcher. I don't want to ask the experts, because they have better things to do (v4, Elephants, additional interfaces ...). What to give to the output and which format is also not definded - at the end we want to do something with the result.

So - the winter comes here and that will help to focus to such things.

Have a nice day
Karsten
From: Karsten (KMRQUS)
8 Oct 2017   [#597] In reply to [#590]
Hello Barry,

here is another example that demostrates the workflow. If it isn't useful for you you can maybe relax with it.

Have a nice day
Karsten

Attachments:
ping.nod


From: Barry-H
8 Oct 2017   [#598] In reply to [#597]
Hi Karsten,
thanks it is relaxing however the node workings are beyond me.
I have tried to create an if/else node but it does not output when it reaches 100.
Could you have a look please if only for your entertainment.
I did try to enter it within the formula section in the maths node but no go.
As they say a little knowledge is dangerous thing.
Again many thanks
Barry
From: Karsten (KMRQUS)
8 Oct 2017   [#599] In reply to [#598]
Hello Barry,

to understand the nodefile it is neccesary to think in positions of your objects. Then select the matching positions of your objects with the idxSelect nodes -controlled with the Quartz node.
Thats all.

I will have a look to your idea and try to understand it, but not today, it's late in the evening and I had some beer while watching TV(Soccer - Worldchampionship qualifing:-).

So have a nice evening
Karsten
From: Karsten (KMRQUS)
9 Oct 2017   [#600] In reply to [#598]
Hello Barry,

you don't Need a new node for that - have a look to the example. Compare and split will do that what you want. Have also a look to the RMB on split.

Have a nice day
Karsten

Attachments:
compare-Split.nod


From: Barry-H
9 Oct 2017   [#601] In reply to [#600]
Hi Karsten,
thanks will experiment with it.
Just out of interest could you explain why when using my if/else node it did not work when value of 'a' was 100 or over.
It's set to if (a>b) {out = (a-b)} else {out = 0}
I know it's my coding and inexperience but it will help my learning curve.
Many thanks
Barry


Image Attachments:
Node problem.gif 


From: Karsten (KMRQUS)
9 Oct 2017   [#602] In reply to [#601]
Hello Barry,

your variables a and b are Arrays! If you want to compare elements of the arrays you have to Access the single elements with e.g. a[5]<b[0].

What the result of a<b is? I don't know. The this.properties.mode things are only useful for the multiprocess functionality Max implemented.

I think you have to implement a multiprocess function (Standard Long) or do it manually when you only want to compare all elements of the "a" Array with one single value of "b" (b[0].

for (var i=0; i<a.length;i++) if(a[i]<b[0]) doSomething();

I hope that helps for further steps.

Have a nice day
Karsten

p.s.: out is also an Array - so use out.push(a[0]-b[0]);-)
From: speedy (AL2000)
10 Oct 2017   [#603]
Hello Friends
Continuing exploring Minimal Surfaces,
in particular of the Scherk Singly Periodic
and the possibility of aggregating of the base module,
particularly in the most popular Saddle Tower,
I would like to share with you this interesting one
transformation...
a Twisted Torus of the Basic Saddle (Low Poly)
with the possibility of increasing the branches of the tower itself.....
file at this link:
http://www.mediafire.com/file/sf3u5jrbc9dc5jc/Twisted_Scherk_witn_n%C3%82%C2%B0_branch.rar
Good depth.......
Have a nice evening to all
al
From: mkdm
10 Oct 2017   [#604] In reply to [#603]
Hi AL!

I have a problem with all the nodes that you have posted lately.

None of them work with the latest 0.97.... version of NE.

Every time I load one of your node file, the "Run" button of NE is always disabled.

Instead if, for example, I create a new node or load one of the latest Max's node (Macro.nod for example) all works fine.

Please check this screencapture, it is relative to the node you posted at http://moi3d.com/forum/index.php?webtag=MOI&msg=7777.603



Maybe I'm missing something...

This is the content of my "C:\Program Files (x86)\MoI 3.0\ui\nodeeditor.v.0.97.2017.10.05\nodes\extensions"
and "C:\Program Files (x86)\MoI 3.0\ui\nodeeditor.v.0.97.2017.10.05\nodes\extensions\libs" folders





And this is the code I have into index.html file of NE :

code:
loadScripts('core','lang, compatibility, colors, geometry, main, editor');
loadScripts('nodes','macros, basic, logic, points, curves, solids, construct, transform, objects, interface');
loadScripts('nodes/extensions/libs','*');
loadScripts('nodes/extensions','*');
loadScripts('core','init, ext.*');


Could you help me ?

Thanks.

Ciao!
From: speedy (AL2000)
10 Oct 2017   [#605]
Hi Marco
the file posted,I did it with 0.96 Version....
I downloaded Version 0.97, but I'm not using it yet
ciao
al
From: mkdm
10 Oct 2017   [#606] In reply to [#605]
Ok Al.

I will try with 0.96.

Ciao!
From: Max Smirnov (SMIRNOV)
10 Oct 2017   [#607] In reply to [#606]
Hi Marco

There are missed nodes in your nod-file.
Check all nodes with red title
From: mkdm
10 Oct 2017   [#608] In reply to [#607]
Thanks a lot Max for the tip!

Ciao.
From: mkdm
10 Oct 2017   [#609] In reply to [#607]
Ok. Solved!

I had the wrong version of "transform2.js".

Thanks.
From: Karsten (KMRQUS)
11 Oct 2017   [#610] In reply to [#609]
Hello Marco,

it's fine that you figured out the Problem. I've posted some updates in single files, so it's difficult to start, when you not followed the complete Progress. But I don't know if it is useful to post a complete package when I only changed or added one single node. Esspecially when also new Versions from Max comming up. Sorry for that.

Have a nice day
Karsten
From: mkdm
11 Oct 2017   [#611] In reply to [#610]
Hi Karsten.

Thanks for the reply

@You : "...But I don't know if it is useful to post a complete package when I only changed or added one single node..."

Well...

As I said many times, I have my very personal point of view, a point of view of a software developer.

IMHO, in order to avoid version madness and headache, this is the best methods to keep all the users up to date
about "extensions" nodes made by us or by anyone other than Max :

I mean, the Max's way.

I think this is the best solution.

That is, having an online repository, like http://moi.maxsm.net/nodeeditor/, where all users can download always the very latest version of some particular
"extensions" for NE written by some developer.

This is a huge benefit, because a user doesn't have to wonder "Hmmm...is this the correct version of the script ? I remember that someone here and there
said that at line 130 of the code I have to put "x = x +1" and not "x = x -1".

I think that now is the time to definitively stop this strange situation :)

A "user" of a script or node must only download and overwrite all the files without wonder what's inside them.

This is an aspect "TOTALLY" delegated to the developer of the node.

Please, let's stop version madness :)

Thanks a lot and have a nice day.

Ciao!

Marco (mkdm)

Show messages:  1-11  …  532-551  552-571  572-591  592-611  612-631  632-651  652-671  …  1852-1859