FreeCAD Logo FreeCAD 1.0
  • English Afrikaans Arabic Belarusian Catalan Czech German Greek Spanish Spanish Basque Finnish Filipino French Galician Croatian Hungarian Indonesian Italian Japanese Kabyle Korean Lithuanian Dutch Norwegian Bokmal Polish Portuguese Portuguese Romanian Russian Slovak Slovenian Serbian Swedish Turkish Ukrainian Valencian Vietnamese Chinese Chinese
  • Features
  • Download
  • Blog
  • Documentation
    Documentation index Getting started Users documentation The FreeCAD manual Workbenches documentation Python coding documentation C++ coding documentation Tutorials Frequently asked questions Privacy policy About FreeCAD
  • Contribute
    How to help Sponsor Report a bug Make a pull request Jobs and funding Contribution guidelines Developers handbook Translations
  • Community
    Code of conduct Forum The FPA GitHub GitLab Codeberg Mastodon Matrix IRC IRC via Webchat Gitter Discord Reddit Twitter Facebook LinkedIn Calendar
  • ♥ Donate

Donate

$
SEPA Information
Please set up your SEPA bank transfer to:
Beneficiary: The FreeCAD project association
IBAN: BE04 0019 2896 4531
BIC/SWIFT: GEBABEBBXXX
Bank agency: BNP Paribas Fortis
Address: Rue de la Station 64, 1360 Perwez, Belgium

While Stripe doesn't support monthly donations, you can still become a sponsor! Simply make a one-time donation equivalent to 12 months of support, and you'll gain access to the corresponding sponsoring tier. It's an easy and flexible way to contribute.

If you are not sure or not able to commit to a regular donation, but still want to help the project, you can do a one-time donation, of any amount.

Choose freely the amount you wish to donate one time only.

You can support FreeCAD by sponsoring it as an individual or organization through various platforms. Sponsorship provides a steady income for developers, allowing the FPA to plan ahead and enabling greater investment in FreeCAD. To encourage sponsorship, we offer different tiers, and unless you choose to remain anonymous, your name or company logo will be featured on our website accordingly.

from 1 USD / 1 EUR per month. You will not have your name displayed here, but you will have helped the project a lot anyway. Together, normal sponsors maintain the project on its feet as much as the bigger sponsors.

from 25 USD / 25 EUR per month. Your name or company name is displayed on this page.

from 100 USD / 100 EUR per month. Your name or company name is displayed on this page, with a link to your website, and a one-line description text.

from 200 USD / 200 EUR per month. Your name or company name and logo displayed on this page, with a link to your website and a custom description text. Companies that have helped FreeCAD early on also appear under Gold sponsors.

Instead of donating each month, you might find it more comfortable to make a one-time donation that, when divided by twelve, would give you right to enter a sponsoring tier. Don't hesitate to do so!

Choose freely the amount you wish to donate each month.

Please inform your forum name or twitter handle as a notein your transfer, or reach to us, so we can give you proper credits!

Sandbox:Assembly3 Elements

Still not finished :-)

Don't mark for translation yet!

Introduction

  • Elements are the key objects in the Assembly3 workbench. They provide element coordinate systems (ECSs) that are used to constrain elements to one another. (Referred to as implicit coordinate systems - ICSs - on the constraint pages)
  • Two part objects are linked by one or several pairs of constrained elements to determine position and orientation to one another.
  • Several linked part objects can add up to a link chain.
    • A rigid assembly consists of a fully constrained link chain.
    • A kinematic assembly has to be fully constrained, too, but some constraints can be used as actuators to change the shape of the link chain. The actuator values can be changed by hand in the properties editor or by an external macro.
  • To choose the combination of elements and constraints for a link chain properly, it is necessary to know how ECSs are placed.

Elements

Elements (Assembly3 element objects) are mainly 3D representations of an object\'s boundary representation such as:

  • Face elements
  • Line elements
  • Point elements

Further elements are used to create 2D skeleton sketches:

  • Workplanes
  • 2D lines
  • 2D points

To get a few examples some elements have to be extracted from a sample body. The Create element command is used for this task.

Face elements

Face elements can be extracted from planar faces, cylindrical faces, or 3D bent faces.

, ,

Sample body -> planar face elements, cylindrical face elements, 3D bent face elements

Line elements

Line elements can be extracted from straight lines, arcs, or circles.

,

Sample body -> straight line elements, curved line elements

Point elements

Point elements can be extracted from any vertex e.g. line ends.

Sample body -> point elements

Workplanes

2D line elements

2D point elements

Main Coordinate System (MCS)

