What's new

Constraint Dialog wishlist

Max

Administrator
Staff member
Revision: please see this thread for our up-to-date thinking on the assembly constraint dialog.

This is for Assembly Constraints. As we start adding new constraints, we're rethinking the dialog(s) - ideally unifying them into one. If anyone has any ideas on what they want to see, please let me know.

Specifically - I'm asking for User Interface (e.g. "Why are there 2 dialogs" or "I can't tell which one to use") and User Experience (e.g. "Accepting/Denying constraints with a button is annoying") for this particular exercise. Stuff that can be changed via a change to dialog layout, interaction paradigm, etc. Though feel free to voice functionality improvements like "I want a constraint that does X". Most likely, the functionality changes will not be for v21.

Summary of suggestions aligned with this question:
  • Make sure all input fields don't have leading spaces.
  • Mouse-gestures/clicks of some kind that accept/deny the proposed constraint
  • (Clarification needed) have a "Constraint Identity" field that may be simply filled in
  • (See discussion below) Don't require the input box to lose focus before applying the value
  • Make the constraint reversible/undoable with one click instead of (in the main one) having to exit, delete, and then get back into constraints. The quick constraint was OK, but The main one has all the possibilities and is more convenient other than the undo.

Summary of 2D sketching constraint suggestions that will likely not be addressed for v21, but are great candidates for the future:
  • In general, sketch aids/operations that align, center, or other arrange features - like other cad programs have.
  • In general, add "snap to" sketch aids, such as snap to midpoint, intersection, tangent, corner, end, centerpoint, etc., again, like other programs have, such as Turbocad, Rhino, etc. These would not replace contraints, dimensions, or parametrics, but would only enhance and speed up sketching operations.
  • Tangent Constrains between Spline and lines or curves.
  • Dynamic sketch offsets/patterns
  • A constraint to allow centering of an object between two others, kind of a mirror of the symmetric constraint. An example would be centering a circle between two lines in a rectangle
 
Last edited:
Hi Max -- Whereas you have the list of "my comments" on this subject, my #1 request would be to have a "mouse button closure" (accept, reject, reverse, and offset (with keyboard entry of offset value) as this would seriously speed up Constraint work (at least it does for me in SolidWorks, SolidEdge, and CREO). And, as a 2nd request, have a "Constraint Identity" field that may be simply filled in. -- Lew
 

tk1247

Member
Hi Max -- I've discussed the following in a few places in the forum already - my thoughts/requests:

1. A constraint to allow centering of an object between two others, kind of a mirror of the symmetric constraint. An example would be centering a circle between two lines in a rectangle

2. Fully auto constrain new features made from offset and pattern operations

3. In general, sketch aids/operations that align, center, or other arrange features - like other cad programs have.

4. In general, add "snap to" sketch aids, such as snap to midpoint, intersection, tangent, corner, end, centerpoint, etc., again, like other programs have, such as Turbocad, Rhino, etc. These would not replace contraints, dimensions, or parametrics, but would only enhance and speed up sketching operations.

Thanks for considering these, Max.
 

AlexB

Member
Currently, when I type an offset value into the box and press enter, nothing happens. The part does not move. I have to click on the constraint type again for it move or click on 'reverse' twice. Clicking on the up and down arrows moves it, but only increments above and below zero (not the offset value). Clicking on the green tick accepts the constraint value correctly but without a preview. This might be just a quirk on my system or maybe I'm ignorant of a command. Pressing the tab key moves to the offset value but it would be great if pressing the enter key did too.
 

simonb65

Alibre Super User
Currently, when I type an offset value into the box and press enter, nothing happens. The part does not move. I have to click on the constraint type again for it move or click on 'reverse' twice.
+1

The initial values of the box need to reflect the current state of the UI and possibly not just a default value to init the dialog.

Totally agree in that any changes made in the constraint dialog (as they are being edited) should be reflected in the model. I accept that if typing a value (say 100) you don't want it moving 1 then 10 then 100. So maybe a delay from the last user activity (say 500ms) and the UI updates to reflect the current values set by the dialog. That gives you time to enter a value but don't get stupid redraws and you don't have to move on to the next edit box or for it to loose focus before you see the change! Maybe a user option to turn this live 'preview' on/off so changes only action on apply/ok.
 

Max

Administrator
Staff member
Totally agree in that any changes made in the constraint dialog (as they are being edited) should be reflected in the model. I accept that if typing a value (say 100) you don't want it moving 1 then 10 then 100. So maybe a delay from the last user activity (say 500ms) and the UI updates to reflect the current values set by the dialog. That gives you time to enter a value but don't get stupid redraws and you don't have to move on to the next edit box or for it to loose focus before you see the change! Maybe a user option to turn this live 'preview' on/off so changes only action on apply/ok.

So I've seen a lot of "do changes as I type" stuff.

