Getting rid of implied constraints

Getting rid of implied constraints

Anonymous
Not applicable
2,389 Views
5 Replies
Message 1 of 6

Getting rid of implied constraints

Anonymous
Not applicable

This happens to me a lot, and I usually ignore it.  But tonight it became particularly annoying. I drew two rectangles.  I then did a link to the part that defined them, where the parameters you see were exported, and I imported the dimensions.  The part defines the matching holes, so I had to add (or subtract) a "tab clearance" so these tabs would be slightly smaller than the holes they are going into.  I connected them with a construction line, and the "holder radius" is the distance from the center point of the line to the center point of the tab (a two-point centered rectangle).  All that is left to do is to get these lined up vertically.  This should be easy.  The construction line is connected to the center points of the tab rectangles, so if I add a horizontal constraint, it should cause these two to line up across from each other.  Instead, I get the "adding this constraint will over-constrain the sketch" error.  So, I do what I usually do when one of these weird inferred constraints gets in my way: I tried to move it.  So I selected the left rectangle, selected the center point for the move, and got the warning that there were constraints that would have to be relaxed to do the move.  Fine, relax them.  Except that when I tried to drag, it came out and told me that I had to remove constraints before trying to move it.  Hmm...didn't I just tell Inventor to do that?  And, in any case, when I show constraints (and I dragged them out so the are visible, all the constraints except the = constraints were internal to the rectangle itself.  Its top and bottom are parallel to each other (//), as are the left and right sides,  It has a right angle constraint between the top line and the right-hand line, and the horizontal constraint applies to the top line.  The two = constraints make the top line of the left rectangle have the same length as the top line of the right rectangle, and the other = constraint makes the right line of the left rectangle have the same length as the right line of the right rectangle.  I see no constraint that should keep me from adding a horizontal constraint to the construction line connecting them, nor do I see any recognizable constraint that would keep me from moving the left rectangle, especially once I told it to release any constraints it needed to.  So where is the constraint it tells me I need to remove?  I See No Constraint Here!  How could it have a constraint that is not on display?  Why won't it tell me what that constraint is?  I don't mind if it occasionally infers a constraint I don't want; I do mind that it infers a constraint it won't let me remove (even though I told it to) and won't reveal to me.  I tried relaxing the infer-constraints to avoid this, but then it gave me rectangles that would not remain rectangles; if I grabbed a corner and dragged, I got some weird quadrilateral shape that I am to far from my geometry course (like 61 years from it) to identify.  If I were a conspiracy theorist, I would attribute this to "deep state" being maintained, in secret.  Somebody knows about that constraint; why don't I get to know about it?

 

Also, it is not just making the construction line have a horizontal constraint; it also won't let me make the bottom line of the left rectangle collinear to the bottom line of the right rectangle.  Yet I can see no constraint that would disallow this.

 

This is done in Inventor 2018 (I'd love to use 2021, but I need to be compatible with the place I take these to print them, and it only has 2018 installed).

0 Likes
Accepted solutions (1)
2,390 Views
5 Replies
Replies (5)
Message 2 of 6

imajar
Advisor
Advisor

You have an implied constraint between the centerpoint of the outward rectangle and the top line of the second.  Delete that and you are golden.

 

Inferred constraints can be a pain sometimes, I agree.  On occasion, I will just delete the geometry and start over.  It's just quicker to redraw than try to troubleshoot.

 

As a side note, your description was painfully long and ambiguous to read.  I think you could have said what you really needed in 2 sentences and then probably would have gotten an answer within the hour.


Aaron Jarrett, PE
Inventor 2019 | i7-6700K 64GB NVidia M4000
LinkedIn

Life is Good.
Message 3 of 6

imajar
Advisor
Advisor

Sorry, forgot the screenshot!

Capture1.JPG


Aaron Jarrett, PE
Inventor 2019 | i7-6700K 64GB NVidia M4000
LinkedIn

Life is Good.
0 Likes
Message 4 of 6

johnsonshiue
Community Manager
Community Manager

Hi! Another thing you may consider is to leverage sketch block. The two rectangles look identical to me. They should be driven by the same definition. If yes, the rectangle can be made as a sketch block (right-click on Sketch panel -> check Layout -> Create Sketch Block). The nice thing about sketch block is to reduce degrees of freedom and complexity of a sketch.

For constraint inferrencing options, go to Tools -> App Options -> Sketch -> Constraint Options. Uncheck "Infer constraints." If you want to keep Inferrencing, you can choose its bias and scope of inferrence.

Many thanks!



Johnson Shiue (johnson.shiue@autodesk.com)
Software Test Engineer
0 Likes
Message 5 of 6

Anonymous
Not applicable

But I tried that, and it isn't the right thing to do.  Because if I disable "infer constraints" and draw a rectangle, then I can't drag the rectangle around; if I grab a corner to stretch it, it does not stretch maintaining aspect ratio, it just drags that corner point out, creating a geometric form I am too for from my geometry course (like 60 years beyond it) to remember what it is called.  Yet there is nothing to say "If I draw a rectangular shape, I want it to remain a rectangular shape, but I don't want an inferred constraint to some random object that might be nearby", and it certainly does not display these inferred constraints in a way that I recognize.

Message 6 of 6

LT.Rusty
Advisor
Advisor
Accepted solution

If you press and hold CTRL while you're drawing, it will prevent the formation of inferred constraints outside of the object that you're creating. 

 

In other words, if you create a rectangle, it will have its internal constraints but will not form inferred constraints to anything else.

 

I do this quite a lot, particularly when I'm creating geometry that's going to get revolved- I hold down CTRL and create everything deliberately out of vertical / horizontal / parallel / perpendicular and then manually apply constraints afterwards. It's much, much less frustrating that way than going back in to figure out where the unwanted constraint is and deleting it.

Rusty

EESignature