The problem of feature-based surface reconstruction is considered in this paper. Our main contribution is the ability to handle visibility constraints, obtained from the projections of points, curves and silhouettes, in the surface fitting process. While traditional methods often ignore such information, we show that visibility constraints not only give better initial surface estimates and faster convergence, but also provide an important cue for determining surface topology. The problem is cast as a variational problem with constraints within the level set framework. It is shown how to evolvethe surface without violating the visibility constraints using methods from variational calculus. Applications of the theory are detailed for a number of important cases of geometric primitives: points, curves and visual hulls. Several experiments on real image sequences are given to demonstrate the performance of the approach.