Variational Direct Modeling: A framework towards integration of parametric modeling and direct modeling in CAD

Page created by Enrique Wang
 
CONTINUE READING
Variational Direct Modeling: A framework towards integration of parametric modeling and direct modeling in CAD
Variational Direct Modeling: A framework towards integration of parametric modeling
 and direct modeling in CAD

 Qiang Zoua,∗, Hsi-Yung Fengb , Shuming Gaoa
 a State Key Laboratory of CAD&CG, Zhejiang University, Hangzhou, 310027, China
 b Department of Mechanical Engineering, The University of British Columbia, Vancouver, BC, V6T 1Z4, Canada

 Abstract
 Feature-based parametric modeling is the de facto standard in CAD. Boundary representation-based direct modeling is another
 CAD paradigm developed recently. They have complementary advantages and limitations, thereby offering huge potential for im-
 provement towards an integrated CAD modeling scheme. Most existing integration methods are developed by industry and typically
arXiv:2301.02999v1 [cs.GR] 8 Jan 2023

 treat direct edits as pseudo-features, where little can be said about seamless integration. This paper presents an alternative method
 for seamless parametric/direct integration, which allows parametric and direct edits to work in a unified way. The fundamental
 issues and challenges of parametric/direct integration are first explained. A framework is then proposed to handle those information
 inconsistencies, based on a detection-then-resolution strategy. Algorithms that can systematically detect and resolve all possible
 types of information inconsistencies are also given to implement the framework. With them, model validity can be maintained
 during the whole model editing process, and then the discrepancy between direct edits and parametric edits can be resolved. The
 effectiveness of the proposed approach has been shown with a series of case studies and comparisons, based on a preliminary
 prototype.
 Keywords: Computer-aided design, Solid modeling, Parametric/Direct integration, Information inconsistency, Validity
 maintenance, Decision-making, Intelligent CAD

 1. Introduction once the model is built. Making changes to an existing para-
 metric model requires a good understanding of its construction
 Computer-Aided Design (CAD) has been the dominant in- history and the mathematics behind. For these reasons, users
 dustrial practice for product design. One of its primary usages often find parametric modeling hard to learn and use [10, 11].
 is to create and edit computer models of products [1, 2]. CAD The B-rep approach represents a solid by specifying the
 modeling so defined has experienced three broad stages of de- boundary between the solid and void. The boundary is stored
 velopment: solid modeling, parametric modeling, and direct as a collection of faces sewed together [5]. Direct modeling al-
 modeling. Solid modeling began in the 1970s with two com- lows users to directly manipulate those boundary faces to attain
 peting approaches [3]: constructive solid geometry (CSG) and solid variants [12, 13]. This way of working provides benefits
 boundary representation (B-rep). They have respectively moti- of flexible edits, fast update, and intuitive interaction. It is a
 vated parametric modeling in the late 1980s and direct model- flexible approach because, in principle, it can change a model
 ing in the late 2000s. to any shape. Model updates are fast since only the modified
 The CSG approach represents a solid as successive combina- boundary faces need to be updated and the majority remain un-
 tions (via regularized Boolean operations) of primitive shapes, changed. The intuitive interaction implies a shallow learning
 [4–6]. Parametric modeling inherits this procedural way of curve. However, these advantages come at a high price: as-
 working but introduces features to replace the primitive shapes sociativity information is lost, and parameter-driven automatic
 [7, 8]. By doing so, it allows easy embedding of associa- change propagation is no longer available [14].
 tivity1 into shapes, which in turn yields benefits of automatic Clearly, parametric and direct modeling have complementary
 change propagation, shape reuse, and design intent embedding advantages and disadvantages. Their integration can thus pro-
 [9]. Nevertheless, associativity also introduces complexity and vide both strengths, i.e., automatic change propagation and high
 rigidity into CAD models. Most notably, a parametric model’s modeling flexibility. Nevertheless, integrating them is not triv-
 construction history must be carefully thought out before mod- ial. The fundamental issue lies in the information inconsisten-
 eling because this will restrict the user to what can be edited cies caused by parametric/direct edits when they are applied to
 a same CAD model (a detailed explanation on this will be given
 ∗ Corresponding
 in Section 3.1). Without being consistent with each other, in-
 author.
 formation in a CAD model will produce an invalid model, e.g.,
 Email address: qiangzou@cad.zju.edu.cn (Qiang Zou)
 1 Associativity means that geometric entities of a CAD model are associated a non-solid and/or an over-constrained model.
 through, for example, geometric constraints [9]. To date, there have been five integration strategies reported
 Paper published in Computer-Aided Design January 10, 2023
Variational Direct Modeling: A framework towards integration of parametric modeling and direct modeling in CAD
by industry and academia (as will be detailed in Section 2). and constraints) such that changes can be propagated automat-
When dealing with the above fundamental issue of informa- ically [9, 18]. With automatic change propagation come de-
tion inconsistencies, they consistently try to convert direct ed- sign intent embedding and geometry reuse. This shifted CAD
its into certain feature operations, where lossy conversions can from an instance modeler to an “electronic master” modeler.
happen and little can be said about seamless integration. By Nevertheless, associativity also implies complexity and rigidity.
seamless we mean the integration can provide the same editing Working with a parametric model requires a good understand-
capability and modeling behavior as in unintegrated modelers. ing of its modeling history [7]. Editing a parametric model is
In other words, if direct edits are applied, the model acts like hard, even impossible without rebuilding the model, if the de-
a B-rep model; if parametric edits are considered, it acts like a sired changes fall outside the designed parametric family [19].
parametric model. Updating a parametric model is often time-consuming due to
 This paper presents our attempts on seamless paramet- the always “start-over” model regeneration mechanism. Main-
ric/direct integration. The fundamental problem to be studied taining the semantics of a model’s feature during all modeling
is resolving the information inconsistencies in a CAD model operations is not straightforward [20]. All of these make para-
caused by parametric/direct edits. The primary goal lies in sys- metric modelers hard to learn and use [10, 11].
tematically detecting and resolving all possible types of infor- Direct modeling emerged recently as a solution to the above
mation inconsistencies so that the following three technical re- limitations of parametric modeling, particularly the rigidity is-
quirements can be met during all modeling operations: model sue. It allows users to directly manipulate the model geometry
validity (being solid and well-constrained); continuous model without considering how the model was built, using simple op-
shape variations; and minimal model constraint changes. Sec- erations like grab, push, and pull [21, 22]. Although initially
tion 3.2 will provide detailed discussions on the formulation of proposed by industry, direct modeling may be traced back to
these three requirements. the local operations developed by academia in the 1980s [23–
 The major contributions of the paper include: 25]. Some widely used local operations in today’s CAD sys-
 tems are filleting and offsetting. The very local operation that
 1. Identifying the research problem underlying paramet- direct modeling stemmed from is the tweaking operation [23].
 ric/direct integration and its fundamental challenges; It is the predecessor of the push-pull operation in direct mod-
 2. Proposing a framework, called variational direct model- eling. The essential advance made is: tweaking does not allow
 ing, that can systematically handle any information incon- any violations to the model’s topology, while push-pulls allow
 sistencies in a CAD model after parametric/direct edits; such violations. With this relaxation, direct modeling achieves
 and unprecedented modeling flexibility. This, however, comes at a
 3. Formulating the high-level tasks of detecting and resolv- high price: associativity is discarded, and direct modeling lacks
 ing information inconsistencies as well-defined technical the capability of parameter-driven modifications.
 problems such as Booleans on solids and over-constraint Some efforts have been made to allow users to have both di-
 maximization. rect and parametric capabilities in the same modeler. To the
 best of the authors’ knowledge, there are five reported paramet-
 The following sections begin with a review on parametric
 ric/direct integration approaches, as summarized below.
