Notes about Coordinate systems

Post here for help on using FreeCAD's graphical user interface (GUI).
Forum rules
and Helpful information
IMPORTANT: Please click here and read this first, before asking for help

Also, be nice to others! Read the FreeCAD code of conduct!
manos
Posts: 264
Joined: Thu Nov 12, 2020 10:48 am
Location: Greece

Notes about Coordinate systems

Post by manos »

Hello I have written few lines of notes about Coordinate systems. I should really appreciate if somebody read and check them. I have attached the .doc so you can add or delete anything you want. @Chrisb please read.
Attachments
CoordSystems.doc
(12.5 KiB) Downloaded 18 times
adrianinsaval
Veteran
Posts: 3080
Joined: Thu Apr 05, 2018 5:15 pm

Re: Notes about Coordinate systems

Post by adrianinsaval »

For other peoples' convinience here's the text:
COORDINATE SYSTEMS AT FCad
The objects at space are positioned using three axis system. The most used system is the Eucledian. In that system the three axis are perpendicular to each other.
Freecad is a CAD program and it uses many axis system.

The most "general" one is the global axis system. It is a system with invariable axis and the less used by simple users.

We can view the Global axis system using the command Std AxisCross.

Many objects comprise their own axis system. It is very important to know every moment when with FC, to which axis system we are referred. If not, error messages will appear and the outcome will be a mess.

The following objects have their own axis system: Body, Std Part

The following objects DO NOT have their own axis system: Document, Group, Sketch, Shapes

We can view the (Local) Coordinate system of the objects contained in the Body: Tree view ->Body->Origin and hitting Space.

Sketches have the Coordinate system of the Body in which they are contained.

Shapes contained in a Body have the Coordinate system of the Body in which they are contained.

For the objects inside the Body we can create an Auxiliary Local Coordinate system using the command: PartDesign CoordinateSystem.

If we want to combine more bodies to make an Assembly we can use a Std Part. A Std Part provides its own (Local) Coordinate System.
Bodies inside a Std Part keep their own coordinate System.
In the begining you mention there are many systems and one is the eucleadean, the say freecad uses many system, this is confusing as it can be interpreted as freecad using other systems besides eucleadean, which is not the case AFAIK.

sketches and any object with a shape do have an internal axis system, but they aren't visible, this is only relevant when editing their attachment. What's important to understand is that you can have many levels of nested coordinate system, for example you can have a sketch attached to a LCS inside a body inside a Part inside a Part, that's 6 levels of nested CS if we count the global CS, each is defined relative to it's parent through their placement + attachment offset (when it exists).
manos
Posts: 264
Joined: Thu Nov 12, 2020 10:48 am
Location: Greece

Re: Notes about Coordinate systems

Post by manos »

adrianinsaval wrote: Fri Jul 01, 2022 5:01 pm For other peoples' convinience here's the text:
COORDINATE SYSTEMS AT FCad
In the begining you mention there are many systems and one is the euclidean, the say freecad uses many system, this is confusing as it can be interpreted as freecad using other systems besides eucleadean, which is not the case AFAIK.
Sorry I had to write Cartesian. So the correct phrase will be : "the most used system is the Cartesian. FCad uses other Coordinate systems too e.g. Polar".


Now the text will be:

COORDINATE SYSTEMS AT FCad
The objects at space are positioned using Coordinate systems. The most used system is the Cartesian.

In that system the three axis are perpendicular to each other.
Freecad is a CAD program and it uses other Coordinate system too e.g Polar.

The most "general" Cartesian Coordinate system in FC is the global axis system. It is a system with invariable axis and the less used by simple users.

We can view the Global axis system using the command Std AxisCross.

Many objects comprise their own axis system. It is very important to know every moment when with FC, to which axis system we are referred. If not, error messages will appear and the outcome will be a mess.

The following objects have their own axis system: Body, Std Part

The following objects DO NOT have their own axis system: Document, Group, Sketch, Shapes

We can view the (Local) Coordinate system of the objects contained in the Body: Tree view ->Body->Origin and hitting Space.

Sketches have the Coordinate system of the Body in which they are contained.

Shapes contained in a Body have the Coordinate system of the Body in which they are contained.

For the objects inside the Body we can create an Auxiliary Local Coordinate system using the command: PartDesign CoordinateSystem.

If we want to combine more bodies to make an Assembly we can use a Std Part. A Std Part provides its own (Local) Coordinate System.
Bodies inside a Std Part keep their own coordinate System.
Attachments
CoordSystems_2.doc
(12.5 KiB) Downloaded 6 times
Last edited by manos on Fri Jul 01, 2022 5:48 pm, edited 1 time in total.
adrianinsaval
Veteran
Posts: 3080
Joined: Thu Apr 05, 2018 5:15 pm

