Patent ID: 8896597

Claim:
A system for modifying a solid model representation that is manipulated in a computer having software instructions for design, comprising: a computer system, wherein the computer system includes a memory, a processor, a user input device, and a display device; and a computer generated geometric model stored in the memory of the computer system, wherein the computer system receives user input and accesses at least one data file having a plurality of geometric model definitions that define a geometric model, wherein the user input comprises at least one geometry identified to be modified, wherein the at least one geometry identified comprises a face, an edge, or a vertex which a user intends to modify; converts the geometric model definitions into a geometric representation of the geometric model; calculates a plurality of geometric conditions between the at least one geometry identified by the user input and the geometric model; determines which of the plurality of geometric conditions are rigid, and which of the plurality of geometric conditions are non-rigid to create a set of constraints, wherein rigid geometric conditions are independent of a topology of the geometric model, and non-rigid geometric conditions are dependent upon the topology of the geometric model; creates an interaction object modeled based on an existing feature of the geometric model, wherein the existing feature of the geometric model can be modified using the interaction object, and wherein the existing feature of the geometric model is defined by the face, the line, or the vertex corresponding to the identified geometry, including populating the interaction object with existing constraints and dimensions, wherein the existing constraints and dimensions are populated by the computer system at the time of creation of the interaction object and the population includes constraints and dimensions from both part and intra-part relations; calculates a design intent of the interaction object according to the geometric conditions; calculates a modified geometric model with a modified geometry according to the set of constraints to display to the user and according to the design intent, including performing a recursive process to identify other face, edge, and vertex sets that can be modified; and destroys the interaction object.