modeling, direct modeling, and their integration in Section 2. A
 Integration Method I: Pseudo-Features This approach,
thorough analysis of issues and challenges of parametric/direct
 proposed by industry, simulates direct modeling within a
integration is given in Section 3. The overall framework of the
 history-based parametric modeler. User-specified direct edits
proposed integration method is presented in Section 4 and elab-
 are simply added to the end of the model’s construction history
orated in Section 5. Application examples and comparisons
 as pseudo-features, and the original history remains exactly as
with leading commercial CAD modelers are provided in Sec-
 before [14, 26]. Fig. 1a illustrates this strategy (this figure was
tion 6, followed by conclusions on the method’s advantages and
 created based on the modeling behavior of Siemens NX). This
limitations in Section 7.
 approach is very easy to implement and thus has been adopted
 by most CAD vendors. However, simply adding direct edits to
2. Related work the end of the model’s history creates complex modeling his-
 tory with questionable parameters [26]. This could mess up the
 Both parametric and direct modeling are built on top of solid model’s parametric information and lead to loss of meaningful
modeling, a CAD modeling approach established by Requicha parametric controls. The example shown in Fig. 1b illustrates
and Voelcker, then at University of Rochester, and Braid and this situation: changing dimension X causes an unpredictable
Lang, then in Cambridge [15, 16]. Solid modeling was pro- loss of face F2, which in turn disrupts the model regeneration
posed as an improvement to the preceding wireframe and sur- process at the second pseudo-feature. The perfect solution to
face modeling paradigms such that the informational incom- this problem is not using pseudo-features but transforming user-
pleteness problem observed in the two paradigms can be solved specified direct edits into appropriate redefinition of relevant
[17]. It is very suitable for documenting completed designs but features, as illustrated in Fig. 1c. The present work serves to
lacks the flexibility needed for design modifications. address the issue using this strategy.
 In view of the above limitation, parametric modeling aug- Integration Method II: Mode Switching This approach,
