MoI discussion forum
MoI discussion forum

Full Version: MoI node editor for beginner

Show messages:  1-16  17-36  37-47

From: Frenchy Pilou (PILOU)
30 Oct 2019   [#17]
@ Michael

Does it possible to see only "visible points" ?(and not in the same times the points who are behind)
For a more conprehensive figure! :)
I can hide them manually but...in case of complex forms that is not so easy to use a selection box! :)


From: mdesign
30 Oct 2019   [#18]
How to do stars faced along local normal? I`ve thought that every point is facing up like normal direction. I know that you are doing flat and flow node at the end but I wanted to try in this way.



I have idea also to use ImageRaster to get scale of grids from image (instead of attractor) on flat plane and then project those scales to other grids becouse there is no ImageRaster node but it`s still foggy idea.

Image Attachments:
STARS.jpg 


From: Michael Gibson
30 Oct 2019   [#19] In reply to [#17]
Hi Pilou,

> Does it possible to see only "visible points" ?(and not in the same times the points who are behind)
> For a more conprehensive figure! :)
> I can hide them manually but...in case of complex forms that is not so easy to use a selection box! :)

Sorry no there isn't currently a way to do that. The current point display handling is focused on having a small number of points used as strategic markers to refer to. It's not really designed for handling a whole bunch of them like you show there.

