1. A method for modifying a geometric model, the method performed by a data processing system and comprising: receiving a geometric model by the data processing system, the geometric model including a plurality of curves; receiving, by the data processing system, a selection of a curve of the plurality of curves; finding at least one other curve of the plurality of curves, by the data processing system, that is related to the selected curve and finding relationships between the selected curve and the at least one other curve, including adding the selected curve, the at least one other curve, and the relationships to a selected curve set; pre-processing, by the data processing system, the selected curve set, including de-activating a set of constraints for the geometric model; receiving a modification of the selected curve, by the data processing system, and modifying the selected curve set, to produce a modified geometric model and modified selected curve set; post-processing the modified selected curve set, by the data processing system, by checking each of the set of constraints to determine if each constraint is consistent with the modification of the selected curve, and re-activating and applying only the constraints in the set of constraints that are consistent with the modification of the selected curve; and displaying and storing the modified geometric model.