samadoni

hi,

Just checking if there is way to have scattered points connected to the shortest path to make the thing travel from point to point in this point cloud.

Or the only way is to convert the point cloud to a mesh with something like the remesh(unoriented points) node or the tetrahedralize?

thanks

Quote 0 0
JeremyR
Or a pointCloudToMesh
Quote 0 0
samadoni

pointCloudToMesh is not really the best when it comes to shape like this 

[BLHO4M]

Quote 0 0
fxwriter
the cocoon node might have something like what you say.... I think
Quote 0 0
samadoni
Na the goal is not just to have "links" but actually use the shortest path node, and make it travel through the points
Quote 0 0
JeremyR
Somehow need to reorder the point IDs - not sure this can be done yet but would be good to be able to access and change IDs based on ramps, proximity etc etc.

Or you could try randomise the existing mesh points.
Quote 0 0
samadoni
Does the shortest path node need a reordering ? As it's based on kind of the closest point. 

Not sure, maybe having an inpositionPP in the shortest path node. I don't know if it would be possible to have that for futur release. 
Quote 0 0
JeremyR
I would like to see a standalone node that reorders pointCloud ID based on things like closestPoint on mesh input, curve, points maybe even colorAtPoint or something similar.
Quote 0 0
JeremyR
And then of course every other SOuP node should have IDPP input. I was just playing around with MASH ID node which can do some reordering albeit somewhat lacking.
Quote 0 0
samadoni

i think it's some kind of a limitation of the shortest path technique which somehow needs the points to be in relation.

would need maybe a voxelized solution to make it works on point cloud 

Quote 0 0
pshipkov
ShortestPath logic relies on connected graph. This means that vertices are the "nodes" and edges are the "links" between them.

How you can achieve what you are after.
You can use the tetrahedralize node to generate the connected points.
Connect the boundary mesh and the scattered points to it.
Turn-off the "preserve shell" (or whatever was the name of that option - not in front of Maya right now) and you will end-up with just the internal geometry.
Then run shortestPath on it.

Let me know if you need more detailed instructions.
Thanks.
Quote 0 0
samadoni

yes that's pretty much what i ended up doing.

The issue with the deactivated "use boundary mesh" is that it creates a hull and with a shape like an arch (cf the picture i posted). So it wont follow the shape.

 

So i ended up using the remesh node (unoriented points mode) using the output into the tetrahedralize, that way everything is connected as expected and i can use the points on surface and the volume points.

The only issue is that the setup is pretty sensitive and crashes maya 9 times on 10.

  

Quote 0 0
pshipkov
Crashing shouldn't be happening. Can you send me the scene please ?

About the tetrahedralize node - the option you want to activate is "ignore boundary faces", but not "use boundary mesh".
I have the feeling this will simplify things for you a lot.
Quote 0 0
samadoni

yes i also tried this option, the thing is that i wanted to have the shortest path running inside but also on the outside of the shape so i needed those extra edges. So the combination remesh and tetrahedralise give me exactly that.

 

Here is two file one with the network and it's working (soup_shortest_path_scatter2.ma)
the other one i saved just before hooking up to the output shape, if you try to make the connection it will crash (soup_shortest_path_scatter_crash.ma)

thanks

[TWIRrK]


Quote 0 0
pshipkov
EDIT: Scratch that. I see where the problem is now. It is on the remesh node. The unoriented point cloud mode creates geometry with a glitch in there.
The fix will be in the next update. Let me know if you need it sooner than that.
The current workaround is to slap a polyMerge operator after the remesh node.
Quote 0 0