0
$\begingroup$

I've got the following sketch:

Arc in left direction

(A vertical line of 3mm, 5mm from the center of the sketch, with an arc running from end to end.)

FreeCAD indicates that this sketch is fully constrained. However, removing the horizontal 5mm constraint, dragging the points around, and re-adding the horizontal constraint I can create the following:

Arc in right direction

My constraints and components are exactly the same. Why is this sketch "fully constrained"?

I've noticed other examples when suddenly an arc would become a full circle. How do I tell freecad "my arch should be less than 180 degrees" or "more than 180 degrees"?

$\endgroup$
1
$\begingroup$

"...re-adding the horizontal constraint"

"My constraints and components are exactly the same."

The statement above is not true - in one case you the dimension is measuring a distance to the right of the origin, and in the other, the distance to the left.

When entering a dimension in SolidWorks, there is the option to flip the direction of a dimension - in this example, if you clicked the button, it would toggle between the two states illustrated in your example. You can also flip the dimension by typing "-5mm"

enter image description here

I don't have FreeCAD installed, but I imagine it has a similar option? Even if the only way to switch between these two definitions is to drag the line to one side or other of the origin prior to creating the dimension, the fact remains that your two dimensions are not equivalent.

$\endgroup$
1
$\begingroup$

One way would be to give the angle with the horizontal, instead of providing the 5mm length.

enter image description here

The problem in this case is that the angle in most cases will not be a round number. However, you might be able to use a function in the dimension (e.g. atan(3/5)).


UPDATE: to explain why its fully constrained

One thing to remember, is that parametric modelers try to solve the constraints. So they try to convert them in mathematical formulas. So in this particular scenario, one of the points that define the vertical blue line is part of the circle, therefore it needs to satisfy an equation of the following form:

$$(x-x_o)^2+ (y-y_o)^2 = r^2$$

where:

  • $(x_0, y_0)$ the coordinates of the center
  • $r$ the radius

The reason why you have the problem is that at some point you have an equation of the form $x^2 = 25$. For that equation there are two solutions $x_1 = -5$, and $x_2 =5$, which are both equally valid.

If you notice with respect to the center of the circle you could say that the first solution you are presenting is for the negative solution ($x=-5$), while the second solution is $x=+5$.

The solution which will be picked is based on the implementation of the algorithm, but usually, it does a rounding to the closest value.

$\endgroup$
1
  • 1
    $\begingroup$ Yep! This is why putting -5mm into the box in SW flips to the other side. $\endgroup$ – Jonathan R Swift May 17 at 21:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.