- Michael
From: James (JFH)
30 Oct 2019   [#20] In reply to [#18]
smdesign,

>> How to do stars faced along local normal? <<

MoI does not AFAIK provide details of surface normals. It is however something that Michael has spoken about being on the roadmap. I did a quick search of the forum and see that it has been on the to-do list for sometime now:
http://moi3d.com/forum/index.php?webtag=MOI&msg=5004.2

.>> I know that you are doing flat and flow node at the end <<

Yes it is easier to use this approach, but of course the flowed objects are distorted which may not be desirable.

However extracting points from a surface using isocrv + pathArray will only give rotational info of points along the iso-curves and hence normal compound curvature info of base surface is lost. However what you want is achievable, albeit via a long and windy route. I have attached .nod file below.




>> use ImageRaster to get scale of grids from image (instead of attractor) <<

This as well has been on my wishlist, and Max has done the foundational work with his RasterImage & Heightmap scripts. The pertinent code segment just* need to be wrapped into a node that has an image import input and a num array output. This numArray output could then be plugged into z input of points for height maps, or into setStyle for colour mapping, or circle radii for halftone screen images etc etc. The possibilities are endless, but we have to wait.
*I say "just", but it is nor within my capabilities.

I know that things are often not as obvious as they probably should be, but generally work-arounds can be found.
Just keep at it

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

Attachments:
starsOnSurface.nod

Image Attachments:
Screen Shot 2019-10-31 at 7.59.gif 


From: Michael Gibson
30 Oct 2019   [#21] In reply to [#20]
Hi James, the Oct-10-2019 v4 beta has introduced some functions for evaluating surface normals by scripts:

Add script properties to Face objects:
face.domainMin : Property that returns u,v coordinate of the lower left of the surface's parameter range.
face.domainMax : Property that returns u,v coordinate of the upper right of the surface's parameter range.
face.evaluatePoint( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns a 3D point.
face.evaluateNormal( uv ) : Function that evaluates a uv parameter value and returns a normal vector.
face.evaluate1stDerivatives( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns first derivatives as a list containing [pt, du, dv, duv].
face.evaluate2ndDerivatives( uv, u_from_left, v_from_left ) : Function that evaluates a uv parameter value and returns first and second derivatives as a list containing [pt, du, dv, duv, duu, dvv].
face.isPlanar : Property that returns true if the surface is planar.
face.planarFrame : Property that returns a coordinate from for a planar surface. Only valid if isPlanar returns true.
face.isOnPlane( frame ) : Function that returns true if the surface is planar and is on the given coordinate frame's x/y plane.
face.isOnParallelPlane( frame ) : Function that returns true if the surface is planar and is on a plane parallel to the given coordinate frame's x/y plane.

- Michael

Message 9547.22 was deleted


From: mkdm
30 Oct 2019   [#23] In reply to [#21]
Great to know! :)
From: mdesign
31 Oct 2019   [#24] In reply to [#20]
@James: Thanks James. Once again. I need to dig into it.

@Michael: Is it changing something with calulation local Normal direction from point layed over the surface? I see that face.evaluateNormal( uv ) and I not`t understand what is U and V values. I know UV but in polygonal modeling.

https://www.researchgate.net/profile/Arthur_Van_Der_Harten/publication/260596792/figure/fig2/AS:296811131621382@1447776696970/NURBS-Surface-parametrized-with-u-and-v-values-from-0-to-1.png

Is it works also for rounded shapes? Is there some node to return U and V values for given point? I yes then it should be easy to get normal direction after your latest update.
From: Michael Gibson
31 Oct 2019   [#25] In reply to [#24]
Hi mdesign,

re:
> @Michael: Is it changing something with calulation local Normal direction from point layed over the surface?
> I see that face.evaluateNormal( uv ) and I not`t understand what is U and V values. I know UV but in
> polygonal modeling.

Every NURBS surface has a 2 dimensional UV space associated with it, it's similar to the UV coordinates in polygon modeling.


> Is it works also for rounded shapes?

Yes, it's the same for every NURBS surface. A NURBS surface is made up of a grid of control points going in the U and V directions.


> Is there some node to return U and V values for given point? I yes then it should be easy to get
> normal direction after your latest update.

Sorry no the part of calculating the U and V values that correspond to a 3D point is not set up for script access yet. The "natural" way that NURBS are evaluated is by their parameter space coordinates. Calculating the UV coordinates of a 3D point is not really a part of the natural surface evaluation, it has to be done by a more specialized kind of solver.

- Michael
From: bemfarmer
31 Oct 2019   [#26] In reply to [#25]
I should study more, but:
Would Newton-Raphson solver, with Jacobians be able to find the U,V values?

So the 2 dimensional UV space is a rectangular grid?

- Brian
From: Michael Gibson
31 Oct 2019   [#27] In reply to [#26]
Hi Brian,

> Would Newton-Raphson solver, with Jacobians be able to find the U,V values?

Yup, those are some of the techniques used in solver mechanisms. The geometry library MoI uses has various kinds of solvers implemented, just the only part exposed to scripts at the moment are things in the area of "evaluators" which go from parameter space to 3D space.


> So the 2 dimensional UV space is a rectangular grid?

Yup, and basically the fundamental definition of NURBS surfaces is a mechanism that evaluates a 2D point in that UV space to produce a 3D point.

- Michael
From: bemfarmer
1 Nov 2019   [#28] In reply to [#27]
Thank you Michael.

Given a 3D point on a 3D surface:
Find u and v which map to that point.
Distance on the isoline_u, of the 3D point, from the u curve start point is a starting u guess.
Distance on the isoline_v of the 3D point, from the v curve start point is a starting v guess.
face.evaluatePoint( uv_Guess, u_from_left, v_from_left ) yields a trial point.
...
From: pior (PIOR_O)
5 Dec 2022   [#29] In reply to [#20]
Hello all,

I am getting started with the Node Editor. After the initial confusion of where to actually get it (looks like it is sometimes referred to as "Elephant" ?), I am now running version Nodeeditor1.1 under MOIv4. So far so good, and basic operations (booleans, circular array ...) are behaving as they should. From there :

- Where is the documentation, if any ? Looking for something covering all nodes, showing a practical example of each. Ideally with a robust way to search for nodes aphabetically.
- Where is the appropriate place where to ask questions ? An ongoing thread perhaps ? Or is it just like with regular MOI tools, that is to say, simply asking a question as a new thread here in the forum ? Or perhaps, just using this very thread here ?

(For instance I am looking for the way to hide/delete the geo created by the current graph in order to edit one of my source objects, and the only way I found to so is by closing the node editor altogether, since Stop doesn't seem to do anything. Where do I ask such a question ?)

Thank you for your time.
From: wayne hill (WAYNEHILL5202)
5 Dec 2022   [#30] In reply to [#29]
Hi pior,

It is the Elephant node editor. Also known as Node Editor.

Pilou has documentation located here:
https://moiscript.weebly.com/biblio-elephant.html

Right click on the 'OUTPUT' node to clear the objects.

Post your questions. There are many users.

Wayne
From: WN
5 Dec 2022   [#31] In reply to [#29]
Hi PIOR_O.

<<
(For instance I am looking for the way to hide/delete the geo created by the current graph in order to edit one of my source objects, and the only way I found to so is by closing the node editor altother, since Stop doesn't seem to do anything. Where do I ask such a question ?)>>

Video how it can be done.

https://disk.yandex.ru/i/_Cy4cBjuMG1qHA

Image Attachments:
1.PNG 


From: pior (PIOR_O)
5 Dec 2022   [#32] In reply to [#30]
Hello Wayne, thank you for chiming in. Alright, before diving deeper I still need to figure out a few things.

- First off, who is the actual author of "Elephant" ? I see two names being mentionned : Max Smirnoff and James Hargraves. I suppose that one of them is a power user, and one of them is the actual author - so, who is who ? Or perhaps multiple people are contributing to the project ?

- Regarding documentation : I did find the page you mention earlier, but to me this looks more like an enthousiastic third-party "fan page" than an actual documention ... and it is quite hard to decipher and navigate. For instance even though I am fluent in both English and French I don't understand what the author means by "Biblio ELEPHANT Library". Does that mean that the listed commands are a subset/custom library of macros built on top of the default Elephant nodes ? Anyways, if that is indeed the preferred documentation then so be it, I'll just strap in and dive into it even if it looks like it is going to hurt my brain meat :D

- You mention that it is okay to post questions ... but isn't there an actual, dedicated place to so ? I can't see myself just posting questions about an unsupported/unofficial addon here on the main MOI forum. But for that too, if that is indeed the accepted way of doing things then so be it.

Thanks !
From: BurrMan
5 Dec 2022   [#33] In reply to [#32]
Max is the author.

There us no official documentation.

Ask away. We all like to se the questions and answers.
From: bemfarmer
5 Dec 2022   [#34]
There is some documentation here:

https://moi3d.com/wiki/Nodeeditor

The somewhat dated documentation there, seems to have little or no updates, and has a dead link to Max's site. (Which should be updated to recent MoI site ____ ?)

- Brian
From: Michael Gibson
5 Dec 2022   [#35] In reply to [#29]
Hi Pior,

re:
> - Where is the documentation, if any ?

Like Brian writes the main page is on the wiki here:
https://moi3d.com/wiki/Nodeeditor


> Looking for something covering all nodes, showing a practical example of each.
> Ideally with a robust way to search for nodes aphabetically.

Well, it's an unsupported and abandoned programming tool developed by a third party so you're not going to find documentation at this level of refinement that you're describing.

If you need extensive documentation and tutorials I'd recommend using Grasshopper in Rhino instead, it's a similar system but it's actively developed and supported.


> Where is the appropriate place where to ask questions ? An ongoing thread perhaps ?
> Or is it just like with regular MOI tools, that is to say, simply asking a question as a new
> thread here in the forum ? Or perhaps, just using this very thread here ?

Any of those are fine.

- Michael
From: Frenchy Pilou (PILOU)
5 Dec 2022   [#36] In reply to [#32]
@Prior

<< Biblio ELEPHANT Library ;)
A Janus site!


It's a brilliant textual visual shortcut meaning that on the vertical left page you have the French Part
and on the vertical right page the English Part ! :)

Each button must go to each node on it's own language!

So i suppose that your brain will be now appeased ! )

When I made this Elephant Library some years ago there was absolutely nothing about Elephant!

So each node's description is my own understanding of each them! :)
Not yet finished...

James Hargraves is one artist who uses Elephant for make fabulous graphics images!
It's also a Master of Elephant / Moi!

Each James images on it's Instagram site has it's Elephant description so very pedagogical!
https://www.instagram.com/nodeology/

Show messages:  1-16  17-36  37-47