Each FreeCAD document has its own coordinate system to provide an origin and the three axes that are use to position all geometry contained in the document.

The AxisCross command toggles its visibility.

It is the main coordinate system (MCS) of the document and it is represented by 3 arrows which meet at the documents origin:

  • a red arrow for the X axis
  • a green arrow for the Y axis
  • a blue arrow for the Z axis

Element Coordinate System (ECS)

Geometry doesn\'t have to be positioned on or near the MCS and so it can be quite useless when objects need to be assembled.

In automotive design a MCS represents the global coordinate system (GCS) of a specific model (usually the center of a virtual front axle) and a local coordinate system (LCS) provides the basis to create model specific parts in situ. A standard part like e.g. a fastener in contrast doesn\'t have a GCS and its MCS presents its LCS.

To assemble two objects Assembly3 tools use the element coordinate systems (ECSs) of elements extracted from the objects\' boundary representations.

Sometimes linked objects don\'t behave as expected and this can be due to the placement of the ECSs. To have a look at the ECSs they have to be visible:

ECS Visibility

Activate the Show element coordinate system function (toggle) and deactivate the Auto element visibility function (toggle) to have several ECSs permanently visible.

Toggled as described

Point element ECS

An ECS of a point element i.e. its origin is located at the same position as the point itself and its axes are parallel to the axes of the MCS.

Part as created -> part turned 30° around the Z axis

To get a better view:

Only point elements -> situation turned 30° around the Z axis

Even if the part is turned the ECSs stay oriented parallel to the MCS.

Line element ECS

An ECS of a straight line element i.e. its origin is located in the middle of the line and its z axis is colinear to the line.

Only straight line elements -> situation turned 30° around the Z axis

When the part is turned the ECSs\' z axes stay colinear to their lines, but the direction of the other axes is almost not predictable.

The solver seems to try to align the remaining axes as good as possible to the main axes and so the ECS of the short line parallel to the main z axis keeps its orientation in this case.

An ECS of a curved line element (arc or circle) i.e. its origin is located in the center of the curve and its xy plane is coplanar to the curve.

Only curved line element -> situation turned 30° around the Z axis

When the part is turned the ECSs turn with the part and it seems like its x axis goes through the starting point of the curve i.e. it keeps its orientation according to the curve. That is only true for edges not created from sketches like the hole fillet. The other ECSs are oriented like the sketches which are the bases of their curved line elements.

Face element ECS

An ECS of a planar face element i.e. its origin is located at the face\'s center of area and its xy plane is coplanar to the face; and so the z axis is parallel to the face normal but it does not necessarily point to the part\'s outside.

Only planar face elements -> situation turned 30° around the Z axis

When the part is turned the ECSs turn the same way. Their orientations depend fully on their associated faces and not a bit on the MCS.

An ECS of a cylindrical face element i.e. its origin is located at the center of one circular edge and its z axis is colinear to the face\'s axis; but the z axis it does not necessarily point to the part\'s outside.

Only cylindrical face elements -> situation turned 30° around the Z axis

When the part is turned the ECSs turn the same way. Their orientations depend fully on their associated faces and not a bit on the MCS.

The circular edge that defines the position of the ECs\'s origin does not necessarily belong to the selected face. In case of the upper cut-out cylinder the sketch is defining the origin.

An ECS of a 90° fillet face element i.e. its origin is located at the center of one circular edge and its xy plane is coplanar to the edge with its x axis going through the edge\'s starting point.

Only cylindrical face elements -> situation turned 30° around the Z axis

When the part is turned the ECSs turn the same way. Their orientations depend fully on their associated edges and not on the MCS.

This applies to circular edges like those of a cylinder or a cuboid fillet.

Workplane ECS

2D line element ECS

2D point element ECS

Notes

  1. An element extracted from a sketch based boundary representation feature is likely to have an ECS oriented according to the sketche\'s x and y axes.
  2. A section

Dies ist eine Sandbox


⏵ documentation index > Assembly3 > Addons > Sandbox:Assembly3 Elements

This page is retrieved from https://github.com/FreeCAD/FreeCAD-documentation/blob/main/wiki/Sandbox_Assembly3_Elements.md

Get in touch!
Forum GitHub Mastodon Matrix IRC Gitter.im Discord Reddit Twitter Facebook LinkedIn

© The FreeCAD Team. Homepage image credits (top to bottom): ppemawm, r-frank, epileftric, regis, rider_mortagnais, bejant.

This project is supported by: , KiCad Services Corp. and other sponsors

GitHubImprove this page on GitHub