Our issue is that no other dialog currently does this - we can argue they all should update in realtime versus when input focus is lost - but that's a much bigger change. What is more valuable - consistency across everything or this dialog acting as you describe, changing as you type, on the short term?
 

Max

Administrator
Staff member
The initial values of the box need to reflect the current state of the UI and possibly not just a default value to init the dialog

Do you mean the current state of the model?

For example, using the "regular" constraint dialog, if you apply a mate, the default value is the value of the current offset of the 2 parts. The quick constraint dialog assumes you want a 0 offset. Are you referring to needing the ability to take the model as currently offset and apply a constraint that reflects its current position?
 
Lew, please elaborate.
Max -- I have a Constraint that (say) "locates Pin A to Pin B for Depth Control." Thus, changing that value resets the relative Depth to which "Pin A" and "Pin B" protrude into another Part. I do this regularly so that others can easily find Constraints that get adjusted.
 

Max

Administrator
Staff member
Max -- I have a Constraint that (say) "locates Pin A to Pin B for Depth Control." Thus, changing that value resets the relative Depth to which "Pin A" and "Pin B" protrude into another Part. I do this regularly so that others can easily find Constraints that get adjusted.

Why is the Label feature unsatisfactory for this? What specifically is your suggestion on how to best approach this problem? Do we need dynamic naming so you could name a feature Offset of %offset% for example and in the feature tree it would represent the current value, e.g. "Offset of .35mm" as the name?
 
Lew, please elaborate.
Hi Max -- Let's say that I have set of Adjustable Pints that ,depending on their "Depth of Insertion" allow different positions to be "set." I often "rename the Constraint" to something like"X.XXX for Variation Q, Y.YYY for Variation R, Z.ZZZ for Variation S, or W.WWW for Variation T." Others might be "groups of Constraints" that represent "Position 1 when "Position 2" Constraints and "Position 3" Constraints are Suppressed (i.e. only 1 "group" can be unSuppressed at a time). Being able to easily define the "function" of a Constraint is very handy.

Being able to "Group" them and move them into an "indented & identified block" would add immensely to this power.
 

Max

Administrator
Staff member
Hi Max -- Let's say that I have set of Adjustable Pints that ,depending on their "Depth of Insertion" allow different positions to be "set." I often "rename the Constraint" to something like"X.XXX for Variation Q, Y.YYY for Variation R, Z.ZZZ for Variation S, or W.WWW for Variation T." Others might be "groups of Constraints" that represent "Position 1 when "Position 2" Constraints and "Position 3" Constraints are Suppressed (i.e. only 1 "group" can be unSuppressed at a time). Being able to easily define the "function" of a Constraint is very handy.

Being able to "Group" them and move them into an "indented & identified block" would add immensely to this power.

Lew, I'm not sure I'm getting it. I think we need a call. Let's touch base later this week.
 

tk1247

Member
Can you give me a simple example?
Sure. I had designed a part with a rectangular hole through the part. I then wanted to add a rectangular feature offset larger than the hole, but only part way through. I started a sketch on the original surface, projected a reference line of the original hole to the sketch, and did an offset operation to create the new recess outline. I then had to dimension the new feature separately to constrain it. Since the original hole was fully constrained, I would think an offset feature from it would then be constrained. I also ran into a situation where I created and constrained a hole in a corner of a rectangular part, then make a 2x2 pattern copy of the hole to the other 4 corners. Since the original hole was constrained, and the pattern operation has me define the diameters and offsets of the new holes, they should be fully constrained when complete - but they aren't.
 

JST

Alibre Super User
Make the constraint reversible/undoable with one click instead of (in the main one) having to exit, delete, and then get back into constraints. The quick constraint was OK, but The main one has all the possibilities and is more convenient other than the undo.
 

bigseb

Alibre Super User
Sure. I had designed a part with a rectangular hole through the part. I then wanted to add a rectangular feature offset larger than the hole, but only part way through. I started a sketch on the original surface, projected a reference line of the original hole to the sketch, and did an offset operation to create the new recess outline. I then had to dimension the new feature separately to constrain it. Since the original hole was fully constrained, I would think an offset feature from it would then be constrained. I also ran into a situation where I created and constrained a hole in a corner of a rectangular part, then make a 2x2 pattern copy of the hole to the other 4 corners. Since the original hole was constrained, and the pattern operation has me define the diameters and offsets of the new holes, they should be fully constrained when complete - but they aren't.

Not an assembly constraint but I agree that offset sketch features should retain their offset values and be constrained accordingly.
 
  • Like
Reactions: MKR

Max

Administrator
Staff member
Make the constraint reversible/undoable with one click instead of (in the main one) having to exit, delete, and then get back into constraints. The quick constraint was OK, but The main one has all the possibilities and is more convenient other than the undo.

We'll be combining the 2 dialogs with hopefully the best features of both paradigms.
 
Top