MoI discussion forum
MoI discussion forum

Full Version: MoI node editor for beginner

Show messages:  1-12  13-32  33-47

From: James (JFH)
30 Oct 2019   [#13] In reply to [#12]
Michael,

>> It might work better for points to be addressed by something like an index number instead. <<

Yes, index numbering would work! That would be great

Thanks
James
https://www.instagram.com/nodeology/
From: Michael Gibson
30 Oct 2019   [#14] In reply to [#13]
Hi James, that's probably what I'll try when I get a chance to work on it. It won't be in the v4 timeframe though, sorry.

- Michael
From: mdesign
30 Oct 2019   [#15] In reply to [#7]
Thanks a lot James. I wouldn`t solve it alone. Thanks Michael.

Thanks for developing further that node project in MoI becouse it`s super idea and its comparable with Grasshopper in many ways.

I like procedural approach in Modo, Houdini and Grasshopper.

James I hope you will make paid tutorials someday about some of your works from instagram. Even your 2d patterns are amazing.

For me it would be instant buy. I think that many people would buy for it with pleasure. Thanks for sharing your nodes on Insta.

I`ve asked about those points becouse I would like to do some meshes/grids on some more complicated shapes where projection is not enough. I`ve thought that I will do one grid cell and I will duplicate it on every point with facing along normal direction of that point.

Cheers!!!
From: Frenchy Pilou (PILOU)
30 Oct 2019   [#16] In reply to [#15]
With my method above you can have any intersection points with any complex surfaces! ;)

Just take more than my few lines and their only one orientation!
No need complex algorithm :)

No vertical here :) Configurations of the Grid's lines are infinite! (Position, orientation, number, ...)




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 !

Show messages:  1-12  13-32  33-47