User Interaction
- Last UpdatedDec 17, 2025
- 2 minute read
The modelling is divided into a number of smaller functions, each creating one type of object. This means that the Create Seam/Butt and Create Shell Profile functions both share the same set of basic geometry functions. Similarly the functions to create geometry that is more complex use other geometry functions for the simple types. for example, the function to create a curve by a general plane uses the Create Plane function, which in turn might use the Create Point function.
The modelling functions are based on the object-action principle. This means that the objects that are input to a function should be selected before invoking the function. Objects created in one function can then be part of the input to another function and so on. This principle makes it possible to build up the interaction by a number of smaller reusable functions as described above. It can be called the bottom-up method of working.
The disadvantage of this bottom-up approach is that you must know which basic objects to start with to reach the final target object like a seam or a profile trace. To eliminate this, the top-down method is also implemented. Using this method, you can start with the function to create the target object, but as no objects have been selected so far, the system must prompt for these objects. This is done by letting you select one of all the possible functions creating the necessary objects. This selection is done in a pop-up menu with the same contents as the corresponding pull-down menu in the upper right part of the graphical window.
Working the top-down way, you are prompted for all objects needed, and is thus guided through the interaction in a more firm way than when using the more flexible bottom-up approach. A mixture of these two methods can also be used.
All currently selected objects are kept in a select list. Most functions use the select list in one way or the other. When entering the function, it searches the select list for objects on which it will operate. If found, the function continues (bottom-up), if not, you are prompted (top-down).
For example, the function Recreate will check the select list for objects to be recreated. If no objects are found you are prompted to pick some.
In general, a function removes the objects it "uses" from the select list and adds all the objects it creates to the select list.
For example, the function Curve by Plane creates a curve by intersecting a surface with planes. This function first checks if the select list contains any planes. If so, the surface is intersected with each of these planes, which results in a number of curves. The planes are then removed from the select list and the curves are added to the list.
When an object is created or modified and placed in the select list, the change can be either applied or undone. If applied, the changes to the model object are committed and will eventually be stored in the database. If undone, the changes are rejected and the object is removed from the work area, making the previously applied version the valid one.