[QUOTE=pailhead;27253]Lately, i’ve been receiving CAD data that has been previously converted to meshes, with the request for assessment and testing in realtime. I dont’ have much experience with Rhino or Catia, but i did notice a couple of things:
[li]patches are never connected i.e. there is a split wherever a nurbs patch was,
[/li][/quote]
That depends on the tesselator. Good tesselators to stitch all seems properly these days.
[li]automagically, the normals compensate this, when i import an fbx, even with splits, the normals appear continuous
[/li]
Because the originating surface is of a much higher quality mathematically normals can be created that match the mathematical surface at that point rather than the polymesh. These are stored as per-vertex normals and it is tricky to both maintain, keep and edit these.
[li]as soon as i do anything, like deleting a face (see attachment), the normals go haywire
[/li]
What base object type is your mesh? Always use EditMesh with CAD originating data. With an edit mesh you should be able to delete without killing normals.
[li]and at this point, the model appears “buggy” ill have a hard time smoothing this even when welding vertices
[/li]
You wont be able to get the original quality back. Smoothing and welding will make things a little better, but nowhere close to the vertex normals.
I’m confused by the topology of the model, a part that is completely symmetrical, and looks like it has the same nurbs structure on both sides, comes in with different subdivision (the red borders in the second shot is actually the middle of one such object).
The tesselator does not really know or care about things like symetrical or identical areas of a surface. The direction of triangle splits and alike is depending on an algorithm. And that in turn may turn out either way depending on the surrounding surface and of course rounding differences.
I look at the mesh as ‘meat’ and normals as something that is projected from the infinitely precise mathematical surface, during the mesh conversion process.
You look right there, that’s pretty spot on. The surface is approximated (typically the goal is to create a mesh that has the least deviation from the mathematically perfect mesh with the fewest triangles/edges/points) and the vertices get per vertex normals matching the mathematical surface.
Is there a way to have max, not recompute the normals at some point, but allow for removal of faces, and edge splits.
[/quote]
Depends on the operation. For edge splits i don’t think there is and you should not need to (or better: You should retesselate if you need to ). Deletion should work in editable mesh. We also have custom modifiers for some additional operations like flipping normals and alike.
Cheers,
Thorsten