1. Building a wireframe-like voxel cloud (3D image) representing a raster model of the original object.
2. Separating branches (3D labeling) of the resulting 3D image by means of approximate intersection detection.
3. Obtaining a 3D wireframe model made of spline curves starting from each labeled entity of 3D image and, successively, refining the obtained curves in the intersection zones.
4. Building a surface representation of the object by using surface patches attached to the spline curve network