This paper presents a novel modeling algorithm that is capable of simultaneously recovering correct shape geometry as well as its unknown topology from arbitrarily complicated datasets. Our algorithm starts from a simple seed model (of genus zero) that can be arbitrarily initiated by users within any dataset. The deformable behavior of our model is governed by a locally defined objective function associated with each vertex of the model. Through the numerical computation of function optimization, our algorithm can adaptively subdivide the model geometry, automatically detect self-collision of the model, properly modify its topology (because of the occurrence of self-collision), continuously evolve the model towards the object boundary, and reduce fitting error and improve fitting quality via global subdivision. Commonly used mesh optimization techniques are employed throughout the geometric deformation and topological variation in order to ensure the model both locally smooth and glob...