Reloading the basemesh

Hello,

I have a minor suggestion. While working on my first wrap, I had to reload my basemesh several times because
I wanted to add more groups or materials to it. I did this in another program to make polygon selections easier later on.

However, whenever I reload my model in R3DS Wrap with new materials, my list of corresponding points gets lost,
so I have to redo them again. It would be very useful if the program kept my corresponding points if I add or remove
groups or materials, then reload the model. Thanks.

Hello,

That should not work that way. Whenever the mesh topology is the same, the correspondence points should fit it. If vertex order is changed, the correspondences points become mixed up.

One way to prevent it is to export points from SelectPoints node into JSON format as Points 3D. Then after loading a new mesh with different topology or vertex order, you can import points from a file in Points3D format and they will be recomputed to match the same 3D position. Hope that helps!

Can I ask how does R3DS detect a change in topology? Does it compare vertex ordering along with vertex positions? Because I use Wavefront .obj files, and maybe some small floating-point precision is lost when saving to text files.

Hello Samuel,

Each point stores its position on the surface using 3 numbers (index of trianlge, the first and the second barycentric coordinates). If triangle order or vertex order is changed, then the point position becomes different on the mesh.

The vertex indices are stored as integer numbers. I think floating-point precision can’t be the source of the problem.