ments solid models with associativity (in the form of features proposed by industry as well, allows users to switch between
 2
Variational Direct Modeling: A framework towards integration of parametric modeling and direct modeling in CAD
(a) (b) (c)
 X
 `

 F1 F2
 + ü + +

 + + +

 - - -

 + Pseudo-Feature: + Pseudo-Feature: Pseudo-Feature:
 Feature
 Rotate F1 ü Rotate F1 Rotate F1
 Redefinition
 + Pseudo-Feature: × + Pseudo-Feature: Pseudo-Feature:
 Rotate F2 Rotate F2 Rotate F2

Figure 1: Limitations of the pseudo-feature approach: (a) the model’s construction history; and (b) increasing the X dimension cannot give the desired model
depicted in the dashed red circle but leads to a history regeneration failure because of the loss of face F2 (as indicated by the model in the blue circle); and (c) a
reasonable integration strategy is to redefine the slot feature based on the direct edits to avoid the situation of (b).

direct and parametric modeling modes in a same CAD software direct edit (if achievable) is often not unique. How to generate
package. Its implementation is very simple. When switching an exhaustive list of parameter tuning options and make robust
from the parametric mode to the direct mode, the parametric decisions among them still remains unknown.
model is downgraded to a B-rep model, then direct modeling
becomes applicable. However, it cannot recover any paramet- Integration Method V: Constrained Direct Modeling
rics when switching back from the direct mode to the paramet- This approach, again proposed by industry, allows users to ap-
ric mode [27]. ply direct edits while keeping all geometric constraints of the
 model in the background [31], through efficient geometric con-
 Integration Method III: Synchronous Technology This
 straint solving [32]. The geometric constraints being kept are
approach is, again, proposed by industry or more specifically
 generated by automatic constraint recognition algorithms, e.g.,
by Siemens NX. It can be viewed as as an improvement to the
 [33]. The disadvantage of this method is that the recognized
above mode switching method. Instead of convering the whole
 geometric constraints usually differ from the original design in-
feature model to a B-rep model when switching from the para-
 tent. In addition, this method downgrades direct modeling to
metric mode to the direct mode, it does a partial conversion.
 merely a graphical user interface (GUI) tool for making para-
The basic algorithm behind the partial conversion is as fol-
 metric modifications. For this reason, although the method also
lows. Features are separated into direct-edit features and ordi-
 takes the name of variational direct modeling, it is essentially
nary features. Only direct-edit features are converted to a B-rep
 another version of the traditional variational modeling and has
model. When modeling, the user moves an ordinary feature to
 little to do with direct modeling, thereby differing substantially
the direct-edit feature set and then carries out direct modeling,
 from the present work.
but this method requires all ordinary features prior to the fea-
ture being moved in the modeling history to be moved as well, The above review suggests that substantial progress has been
regardless of any design intent loss [28]. Clearly, this causes made in understanding and implementing parametric and direct
unnecessary loss of parametrics. (Note that there was a time modeling, and several directions have been tried with the goal
when synchronous technology also referred to 3D variational of integrating them. The reported integration methods are very
modeling [29, 30], but this interpretation appears not have been inspiring to this work. Nevertheless, their developments are still
implemented in the current Siemens NX software package.) at the early stage, and there are inherent drawbacks if seamless
 Integration Method IV: Operation Translating This ap- parametric/direct integration is desired. This work follows this
proach, proposed by both academia and industry (Autodesk), research direction but uses a new way to approach seamless
translates direct edits into operations of parameter tuning and/or parametric/direct integration. More specifically, an additional
order rearrangement of the features already presented in the module, called variational direct modeling, is to be proposed
model’s construction history [13, 14]. Currently, the transla- to maintain the information consistency in a model undergo-
tion is done by using heuristics, e.g., [13]. This way of working ing parametric/direct edits. Different from current conversion-
may help but cannot solve the problem altogether because not based methods which work in an indirect manner, it will resolve
all direct edits are achievable through those feature operations. any possible information inconsistencies in a straight and sys-
To make matters worse, feature parameter tuning for a given tematic manner.
 3
Variational Direct Modeling: A framework towards integration of parametric modeling and direct modeling in CAD
3. Issues and challenges of parametric/direct integration takes a new parameter value, and the third one should be
 removed. Consequently, an under-constrained GCS is gen-
 As already noted, for parametric/direct integration to be erated. The first and third rows of the figure show two GCS
seamless, the model should act like a B-rep model for direct ed- update cases where the constraint state remain unchanged
its, and a parametric model for parametric edits. To achieve this and the constraint state changes from well-constrained to
goal, the underlying problem needs to be solved is: paramet- over-constrained, respectively.
ric/direct edits cause information inconsistencies among topol- 3. Shape-associativity inconsistency (SAI) B After a
ogy, geometry, and constraints in the model. The fundamen- parametric edit, some parameters of the model GCS are
tal challenge of resolving such information inconsistencies is: changed, and then the consistency between the original
there often exist many resolution options, and decision-making model shape and GCS is broken.
among them needs to be systematic. The next two subsections
explain these two statements. The third inconsistency type can be handled using existing
 research work, whereas the first two require new input. For
3.1. From integration to information inconsistency the third type, the essential task involved is to solve the model
 GCS with the given new parameter values, and then to update
 There are three basic types of information in a CAD model:
 the model shape accordingly. Geometric constraint solving is a
geometry, topology, and geometric constraint system (GCS).
 well-established field, and many effective algorithms have been
Geometry and topology together determine the actual shape of
 made available [26, 36]. It should be noted here that, as re-
the CAD model; the GCS wrapped around them represents the
 vealed by a recent study by Gonzalez-Lluch et al. [37], a user-
associativity embedded into the CAD model. Parametric edits
 specified GCS often contains redundant constraints which can
are made through the GCS information layer, and direct edits
 hinder design reusability. It is thus necessary to eliminate such
via the geometry information layer. The major issue here is:
 redundancies before handling SAI (B), using tools like the one
when an information layer is edited, the changes cannot be au-
 presented in [37]. For this reason, this work will not focus on
tomatically reflected in others by current model representation
 the third type. SAI will then refer exclusively to SAI (A) in the
schemes. As a result, the consistency of the three information
 following text, unless otherwise stated.
layers in the pre-edit model is broken, and then an invalid model
is generated after a parametric/direct edit. To summarize, the changed geometry due to a direct edit
 Three types of information inconsistency are possible: could cause inconsistencies with the unchanged topology and
 constraints, consequently generating an invalid solid model
 1. Geometry-topology inconsistency (GTI) After a di- and/or GCS. For GTIs, the cause is either losing old connec-
 rect edit, the changed geometry could be inconsistent with tions or inserting new connections. They take the form of in-
 the unchanged topology in two ways: (1) some connec- valid boundary faces. For SAIs, the source is due to situations
 tions in the topology cannot be formed any more, e.g., where there are extra constraints or insufficient constraints to
 two originally connected planar faces become parallel af- restrict the degree-of-freedoms (DOFs) of the model geome-
 ter a push-pull; and (2) extra connections are formed, as try. They take the form of over-constraint (including redundant
 shown in Fig. 2. Either way leads to invalid boundary constraints) or under-constraint.
 faces [12], e.g., open face, self-intersected face, and non-
 manifoldness. Such faces break the validity of the pre-
 3.2. From information inconsistency to decision-making
 edit model. (For formal definitions of the validity of B-rep
 solid models, please refer to Mantyla’s work [34] or our GTIs and SAIs require rectifications on the model topology
 previous work [12].) and GCS to accommodate the changed geometry. Resolving in-
 2. Shape-associativity inconsistency (SAI) A After a di- formation inconsistencies is not trivial because there often exist
 rect edit (and successfully resolving GTIs), the model many resolution options. Fig. 4 shows one such example for
 takes a new shape. This shape, or a portion thereof, will GTIs. In this example, a rotational push-pull direct edit is ap-
 have new boundary faces and dimensions, making some plied to the blind hole model, where the face colored blue is the
 geometric constraints in the model GCS inapplicable any push-pulled face, and the orange face indicates the target posi-
 more. Take the model in the second row of Fig. 3 as an tion. If the original topology is not corrected to accommodate
 example. Before the rotational push-pull move, it is a the face’s new position, an invalid model will be generated, see
 cuboid with six geometric constraints. After the move, its the rightmost model at the first row, where self-intersections
 top face is gone, and the right face is slanted. Then all (indicating model invalidity) are generated. Even for a single
 geometric constraints related to these two changed faces invalid boundary face, there are multiple options that can do
 become incompatible with the new shape, requiring a con- invalidity resolution and give valid boundary loops, as shown
 straint update. Updating model GCS with the new model by the three sample options in the second row of the figure.
 shape will remove some existing constraints from and/or However, decision-making among resolution options for neigh-
 add new constraints to the model GCS, which could break boring faces is coupled because, for the final model to be valid,
 the model’s well-constraint state. Take the same model any edge on a resolved face should be shared with a neighbor-
 as an example. After constraint update according to the ing face so as to satisfy the manifoldness condition, and mean-
 new shape (i.e., a prism), the second geometric constraint while the neighboring faces have to be well-bounded as well.
 4
Variational Direct Modeling: A framework towards integration of parametric modeling and direct modeling in CAD
Pre-Edit Carrier Surfaces Post-Edit Carrier Surfaces Regenerated Model
 (Valid)
 F5

 F2 F3 Push-Pull
 F1
 F4 Blue Face e 5°
 tat
 F6 Ro

 Pre-Edit Topology
 F5 Post-Edit Carrier Surfaces Regenerated Model
 Ro (Invalid)
 tat
 e 45
 F3 °
 F4 F1 F2
 New
 Connection
 F6 Inserted

 B-rep Model Definition Varied Modeling Results

Figure 2: Examples of geometry-topology inconsistencies (blue face: push-pulled face; red arrow: push-pull direction). Model regeneration means boundary
re-evaluation using the post-edit surfaces and pre-edit topology.

 Pre-Edit Model Post-Edit Solid Updated Model State
 Solid Model GCS Model GCS Change
 F4 F3 1. Distance(F1,F3)=1 1. Distance(F1,F3)=1
 F5 2. Distance(F2,F4)=1 2. Distance(F2,F4)=2
 F2 Well
 3. Distance(F5,F6)=1 3. Distance(F5,F6)=1
 To
 F1 4. Perpendicular(F1,F5) 4. Perpendicular(F1,F5)
 Well
 5. Perpendicular(F1,F4) 5. Perpendicular(F1,F4)
 6. Perpendicular(F4,F5) 6. Perpendicular(F4,F5)
 F6
 F4 F3 1. Distance(F1,F3)=1 1. Distance(F1,F3)=1
 F5 2. Distance(F2,F4)=1 2. Angle(F2,F4)=135° Well
 F2 3. Distance(F5,F6)=1 3. (Removed) To
 F1 4. Perpendicular(F1,F6) 4. Perpendicular(F1,F6) Under
 5. Perpendicular(F1,F4) 5. Perpendicular(F1,F4)
 6. Perpendicular(F4,F6) 6. Perpendicular(F4,F6)
 F6
 1. Distance(F1,F3)=1 1. Distance(F1,F3)=1
 F4 F3 2. Distance(F5,F6)=1 2. Distance(F5,F6)=1
 F5 3. Perpendicular(F1,F5) 3. Perpendicular(F1,F5) Well
 F2 4. Perpendicular(F1,F4) 4. Perpendicular(F1,F4) To
 E1
 4 F1 5. Perpendicular(F4,F5) 5. Perpendicular(F4,F5) Over
 6. Angle(F2,F4)=150° 6. Parallel(F2,F4)
 F6 7. Angle(F2,F5)=60° 7. Perpendicular(F2,F5)
 8. Length(E1)=1 8. Length(E1)=1

Figure 3: Model GCS update and varying constraint state change results (blue face: push-pulled face; red arrow: push-pull direction) [35]. Note that the first two
columns underneath “Pre-Edit Model” are considered a single column.

For example, if the top one of the three sample options is cho- modeling results is also challenging. Among the many resolu-
sen, there is no way that other resolution options on neighbor- tion options, some will lead to invalid modeling results; among
ing faces can match with it to give a valid model. As a result, the valid results, there will only be one in line with the de-
among the many valid resolution options for individual invalid signer’s intent. For example, the middle resolution of the three
boundary faces, only a few combinations of them can give valid sample options in Fig. 4 will lead to a valid overall model but
outcomes for the whole model. Most of the combinations will with a missing hole, while the bottom one can give a satisfac-
lead to resolution failures. Hence, decision-making in GTI res- tory result. It is difficult to always attain intended results due
olution is error-prone. to the involvement of design intent [38]. To make the problem
 In addition to the validity issue, the generation of predictable more tractable, this work relaxes the predictability requirement
 5
Variational Direct Modeling: A framework towards integration of parametric modeling and direct modeling in CAD
nature.
 Model In summary, the major issues of parametric/direct integra-
 Push-Pull Regeneration
 tion are the possible GTIs and SAIs in a model undergoing di-
 rect edits. To handle them, there often exist many resolution
 options, and systematic decision-making is needed. For GTI
 Error resolution, the challenges lie in the robustness towards gener-
 Most are ⋮ ⋮ ating valid modeling results and continuous model variations.
 invalid
 For SAI resolution, the challenges lie in the robustness towards
 generating valid resolution options and in the effectiveness of
 Many are prioritizing them.
 valid but
 unpredictable ⋮ ⋮ Invalid
 Boundary
 Face 4. The proposed methodology: variational direct modeling
 Only one is
 valid and
 predictable Based on the above problem analysis, this work proposes a
 Resolution Options
 parametric/direct integration framework as shown in Figs. 5, 7
 and 8. This section focuses on outlining the framework’s high-
Figure 4: Examples of different GTI resolution options and their varying out-
comes. level workflow. The low-level implementation details will be
 described in the next section. Fig. 5 shows the workflow at
 the highest level. The four modules in the right dashed rect-
a little bit to the continuity requirement, which means that the angle represent the framework’s main component. It accepts
model variation follows a continuous change pattern. This re- the changed model information (a consequence of the user’s
laxation is inspired by Raghothama and Shapiro’s work [39]. edit) as inputs, then corrects the topology (for GTIs) and the
They showed that much, if not all, of the unpredictable mod- constraints (for SAIs) to accommodate the changed model in-
eling behavior in CAD can be avoided by the continuity re- formation, and finally outputs a consistent set of information to
quirement. (Note that relaxation means approaching a difficult update the model undergoing edits. The specific model infor-
problem by a nearby problem that is easier to solve. In our mation our method needs to draw from the model is listed in the
case, the predictability is the difficult problem, and the continu- middle dashed rectangle. The correction basically goes through
ity is the nearby problem.) Overall, the fundamental challenge two steps: detection and resolution. The detection step checks
of decision-making in GTI resolution lies in the robustness to- if there are any information inconsistencies and, if yes, prepares
wards generating valid modeling results and continuous model the inconsistent information in a form useful for the subsequent
variations. resolution step.
 SAI resolution is under the same situation of multiple resolu-
tion options. Consider, for example, the bottom case in Fig. 3. 4.1. GTI detection and resolution
The updated model GCS has an over-constrained part: a cycli- Instead of postponing GTI detection and resolution to the end
cal dependency among constraints 5, 6, and 7. Removing any of a direct edit, this work employs an iterative approach, repeat-
constraint not involved in the dependency cannot resolve the ing the following two procedures until the direct edit is finished:
over-constraint and leads to a failed resolution. Only removing (1) detecting the next point where GTIs occur; and (2) immedi-
a constraint relevant to the dependency can resolve the over- ately resolving the detected inconsistencies at this point. This
constraint, as shown in Table 1. Therefore, robustness towards approach is illustrated in Fig. 6, using the model in Fig. 4 as
generating relevant constraints (i.e., valid resolution options) is an example. There are three critical points where GTIs occur
one of the fundamental challenges of SAI resolution. during the entire push-pull move: the first is when the blue face
 Quite often, there is more than one valid resolution option hits the right side face of the hole; the second is when the blue
even if the resolution method successfully avoids invalid resolu- face hits the left side face of the hole; and the last one is when
tion options. The options presented in Table 1 are typical exam- the blue face hits the left side face of the block. Whenever a
ples for such a situation. Decision-making among these valid critical point is reached, the formed GTIs is resolved immedi-
resolution options is difficult due to, again, the involvement of ately, generating an intermediate model at this point (see the
design intent. As a result, a completely automatic decision- three models in the lower row of Fig. 6). The rest of the di-
making method seems to be impossible, at least at present. A rect edit is then applied to this intermediate model, rather than
decision-support scheme may be a more practical choice. The the original model. Generalizing the procedures illustrated in
key here is to have a prioritization of valid resolution options so this example leads to the algorithmic workflow shown in Fig. 7.
as to recommend them to users in an incremental manner. An In the diagram, the critical points where GTIs occur have been
effective prioritization scheme should give a good measure of abbreviated as GTIPs (GTI points).
the impact of removing/adding a constraint on the model shape. The essence of the iterative approach is to decompose a user-
The problem is, however, not straightforward since the qual- specified direct edit into several sequential, smaller direct edits.
itative operation of removing/adding constraints has no direct The benefits of doing so is that inconsistency resolution right
connections to model shape changes which are quantitative in at a GTIP can be made simple since a valid reference model
 6
Variational Direct Modeling: A framework towards integration of parametric modeling and direct modeling in CAD
Table 1: Candidate resolution options for the bottom case in Fig. 3 [35].

 Updated Candidate Candidate Candidate
 Model GCS Resolution 1 Resolution 2 Resolution 3
 1. Distance(F1,F3)=1 1. Distance(F1,F3)=1 1. Distance(F1,F3)=1 1. Distance(F1,F3)=1
 2. Distance(F5,F6)=1 2. Distance(F5,F6)=1 2. Distance(F5,F6)=1 2. Distance(F5,F6)=1
 3. Perpendicular(F1,F5) 3. Perpendicular(F1,F5) 3. Perpendicular(F1,F5) 3. Perpendicular(F1,F5)
 4. Perpendicular(F1,F4) 4. Perpendicular(F1,F4) 4. Perpendicular(F1,F4) 4. Perpendicular(F1,F4)
 5. Perpendicular(F4,F5) 5. Perpendicular(F4,F5) 5. (Removed) 5. Perpendicular(F4,F5)
 6. Parallel(F2,F4) 6. (Removed) 6. Parallel(F2,F4) 6. Parallel(F2,F4)
 7. Perpendicular(F2,F5) 7. Perpendicular(F2,F5) 7. Perpendicular(F2,F5) 7. (Removed)
 8. Length(E1)=1 8. Length(E1)=1 8. Length(E1)=1 8. Length(E1)=1

 CAD Model Data Information Consistency Maintenance

 Constraints: GTI GTI
 I Attachment Detection Resolution
 User- N Geometric Invalid Validity &
 Specified T Algebraic Boundary Continuity
 E Faces
 Edits
 R
 F Topology:
 A Connections
 C SAI SAI
 E Resolution Detection
 Geometry:
 Elements Validity & Over- & Under-
 Parameters Priority Constrained Parts

 Figure 5: Overall framework of information inconsistency resolution in variational direct modeling.
 1

 is close by. By contrast, inconsistency resolution at the end of
 Direct Detection & Resolution a direct edit is not under such an advantageous situation. (It
 should, however, be noted that, although the iterative approach
 applies to almost all direct modeling operations such as push-
 pull and face-resize, it cannot handle the face-delete operation
 because this operation removes boundary faces in an abrupt
 way and it is impossible to decompose it into smaller pieces.
 This can be considered as a serious limitation of the proposed
 Iterative Detection & Resolution method.)

Figure 6: Illustration of iterative GTI detection and resolution (blue face: push- 4.2. SAI detection and resolution
pulled face; red arrow direction: rotation direction; its length: rotation angle).
 After resolving all GTIs, the next task is to execute SAI de-
 tection and resolution modules. As already noted, SAIs take
 the form of over-constrained and under-constrained parts. The
 Intermediate
 Model & Rest
 Resolve major task of the SAI detection module is thus to take out
 GTI
 Direct Edit such parts and use them as inputs to the SAI resolution module
 YES to generate resolution options and to prioritize them forDirect easy
 Start
 Edit
 decision-making. However, simply picking out those parts and
 Original Model Detect The
 Start Any GTIP?
 & Direct Edit Next GTIP presenting them altogether do not provide any insightsUserinto how
 individual inconsistencies are formed. They
 Resolution should
 Option be decou-
 Dictation
 NO Generation & Decision-Making
 pled before moving to the SAI resolution module.
 Prioritization
 Decoupling
 End
 Model Boundary is important because a constraint relevant to the resolution of
 Regeneration
 one over-constrained (or under-constrained) part could be irrel-
 Maximal
 evant to others. When handling oneWell-Constraint
 part, including NO any Over-
 irrel- NO
 Constrained? C
 Detection
 Figure 7: Schematic diagram of GTI detection and resolution. evant constraints can only complicate the SAI resolution work
 that follows. YES
 Dec
 7
 Minimal Res
 Over-Constraint G
 Detection P
Variational Direct Modeling: A framework towards integration of parametric modeling and direct modeling in CAD
SAI Detection
 Direct GCS Modules
 5. Implementation details of variational direct modeling
 Start
 Edit Update
 SAI Resolution Having outlined the framework, this section is devoted to the
 User Modules
 Dictation
 methods that can implement its constituent modules, demon-
 Resolution Option
 Generation & Decision-Making
 strating the practical feasibility of variational direct modeling.
 Prioritization The discussions/formulations in the previous section has led to
 a breakdown of implementing the framework into solving the
 Maximal
 NO Over- NO Well- YES
 following four critical technical problems:
 Well-Constraint End
 Constrained? Constrained?
 Detection 1. Next GTIP detection for implementing the GTI detection
 User
 YES Dictation
 module in Fig. 5;
 Decision-Making
 2. GTI resolution at GTIPs for implementing the GTI resolu-
 tion module in Fig. 5;
 Minimal Resolution Option
 Over-Constraint Generation & 3. Minimal over-constraint and maximal well-constraint de-
 Detection Prioritization
 tection for implementing the SAI detection module in
 Fig. 5; and
 Figure 8: Schematic diagram of SAI detection and resolution. 4. Constraint prioritization for implementing the SAI resolu-
 tion module in Fig. 5.
 Next we will show how currently available algorithms can
 To accomplish the decoupling, the sizes of over-constrained solve these critical problems, to what extent, what new im-
parts should be minimized, and those of well-constrained parts provements can be proposed to complement existing methods,
maximized. An over-constrained part is essentially a group of and which parts still remain problematic. Basically, with exist-
constraints having dependencies. If minimized, it cannot be ing methods and some slight improvements, a preliminary pro-
decomposed into smaller subparts, and then there is only one totype can be implemented for demonstrating the framework’s
cyclical constraint dependency within it. As such, no irrelevant feasibility, but for the framework to fully function, further de-
constraints can be included. Having only one cyclical constraint velopment is still needed, especially for the fourth technical
dependency in an over-constrained part also provides the fol- problem. We hope that these open spaces will attract more re-
lowing benefit: removal of any constraint can break the cyclical search efforts from our community to eventually obtain a seam-
dependency, as shown by the resolution options in Table 1. In less integration of parametric and direct modeling. It should
other words, the valid resolution options for resolving a mini- also be noted that the main focus and contributions of this paper
mal over-constrained part are its constraints themselves. lies in the theoretical foundations for parametric/direct integra-
 tion and the variational direct modeling framework, as already
 For under-constrained parts, a similar requirement can be presented in Sections 3 and 4. The algorithms to be used to
stated: their sizes should be minimized. This is equivalent to solve the above problems only represent feasible methods, not
maximizing every well-constrained part in the model because necessarily meaning the best or only ways.
a model’s under-constrained state can be expressed in terms
of DOFs between its well-constrained parts. Once the well- 5.1. Next GTIP detection
constrained parts are maximized, viable resolution options are
 As direct modeling is a relatively new notion in the CAD
constraints that can restrict the DOFs between them (while not
 domain, there has not been much research work related to GTIP
adding new over-constraint to the model). Any constraints that
 detection. Existing methods [12, 40–43] consistently employ a
are defined within individual maximized well-constrained parts
 heuristic strategy to check if a given modeling operation will
are invalid resolution options.
 cause GTIs and when they occur. The basic idea is: it first
 Based on the above discussions, we outline the workflow relates GTIPs to degenerated configurations of boundary faces
shown in Fig. 8 for SAI detection and resolution. It begins (e.g., two originally intersected planes become parallel), and
with a user-specified direct edit, then carries out GCS update then checks if those generated degenerated configurations can
according to the new model shape, then sends it to an analyzer actual happen.
(the modules in diamond shape) to evaluate its constraint state. Using the above strategy, Lipp et al. [40] designed a set of
If the model is still well-constrained, nothing needs to be done; complete heuristics to predict when GTIs will occur during a
otherwise, the workflow is directed to two different branches. push-pull move, but only for polygonal mesh models that are
In both branches, it first takes out information inconsistencies composed only of planar and non-holed boundary faces. Un-
(the two detection modules) and then, based on the detection re- fortunately, such models can only make up a small portion of
sults, generates and prioritizes valid resolution options (the two solid models. In our previous work [12], another set of heuris-
prioritization modules), then presents the prioritized options to tics have been derived to extend Lipp’s work to handling mod-
the user for decisions. An automatic mode is also provided in els composed of linear, quadratic, and holed boundary faces
case the user chooses not to handle the inconsistencies manu- (but not involving freeform surfaces). However, the developed
ally. In this mode, the top options in the prioritization lists will heuristics are still restrict to local GTIs that are formed between
be chosen. neighboring faces. For global GTIs, e.g., one boundary face
 8
Variational Direct Modeling: A framework towards integration of parametric modeling and direct modeling in CAD
`

penetrating into another, both the methods presented in [12, 40] Algorithm
 Algorithm1 1:
 Next GTIP Detection
are found limited. Input: , − The model and applied direct edits
 In parametric modeling, there are also some research stud- Output: − Next GTIP
ies [41, 42] related to GTIP detection. Their task is to com- 1. ← ∅ // for storing affected faces
pute critical points at which the model topology changes during
 2. ← ∅ // for storing degenerated configurations
parametric edits. This is a little different from the problem con-
 3. \ ← DoBoundaryRegeneration( , )
sidered here, but the notion of these critical points is concep-
tually similar. The methods presented in [41, 42] also employ
 4. ← GetIllBoundedFaces(M)
heuristics on possible degenerated face configurations to pre- 5. for each 1 , 2 ∈ do // using heuristics
dict topology change points during a parametric modification. 6. ← GetDegeneratedConfigures( 1 , 2 )
Nevertheless, before checking degenerated face configurations, 7. end for
they first identify boundary faces affected by the modeling op- 8. for each ∈ do
eration to reduce checking time (to be called the culling idea). 9. if IsHappend( ) = TRUE then
 In this work, the heuristics developed in [12] and the idea pre- 10. ← Min( , getOccuringTime( ))
sented in [41, 42] have been combined to implement the GTIP 11. e end if
detection module. We do not use the culling idea to accelerate 12. end for
GTIP detection but to handle global GTIs. Specifically, before 13. Return 
applying the heuristics developed in [12], we perform boundary
regeneration to see which boundary faces in the model become (a) (b) (c) (d)
invalid. Boundary faces of this kind are the affected faces dur-
ing the direct edit. Clearly, affected faces so obtained comprise
a superset of the boundary faces related to global GTIs (if any)
during a direct edit.
 With affected boundary faces in place, we directly apply the
 Collision
heuristics from [12] to them to generate an exhaustive list of Intersection Tangency
degenerated configurations, then check if any of these candi-
dates can actual happen for a specific direct edit, resulting in a
reduced set of candidates. Finally, we pick the closest remain- Collision
ing candidate as the desired next GTIP. The above procedures Modeling Space
have been summarized in Algorithm 1. This algorithm will not
miss any GTIPs because the heuristics from [12] were devel- Figure 9: Illustration of degenerated configurations in GTIP detection (blue
oped in a systematic way. A brief version of the derivation is face: push-pulled face; curvy arrows: rotational push-pull; straight arrows:
as follows. As already noted in Section 3, there are two types translational push-pull) [12].
of sources for GTIs: inserting new connections and losing old
connections. Exhaustive combinations of these two sources and
surface types give three possible ways GTIs could occur, and mesh models have been demonstrated, but how to extend them
they can be translated to the following four degenerated config- to handling models composed of linear and quadratic surfaces
urations in total: surface-surface intersection, surface-face col- remains unknown. Different from their direct topology modi-
lision, surface-surface tangency, and face-workspace collisions, fication method, our previous work [12, 43] has developed an
as illustrated in Fig. 9. Here we have distinguished faces that indirect approach, which transforms the task here to Boolean
are short for boundary faces, and surfaces that underlie bound- operations on the model volume. Fig. 10 illustrates the trans-
ary faces. formation, based on the first GTIP in Fig. 6. The desired inter-
 A practical note should be noted here. Doing an exhaustive mediate model for this GTIP can be directly obtained through
checking against all generic degenerated configurations is time- subtracting the wedge-shaped model from the original model.
consuming for general cases, but this is acceptable in the con- Use of Boolean operations instead of direct topology modifi-
text of direct modeling because direct edits are local modifica- cation can provide the important advantage that validity of the
tions and the actual number of boundary faces involved in the resulting model is automatically guaranteed [4]. Also, there is
checking is usually very small. no need to get down to the model’s low-level topological and
 geometric data, which is otherwise error-prone. In this work,
5.2. GTI resolution at GTIPs this approach has been adopted to implement the GTI resolu-
 GTI resolution is to modify the before-GTIP topology to ac- tion module.
commodate the after-GTIP geometry while ensuring valid mod- It is also easy to attain continuous model variations using the
eling results and continuous model variations. This task is Boolean-based method. What we need to do is to add continu-
also under the same situation that there is little research work ity constraints to the construction of volumes to be subtracted
[12, 40, 43] for it. Lipp et al. [40] proposed to directly modify from or added to the original model. These volumes are to be
model topology to resolve any detected GTIs through, again, a called auxiliary models. The specific continuity constraint is
set of heuristics. Robustness of those heuristics for polygonal [12]: restricting the auxiliary model to the volume swept by the
 9
Variational Direct Modeling: A framework towards integration of parametric modeling and direct modeling in CAD
GCS can be logically derived from the theorems and rules, it
 is well-constrained; if there are extra constraints, it is over-
 constrained; otherwise, it is under-constrained. Despite the
 mathematical elegance, they suffer from the issue of having an
 exhaustive set of geometric theorems and derivation rules so
 that commonly used geometric constraints can be included.
 Graph-Based This category is the most popular in the lit-
 erature. The basic idea is first converting a model GCS to a
 graph, then analyzing this graph to obtain constraint state infor-
 mation instead of using the original GCS. From this idea, two
 Boolean Subtraction
 lines of development have been established. The first line tries
 to recognize subgraph patterns that correspond to known shapes
Figure 10: Illustrations of Boolean-based GTI resolution (the upright subfigure from a given constraint graph. It is pioneered by Owen [46]
 1
is the same as that in Fig. 6).
 and much improved in [47–49] in the size of the pattern library.
 The second line compares DOFs of the model geometry with
edited surface from the current point to the next GTIP, as well as degrees of restriction of the model GCS. It was first proposed
bounded by its neighboring surfaces. A four-step construction by Bardord [50] and Serrano [51], and detailed in [52–54]. In
algorithm has been developed for this purpose, as illustrated in 2001, these two lines were unified under a framework proposed
Fig. 11 and summarized below: by Hoffmann et al. [32]. Ever since, there has still been some
 good progress, e.g., those discussed in [44], but the foundations
 • The first step is to pick out relevant neighboring boundary remain unchanged. Graph-based methods have seen wide appli-
 faces and extend them to cover the whole sweeping range cations by industry. They are, however, unable to handle GCS
 of the direct edit. having constraint dependencies (except for the simplest struc-
 • The second and third steps work together to get the volume tural dependencies) [55, 56]. This is because, once the model
 bounded by the neighboring boundary faces generated in GCS is converted to a graph, only its combinatorial information
 the first step and the directly edited boundary faces. The is retained, and all geometric information is discarded. This
 volume generated in this way has two possible types: if limitation makes graph-based methods inapplicable to the SAI
 the direct edit adds material to the model, the volume is detection problem considered in this work. (It should be noted
 additive; if it removes material, the volume is subtractive, that graph-based methods have a very large body of papers, and
 as shown in Fig. 11. the above discussion only covers some important research stud-
 • The last step carries out the actual Boolean operations be- ies due to page length limit.)
 tween the original model and the auxiliary models gener- Perturbation-Based To overcome the limitation of graph-
 ated by the previous steps. based methods, Michelucci et al. [56] proposed the witness
 configuration method (WCM). This method examines how con-
 It should be noted here that the above steps only represent straint equations behave under infinitesimal perturbations made
a brief introduction to the algorithm. It clearly involves more to the constraint equation variables, and the behavior is de-
technical details and singular cases than the simple case illus- scribed by the associated Jacobian matrix of the constraint
trated in Fig. 11. For more details of how to handle such issues, equations. Different constraint states have different perturba-
please refer to [12, 43] for a complete version of the algorithm. tion behavior [57]. Despite its effectiveness in handling con-
 straint dependencies, the presented algorithms have difficulties
5.3. Minimal over-constraint and maximal well-constraint de- in minimizing over-constraint and maximizing well-constraint
 tection due to the use of greedy algorithms. For this reason, a se-
 The detection task here includes the evaluation of the model’s ries of WCM-based algorithms have been proposed in our
constraint state and, if not well-constrained, the extraction of prevous work [35, 58] to automatically extract the minimal
minimal over-constrained parts and maximal well-constrained over-constrained parts and maximal well-constrained parts in
parts in the model. This is a topic extensively studied in the a model GCS.
field of geometric constraint solving, see [26, 44] for a thor- Considering that SAIs often have constraint dependencies,
ough review. The proposed methods may be classified into the WCM has been adopted to accomplish the constraint state eval-
following four categories. uation task when implementing the SAI detection module. For
 Solving-Based This category of methods analyze a the other task of minimal over-constraint and maximal well-
model’s constraint state by directly solving it through numer- constraint extraction, the algorithms developed in [35, 58] have
ical methods (e.g., homotopy continuation) or symbolic meth- been used. A brief introduction to the adopted methods is given
ods (e.g., Grobner bases) [26]. These methods are rarely used below.
in today’s CAD systems because they are very time-consuming. Using WCM, a model’s constraint state can be character-
 Logic-Based This category of methods apply the concept ized by its constraint equations’ Jacobian matrix [56]. If
of axiomatization to GCS. Their way of working relies on a set the Jacobian matrix has linearly dependent rows, the GCS is
of geometric theorems and derivation rules [45]. If a model over-constrained. The null space of the Jacobian matrix in-
 10
Rotation
 Axis Next GTIP
 Direct
 Edit
 Auxiliary
 Target Subtractive
 Model

 Su
 Surface

 btr
 Construction

 ac
 tio
 n
 Start
 Surface

 n
 tio
 di
 Ad
 Step 1: Face Additive
 Screening and Step 2: Face Step 3: Volume Step 4: Boolean
 Extension Trimming Construction Operations

 Figure 11: Illustration of the procedures used for auxiliary model construction.

dicates the model’s DOFs and, if it has more DOFs than the less research work on geometric constraint prioritization. The
six canonical rigid-body transformations, the model is under- presented methods may be roughly classified into qualitative
constrained.[57, 58]. From linear algebra, we know that depen- methods and quantitative ones. Qualitative methods prioritizes
dent rows in the Jacobian matrix J are reflected by solutions to constraints based on a set of heuristics on their type [61–64].
the linear system J T · x = 0. A vector x in the null space of J T Type-based prioritization can be effective in some application
represents an over-constrained part, and the nonzero elements scenarios because certain types of constraints could carry more
of x indicate the constraints involved in this part. To minimize engineering knowledge and occur more frequently than oth-
this part’s size is thus equivalent to requiring that the vector x ers. However, these methods cannot further prioritize geomet-
has the minimum number of nonzero elements. Then, we can ric constraints of same type. This is where quantitative methods
attain the minimized over-constrained parts by solving the fol- can help. A deviation-based measure has been proposed in the
lowing optimization problem: literature to prioritize geometric constraints [65, 66]. A similar
 idea has been used in this work to implement the SAI resolution
 min kxk0 s.t. J T x = 0, x , 0 module.
 x
 In this work, the qualitative and quantitative strategies have
where k · k0 is the `0 norm whose mathematical meaning is to been combined to accomplish the task of constraint prioritiza-
count non-zero elements in a vector. As such, the problem of tion. This leads to a two-level comparison scheme consisting
minimal over-constraint detection is transformed into a sparse of a rough comparison and a fine comparison. The rough com-
recovery (a.k.a. compressive sensing) problem, which is a well- parison is responsible for keeping constraints whose type may
researched problem in the image processing [59] and can be carry more design intent. For example, parallelism is likely to
solved numerically using the relaxation method described in carry more design intent than a general angle constraint. The
[60]. Using a series of mathematical manipulations, the prob- specific type precedence used in this work can be found in Ta-
lem of maximal well-constraint detection can also be trans- ble 2, based on the experimental data from [64, 65].
formed into a similar sparse recovery problem, refer to Section The fine comparison takes care of geometric constraints of
4.3 of [35] for a detailed derivation. same type. We compare them based on the concept of sensitiv-
 ity. Parameter changes made to different constraints often lead
5.4. SAI resolution option prioritization to varied model shape changes, which can be mathematically
 According to the workflow outlined in Fig. 8, the next step characterized by the notion of sensitivity (i.e., the rate of the
after getting the minimal over-constrained and maximal well- model shape change with respect to parameter changes). If a
constrained parts is to generate resolution options and then pri- constraint has a high sensitivity value, a small parameter change
oritize them. Generating valid resolution options is easy, given made to it will result in a large change on the model shape,
that those parts have been minimized/maximized (as already which may lead to a dramatic, unpredictable shape change. A
discussed in Section 4.2). The remaining critical task is thus model under such a situation is said to have a poor constraining
to prioritize the generated resolution options. scheme [67]. We thus use sensitivity to quantify a constraint’s
 Resolution options take the form of geometric constraints to impact on the model shape. With this choice, it is expected
be removed from or added to the model. Prioritizing them is that resolution options leading to a model with the least change
to put them in a certain order, which is determined by a binary rate will be chosen, then the least model variations could be
comparison operation that accepts two constraints as arguments expected for later parametric edits.
and determines which of them should occur first. Different from It should be noted that the above constraint prioritization
the topic of geometric constraint solving, there has been much method still employs heuristics. Therefore, it may have the
 11
and resolution suggestions. If the user wants the computer to
 Table 2: Rough prioritization based on constraint types.
 take care of all work, the two Auto options in red box 4 should
 Geometric Constraint Precedence be checked.
 Entities Type (1: high, 5: low)
Face Face Parallel/perpendicular directions, 1
 Distance between positions,
 6.2. Examples and comparisons
 Equal size parameters Based on the prototype modeler, the usefulness of the pro-
 General angle between directions 2 posed detection and resolution mechanism (i.e., those modules
 in Figs. 7 and 8) has been tested with examples taken from both
Face Edge Parallel/perpendicular directions, 2
 Distance between positions real and simulated data. Fig. 13 shows some of the test exam-
 ples. The blue faces are the edited faces, the red arrows de-
 General angle between directions 4
 pict push-pull directions, and the dashed red lines are rotation
Face Vertex Distance between positions 5 axes. For example, in Example 1a, the blue faces were rotated
Edge Edge Equal angle/length parameters, 3 counterclockwise by angle of 160 degrees. Table 3 summarizes
 Parallel/perpendicular directions, the comparison results with leading CAD software, based on
 Distance between positions the examples shown in Fig. 13. Some of the failure cases of
 General angle between directions 5 Siemens NX and Ansys SpaceClaim are also given in Fig. 14.
Edge Vertex Distance between positions 5
 Usually, NX signals model update failures by coloring relevant
 faces in red, and SpaceClaim does so by either coloring relevant
Vertex Vertex Distance between positions 5 faces in orange (e.g., the middle one) or giving a random, yet
 wrong shape (e.g., the left one).
 A more quantitative comparison between Siemens NX, An-
generalization issue. Currently, we mitigate this issue by in- sys SpaceClaim, and ours has also been carried out on a larger
corporating user guidence (if necessary), as shown in Fig. 8. set of 20 CAD models, including those already presented in
However, prompting the user to choose an appropriate result Fig. 13 and an additional set of the 12 CAD models shown in
may affect his/her workflow. In this regard, a constraint prior- Fig. 15. The testing was carried out by applying 10 random
itization method that can work in an automatic and intelligent direct edits to each test model and then measuring the meth-
way is much desired. This is where the state of the art is not ods’ success ratios. For the 200 = 20 × 10 random direct edits,
enough, and new developments are needed. half of them were purposefully set to not causing any topology
 changes on the models being edited. The final success ratios
 are as follows. For the 100 direct edits that not cause topol-
6. Modeling examples ogy changes, the success ratios of the three methods/tools are
 very close: Siemens NX (94%), Ansys SpaceClaim (96%), and
6.1. Prototype implementation ours (96%). For the rest 100 direct edits that involve topology
 To show effectiveness of the proposed framework, a prelim- changes, big difference has been observed: Siemens NX (76%),
inary prototype modeler has been developed using C++ in an Ansys SpaceClaim (84%), and ours (93%). This confirms the
Apple Macintosh environment (2.4 GHz Intel Core i5 with 8G proposed method’s robustness in handling information incon-
memory). The software’s architecture is similar to the open- sistencies.
source geometry processing and rendering framework Open- Fig. 16 shows one example where all the modules (i.e., the
Flipper (version 3.0). The modeler’s GUI is shown in Fig. 12, previously presented GTI detection and GTI resolution mod-
which implements the interface module of the framework out- ules) are assembled to work together. It involves a gear box
lined in Fig. 5. It was implemented using the QT library (ver- mount part model (obtained from the GrabCAD part library
sion 5.7). The other four modules of the framework, i.e., GTI https://grabcad.com/library). The applied direct edits are quite
detection, GTI resolution, SAI detection, and SAI resolution, comprehensive, including single-face edit, multiple-face ed-
were developed on top of the geometric modeling kernel Open its, the translational edit type, and the rotational edit type. In
CASCADE (version 7.0). All the numeric solving/optimization each subfigure, the blue text and arrow indicate the faces to be
tasks were carried out using the C++ library Eigen (version changed by the direct edit that follows, and those circled out
3.2.9) and MATLAB. by red ellipsed show the editing results. From all the examples
 To edit a model, the user clicks buttons in the direct model- and comparisons in Figs. 13, 14 and 16, the proposed method is
ing toolbox (red box 1), then a graphical model manipulation seen to improve significantly the robustness of direct modeling.
handle pops up (red box 2) to allow the user to make interactive Figs. 17, 18 and 19 show an example integrating the four
changes. To view the model’s geometric constraints, the user modules of GTI detection, GTI resolution, SAI detection, and
clicks the constraint processing button in the left sidebar, then SAI resolution. It is also based on a model downloaded from
the middle panel shown in Fig. 12 pops up, with all constraints the GrabCAD library. Fig. 17a shows the model shape updated
listed in red box 3. To see if there are any SAIs in the model, after a direct edit that rotates its top faces. Fig. 17b lists the up-
the user clicks the Analyze/Resolve button in red box 4, then dated model GCS, according to the new model shape. Fig. 18
the computer presents all information necessary to resolve them gives detected maximal well-constrained parts in the updated
(red boxes 5 and 6), including DOFs, constraint dependencies, model GCS. There are in total 7 parts found. For each part, the
 12
You can also read