Re: Notes about Coordinate systems

Post by adrianinsaval »

Sorry if I'm being ignorant but where does FreeCAD use polar coordinates?

Also you haven't adressed any of this:
sketches and any object with a shape do have an internal axis system, but they aren't visible, this is only relevant when editing their attachment. What's important to understand is that you can have many levels of nested coordinate system, for example you can have a sketch attached to a LCS inside a body inside a Part inside a Part, that's 6 levels of nested CS if we count the global CS, each is defined relative to it's parent through their placement + attachment offset (when it exists).
I'll correct myself in saying that the sketch's coordinate system IS relevant when editing the sketch. Your statement that sketches have the same CS as their body is just not true, but as any other object the sketch's CS is defined relative to it's parent CS (and keep in mind a sketch can be outside a body too).
Last edited by adrianinsaval on Fri Jul 01, 2022 5:53 pm, edited 1 time in total.
manos
Posts: 264
Joined: Thu Nov 12, 2020 10:48 am
Location: Greece

Re: Notes about Coordinate systems

Post by manos »

adrianinsaval wrote: Fri Jul 01, 2022 5:46 pm Sorry if I'm being ignorant but where does FreeCAD use polar coordinates?
At placement I think :Placement=[Angle, Axis, Position]
manos
Posts: 264
Joined: Thu Nov 12, 2020 10:48 am
Location: Greece

Re: Notes about Coordinate systems

Post by manos »

adrianinsaval wrote: Fri Jul 01, 2022 5:01 pm ..
sketches and any object with a shape do have an internal axis system, but they aren't visible, this is only relevant when editing their attachment. What's important to understand is that you can have many levels of nested coordinate system, for example you can have a sketch attached to a LCS inside a body inside a Part inside a Part, that's 6 levels of nested CS if we count the global CS, each is defined relative to it's parent through their placement + attachment offset (when it exists).
If we have a sketch inside a body without a Std Part how many different coordinate systems we have ?

Can I say that point A is 5mm away at the X axis of the sketch ?
And point B is 6 mm away at the X axis of the body ?
And point C is 7 mm away at the X axis of the Std Part ?
All three expressions are correct ?
Last edited by manos on Fri Jul 01, 2022 6:04 pm, edited 1 time in total.
adrianinsaval
Veteran
Posts: 3080
Joined: Thu Apr 05, 2018 5:15 pm

Re: Notes about Coordinate systems

Post by adrianinsaval »

manos wrote: Fri Jul 01, 2022 5:52 pm At placement I think :Placement=[Angle, Axis, Position]
This is not a polar coordinate system, the position are cartesian coordinates, the axis is a vector in cartesian coordinates and the angle is a rotation around that axis. A 2d polar system has an angle and a length, a 3d equivalent (spherical coordinates) has two angles and a length, another similar 3d system is cylindrical coordinates which have an angle, a length and a z position, none of these are directly used in FreeCAD AFAIK.
adrianinsaval
Veteran
Posts: 3080
Joined: Thu Apr 05, 2018 5:15 pm

Re: Notes about Coordinate systems

Post by adrianinsaval »

manos wrote: Fri Jul 01, 2022 5:58 pm If we have a sketch inside a body without a Std Part how many different coordinate systems we have ?
I would say 3 (global->body->sketch) if the sketch is not attached to a datum or a displaced primitive
manos
Posts: 264
Joined: Thu Nov 12, 2020 10:48 am
Location: Greece

Re: Notes about Coordinate systems

Post by manos »

adrianinsaval wrote: Fri Jul 01, 2022 5:59 pm
manos wrote: Fri Jul 01, 2022 5:52 pm At placement I think :Placement=[Angle, Axis, Position]
This is not a polar coordinate system, the position are cartesian coordinates, the axis is a vector in cartesian coordinates and the angle is a rotation around that axis. A 2d polar system has an angle and a length, a 3d equivalent (spherical coordinates) has two angles and a length, another similar 3d system is cylindrical coordinates which have an angle, a length and a z position, none of these are directly used in FreeCAD AFAIK.
OK thanks
manos
Posts: 264
Joined: Thu Nov 12, 2020 10:48 am
Location: Greece

Re: Notes about Coordinate systems

Post by manos »

manos wrote: Fri Jul 01, 2022 5:58 pm
adrianinsaval wrote: Fri Jul 01, 2022 5:01 pm ..
sketches and any object with a shape do have an internal axis system, but they aren't visible, ...
..
Can I say that point A is 5mm away at the X axis of the sketch ?
And point B is 6 mm away at the X axis of the body ?
And point C is 7 mm away at the X axis of the Std Part ?
All three expressions are correct ?
@ adrianinsaval thanks for your answer. Could you read the above post too ? It will help me resume all necessary changes to my Notes.
Post Reply