Bender is an interactive tool for bending and warping triangulated surfaces. The designer uses a virtual ribbon to grab a portion of the shape and to deform it through direct manipulation. The ribbon is defined by its centerline—a wire made of two smoothly joined circular arcs—and by its twist—the continuous field of normal directions along the wire. The wire and the twist are controlled by a Polhemus tracker in each hand. The deformation model is based on a new formulation of a 3D space warp that uses screw-motions to map coordinate systems aligned with the initial ribbon to corresponding coordinate systems aligned with the final ribbon. Circular biarcs are easy to control and permit the correct handling of situations where a vertex is influenced by different sections of the wire. Screw-motions define smoother and more intuitive warps than other formulations. The combination significantly extends the editing capabilities of previously proposed shape deformation tools and produces smooth and predictable results for configurations where the radius of the tubular region of influence around the ribbon does not exceed the radii of the arcs.
Both the four-point and the uniform cubic B-spline refinement (i.e. subdivision) schemes double the number of vertices of a closed-loop polygonal curve P and respectively produce sequences of vertices fk and bk. The Js refinement proposed here produces vertices vk=(1–s)fk+sbk. Iterative applications of Js yield a family of curves parameterized by s. It includes the four-point curve (J0), the uniform cubic B-spline (J8/8), and the quintic B-spline (J12/8). Iterating Js converges to a C curve for 0
The success of solid modelling in industrial design depends on facilities for specifying and editing parameterized models of solids through user-friendly interaction with a graphical front-end. Systems based on a dual representation, which combines Constructive Solid Geometry (CSG) and Boundary representation (BRep), seem most suitable for modelling mechanical parts. Typically they accept a CSG-compatible input (Boolean combinations of solid primitives) and offer facilities for parameterizing and editing part definitions. The user need not specify the topology of the boundary, but often has to solve three-dimensional trigonometric problems to compute the parameters of rigid motions that specify the positions of primitive solids.A front-end that automatically converts graphical input into rigid motions may be easily combined with boundary-oriented input, but its integration in dual systems usually complicates the editing process and limits the possibilities of parameterizing solid definitions. This report proposes a solution based on three main ideas: (1) enhance the semantics of CSG representations with rigid motions that operate on arbitrary collections of sub-solids regardless of their position in the CSG tree, (2) store rigid motions in terms of unevaluated constraints on graphically selected boundary features, (3) evaluate constraints independently, one at a time, in user-specified order. The third idea offers an alternative to known approaches, which convert all constraints into a large system of simultaneous equations to be solved by iterative numerical methods.The resulting front-end is inadequate for solving problems where multiple constraints must be met simultaneously, but provides a powerful tool for specifying and interactively editing parameterized models of mechanical parts and mechanisms. The order in which constraints are evaluated may also be used as a language for specifying the sequence of assembly and set-up operations.An implementation under way is based on the interpreter of a new object oriented programming language, enhanced with geometric classes. Constraint evaluation results in the activation of methods which compute rigid motions from surface information. The set of available methods may be extended by the users, and methods may be integrated in higher level functions whose algorithmic nature simplifies the treatment of degenerate cases. Graphic interaction is provided through a geometrical engine which lets the user manipulate shaded images produced efficiently from the CSG representation of solid models.