Parametric Center of Rotation

Have some feature requests, feedback, cool stuff to share, or want to know where FreeCAD is going? This is the place.
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
Post Reply
User avatar
quiret
Posts: 72
Joined: Wed Jun 15, 2022 1:23 pm
Location: Germany
Contact:

Parametric Center of Rotation

Post by quiret »

I have given the "Center:" property of the Placement Task pane a try. With this property you can apply a rotation onto an object in relation to a center point. The feature is really great, but I am missing a dynamic-parametric way to set the center point. Please take a look at the options presented by the current FreeCAD program:

Image

As you can see, there is no option to assign a dynamic formula with any of the "Center:" values. I have searched the internet and have found some arguments by the "Founder" which said that it'd be not necessary to implement because mathematically equivalent forms can be deduced by converting to a linear transformation:

https://forum.freecadweb.org/viewtopic.php?t=9336

I am asking for this feature because it would be great to have parametric models which allow part-attachment-based rotations. Essentially I want to incrementally build a model, attaching and changing the rotation for each "3D segment". I would greatly appreciate if anyone could lead me to efficient workflows regarding that which are already possible!

Code: Select all

OS: Windows 10 Version 2009
Word size of FreeCAD: 64-bit
Version: 0.20.29177 (Git)
Build type: Release
Branch: releases/FreeCAD-0-20
Hash: 68e337670e227889217652ddac593c93b5e8dc94
Python 3.8.10, Qt 5.15.2, Coin 4.0.1, Vtk 8.2.0, OCC 7.6.2
Locale: English/Germany (en_DE)
chrisb
Veteran
Posts: 53919
Joined: Tue Mar 17, 2015 9:14 am

Re: Parametric Center of Rotation

Post by chrisb »

Such a possibility might be sensible in some cases, but it may obscure things, and thus I would rather recommend a different way of modeling: Create a rotation axis e.g. as a DatumLine, use an appropriate attachment and rotate just around that line.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
User avatar
adrianinsaval
Veteran
Posts: 5541
Joined: Thu Apr 05, 2018 5:15 pm

Re: Parametric Center of Rotation

Post by adrianinsaval »

The center of rotation here doesn't have an expression field because it's not saved property, this is only used in the dialog and an equivalent transformation is calculated and that is saved in the placement/attachment offset property.

I too wish there was a parametric transformation, for now you can use nested Parts and do different transformations on each. Center of rotation is not so easy to parametrize given how the placement works on FreeCAD.
User avatar
quiret
Posts: 72
Joined: Wed Jun 15, 2022 1:23 pm
Location: Germany
Contact:

Re: Parametric Center of Rotation

Post by quiret »

chrisb wrote: Sat Aug 13, 2022 11:43 pm Such a possibility might be sensible in some cases, but it may obscure things, and thus I would rather recommend a different way of modeling: Create a rotation axis e.g. as a DatumLine, use an appropriate attachment and rotate just around that line.
Do you mean to attach the sketch/plane using the "Normal to edge" attachment mode? If that is true then I think that is indeed a great idea. I came around to making a construction sketch and fetching details from it using referenced Constraints, then accessing the constraints in the formulas to properly specify the attachments!
adrianinsaval wrote: The center of rotation here doesn't have an expression field because it's not saved property, this is only used in the dialog and an equivalent transformation is calculated and that is saved in the placement/attachment offset property.
Yes, I think I came to the same conclusion as you. That is what I call the tranformation of the mathematical representation into this normal form, this standard representation required by FreeCAD. Would be great to have multiple possible representations as implementation inside of FreeCAD so that it would convert under the hood once the runtime environment would require it. But I do not want to put too much pressure onto this amazing product made by volunteers.
Post Reply