A2plus Workbench/fr

Introduction
L'atelier A2plus est un atelier externe de Freecad qui permet l'assemblage de plusieurs pièces.

Cette documentation d'A2plus porte sur la version 0.4.23 ou plus récente.

Installation
L’atelier A2plus est un complément (greffon ou addon) à FreeCAD. Il peut être facilement installé via le menu. A2plus est en cours de développement et bénéficiera fréquemment de nouvelles fonctionnalités. Par conséquent, vous devez le mettre à jour régulièrement en utilisant également le menu. Le code A2plus est hébergé et développé sur GitHub et peut également être installé manuellement en le copiant dans le répertoire MOD de FreeCAD.

Commencer
Commencez par passer à la barre d’outils A2plus dans FreeCAD. Pour créer un assemblage, créez un nouveau fichier dans FreeCAD. Au début, ce fichier doit être enregistré. Il est recommandé (mais pas nécessaire) de l’enregistrer dans le même dossier que les pièces à assembler.

Vous pouvez maintenant ajouter des pièces à l'assemblage à l'aide du bouton de la barre d'outils ou. Le bouton ajoute tous les corps du fichier sélectionné en une seule pièce. Lorsque vous utilisez le bouton vous pouvez choisir quel corps du fichier doit être importé en tant que pièce. La première partie ajoutée obtient une position fixe par défaut. (Vous pourrez le modifier ultérieurement via la propriété de la pièce .) Les pièces déjà présentes dans l'assemblage peuvent être clonées à l'aide du bouton de la barre d'outils. Pour modifier une pièce de l'assemblage, sélectionnez-la dans l'arborescence du modèle et utilisez le bouton de la barre d'outils. Cela ouvrira la pièce dans un nouvel onglet de FreeCAD ou basculera vers son onglet si le fichier est déjà ouvert. Pour importer les modifications de pièces dans l'assemblage, cliquez sur le bouton de la barre d'outils.

Les pièces importées conservent leurs dépendances externes et peuvent être modifiées. Pour des pièces bien définies telles que des vis, il est toutefois utile que leur forme ne puisse pas être modifiée. Ceci peut être réalisé avec le bouton de la barre d’outils  qui convertit la pièce sélectionnée en une copie statique de la pièce d'origine.

Pour enregistrer l’ensemble et le refermer par la suite, vous pouvez utiliser le bouton de la barre d’outils.

Assemblage
L'assemblage des pièces se fait en ajoutant des contraintes entre les pièces. Après une contrainte, A2plus déplacera les pièces en fonction de la contrainte, si possible. Pour des contraintes complexes entre les pièces, A2plus pourrait ne pas résoudre les contraintes. Par conséquent, consultez également la section Dépannage pour connaître les stratégies permettant de résoudre de tels cas.

Les contraintes entre les pièces sont ajoutées en maintenant la touche  enfoncée et en sélectionnant un bord ou une face de deux pièces. La contrainte sera ajoutée attachée dans l'arborescence du modèle aux pièces affectées.

Garder la trace
Plus vous ajoutez de pièces, plus il est important de conserver la trace. A2plus propose donc ces outils pour déplacer et visualiser des pièces :


 * Pour déplacer une pièce dans l'assemblage, sélectionnez-la dans l'arborescence du modèle et utilisez le bouton de la barre d'outils [[Image:A2p MovePart.svg|24px]]. Lorsque vous avez placé la pièce où vous le souhaitez, faites un clic gauche avec la souris. Si la pièce déplacée a déjà des contraintes, elle sera placée en conséquence en appuyant sur le bouton de la barre d'outils [[Image:A2p solver.svg|24px]] car cela déclenche la résolution de toutes les contraintes de l’assemblage.
 * Pour afficher une contrainte, sélectionnez-la dans l'arborescence du modèle et utilisez le bouton de la barre d'outils [[Image:A2p ViewConnection.svg|24px]]. Cela rendra tout l'assemblage transparent et mettra en évidence les deux éléments liés via la contrainte. Pour revenir à la vue normale, cliquez avec le bouton gauche de la souris dans l'assemblage.
 * Pour afficher uniquement certaines pièces de l'assemblage, sélectionnez-les dans l'arborescence du modèle et utilisez le bouton de la barre d'outils [[Image:A2p Isolate Element.svg|24px]].Vous pouvez également masquer une certaine partie en la sélectionnant dans l'arborescence du modèle et en appuyant sur la touche  pour modifier sa visibilité.
 * Pour basculer l'affichage de la transparence de l'ensemble, vous pouvez utiliser le bouton de la barre d'outils [[Image:A2p ToggleTransparency.svg|24px]].
 * Chaque pièce peut être rendue transparente par l'édition normale de FreeCAD. Cependant, le réglage de la transparence des pièces est parfois perdu lors de la réouverture de l'assemblage en raison d'un bogue dans FreeCAD. Pour contourner le problème, vous pouvez utiliser le bouton de la barre d’outils [[Image: A2p_Restore_Transparency.svg | 24px]] pour restaurer les paramètres de transparence.

Contraintes
Lors de la création d'une contrainte, un tel dialogue sera affiché après avoir appuyé sur un bouton de la barre d'outils de contrainte : . Pour certaines contraintes, cela vous permet de modifier le sens de la contrainte. Avec le bouton vous pouvez vérifier auparavant si cette nouvelle contrainte peut être résolue par A2plus. Sinon, consultez la section Dépannage.

A2plus fournit les contraintes suivantes :

Point sur Point
Sélectionnez un sommet (point) sur chaque pièce. Le bouton de la barre d'outils   ajoute la contrainte . Cela fera coïncider les sommets.

Point sur Ligne
Sélectionnez un vertex (point) ou un edge (ici arc) de cercle (sélectionnera son centre) ou une face sphérique (sélectionnera également son centre) d'une part et un edge d'autre part. Le bouton de la barre d'outils ajoute la contrainte. Cela mettra le vertex sur l'edge.

Point sur Plan
Sélectionnez un vertex (point) ou un edge (ici arc) de cercle (sélectionnera son centre) ou la face d'une sphère (sélectionnera également son centre) d'une par et un plan d'autre part. Le bouton de la barre d’outils ajoute la contrainte. Le dialogue de contrainte vous permet de spécifier un décalage entre le point et le plan. Ce décalage peut également être inversé entre les deux côtés du plan. Si le décalage est nul, la contrainte placera le sommet sur le plan.

Sphère sur Sphère
Sélectionnez une face sphérique ou un vertex (point) sur les deux pièces. Le bouton de la barre d'outils  ajoute la contrainte . Cela fera coïncider les centres des sphères, le centre de la sphère et le sommet, ou les sommets.

Bord circulaire sur bord circulaire
Sélectionnez un bord circulaire sur les deux pièces. Le bouton de la barre d'outils  ajoute la contrainte . Le dialogue de contrainte vous permet de spécifier un décalage entre les arêtes. Ce décalage peut également être inversé. Vous pouvez en outre définir le sens de la contrainte et verrouiller la rotation des pièces. Si le décalage est nul, la contrainte placera les arêtes concentriques dans le même plan.

Axes coïncidents
Sélectionnez une face cylindrique ou un bord linéaire sur les deux pièces. Le bouton de la barre d'outils  ajoute la contrainte . Le dialogue de contrainte vous permet de spécifier la direction de l'axe.La boîte de dialogue vous permet en outre de verrouiller la rotation des pièces. La contrainte fera coïncider les axes ou les lignes.

Axes parallèles
Sélectionnez une face cylindrique ou un bord linéaire sur les deux pièces. Le bouton de la barre d'outils  ajoute la contrainte . Le dialogue de contrainte vous permet de spécifier la direction de l'axe. La contrainte rendra les axes ou les lignes parallèles.

Axe sur plan parallèle
Sélectionnez une face cylindrique ou un bord linéaire sur une pièce et un plan sur l'autre pièce. Le bouton de la barre d'outils  ajoute la contrainte . La contrainte rendra l'axe ou la ligne parallèle au plan.

Axe sur plan normal
Sélectionnez une face cylindrique ou un bord linéaire sur une partie et un plan sur l'autre partie. Le bouton de la barre d’outils ajoute la contrainte. La contrainte rendra l'axe ou la ligne normale au plan.

Plans parallèles
Sélectionnez un plan sur les deux pièces. Le bouton de la barre d'outils  ajoute la contrainte . La boîte de dialogue de contrainte vous permet de spécifier le sens de la contrainte. La contrainte rendra les plans parallèles.

Plan sur plan
Sélectionnez un plan sur les deux pièces. Le bouton de la barre d'outils  ajoute la contrainte . La boîte de dialogue de contrainte vous permet de spécifier une direction de contrainte et un décalage entre les plans. Ce décalage peut également être inversé. Si le décalage est nul, la contrainte fera coïncider les plans.

Angle entre plans
Sélectionnez un plan sur les deux pièces. Le bouton de la barre d'outils  ajoute la contrainte . Le dialogue de contrainte vous permet de spécifier un angle entre les plans. La contrainte va d'abord rendre les plans parallèles et définir l'angle spécifié.

Coïncidence au centre de masse
Sélectionnez un bord fermé ou un plan sur les deux pièces. Le bouton de la barre d'outils  ajoute la contrainte . Le dialogue de contrainte vous permet de spécifier un décalage entre les arêtes ou les plans. Ce décalage peut également être inversé. Vous pouvez en outre définir le sens de la contrainte et verrouiller la rotation des pièces. Si le décalage est nul, la contrainte placera les arêtes ou les plans dans le même plan.

Sous-assemblages
Un assemblage peut contenir d'autres assemblages. Ils sont ajoutés comme des pièces en appuyant sur le bouton de la barre d’outils  et en sélectionnant un fichier  contenant un assemblage. De tels sous-ensembles peuvent également être édités comme des pièces à l’aide du bouton de la barre d’outils. Assurez-vous, pour les étapes d'assemblage supérieures, que vous mettez à jour l'assemblage via le bouton de la barre d'outils  quand il y a eu des changements.

Traitement des contraintes
Les contraintes possibles pour une sélection sont affichées dans la barre d’outils et dans la boîte de dialogue "Outils de contrainte" en activant les boutons correspondants. La boîte de dialogue "Outils de contrainte" s’ouvre via le bouton de la barre d’outils. Il est prévu de rester ouvert pour pouvoir ajouter rapidement plusieurs contraintes à l’assemblage.

Les contraintes existantes peuvent être modifiées en les sélectionnant dans l'arborescence du modèle, puis en double-cliquant dessus ou en utilisant le bouton de la barre d'outils. Cela ouvre la boîte de dialogue "Propriétés de contrainte".

Les contraintes peuvent être supprimées en les sélectionnant dans l'arborescence du modèle et en appuyant sur  ou en sélectionnant une pièce avec des contraintes dans l'arborescence du modèle et en utilisant le bouton de la barre d'outils.

Toutes les contraintes peuvent être résolues à tout moment avec le bouton de la barre d’outils. Si le bouton de la barre d'outils  est activé, une résolution est automatiquement effectuée après chaque édition d'une contrainte.

Le bouton de la barre d'outils  affecte la contrainte qui a été ajoutée le plus récemment. Il inverse la direction de la contrainte.

Listes de pièces
Pour créer des listes de pièces d'assemblages, les différentes pièces de l'assemblage doivent obtenir des informations sur les pièces pouvant être lues par A2plus. Ceci est fait en éditant la pièce en utilisant le bouton de la barre d’outils. Dans la partie ouverte, appuyez sur le bouton de la barre d’outils  et une feuille de calcul portant le nom #PARTINFO# est créée.

La structure de la feuille de calcul est la suivante :



Remplissez les champs gris avec les informations que vous avez et que vous souhaitez inclure dans la liste de pièces finale.

Dans l'assemblage ou le sous-assemblage, utilisez le bouton de la barre d'outils. Il vous demandera si vous souhaitez effectuer une itération récursive sur tous les sous-assemblages. Cliquez sur "Oui". Cela crée une nouvelle feuille de calcul avec le nom #PARTSLIST#. Il contient les informations des différentes feuilles de calcul #PARTSINFO# des pièces dans une liste comme celle-ci :



La position (POS) est automatiquement définie en fonction de l'apparence des pièces dans l'arbre du modèle. La pièce de niveau supérieur recevra le POS 1. La quantité (QTY) est automatiquement calculée à partir de l'assemblage. Si une pièce fait deux fois partie de l’assemblage, elle obtiendra QTY 2.

Si vous avez mis à jour une information de pièce, vous pouvez actualiser la liste de pièces en appuyant sur le bouton de la barre d’outils à nouveau.

Pour les sous-ensembles, vous pouvez également créer une feuille de calcul d’informations à l’aide du bouton de la barre d’outils. Lorsque vous créez ou mettez à jour la liste de pièces de l'assemblage principal, cette information est utilisée si vous cliquez sur "Non" pour la question si vous souhaitez effectuer une itération récursive sur tous les sous-assemblages. Ensuite, les différentes pièces ne figurent pas dans la liste de pièces, mais uniquement les sous-assemblages.

Structure d'assemblage
Le bouton de la barre d'outils  crée un fichier HTML avec la structure de votre assemblage. Le fichier sera créé par défaut dans le dossier de votre fichier d'assemblage. La structure ressemble à celle-ci :

Degrés de liberté
Le bouton permet d’étiqueter chaque partie de l’assemblage avec ses degrés de liberté. De plus, il affiche une liste avec toutes les pièces et leurs dépendances. La liste est sortie dans le widget Vue rapport de FreeCAD. Si ce widget n'est actuellement pas visible, vous pouvez l'afficher soit en cliquant avec le bouton droit de la souris sur une partie vide de la zone de la barre d'outils FreeCAD, puis en le choisissant dans le menu contextuel qui apparaît, ou avec le menu. Vous pouvez supprimer les libellés des degrés de liberté en cliquant à nouveau sur le bouton.

Étiquetage
Le bouton identifie chaque partie de l'assemblage dans la vue 3D par son nom. Les étiquettes des pièces peuvent être supprimées en cliquant sur le bouton.

Forme de l'assemblage complet
Parfois, il est nécessaire de combiner l’ensemble du montage en une seule forme. Cette forme peut ensuite être utilisée par exemple pour l’impression 3D dans l’atelier Mesh workbench ou pour les dessins dans l’atelier TechDraw. Il est créé en utilisant le bouton de la barre d’outils . La forme est par défaut non visible.Utilisez le même bouton de la barre d’outils pour mettre à jour la forme en cas de modification de l’assemblage.

Préférences
Les préférences de a2plus sont accessibles via le menu  de FreeCAD et dans la section "A2plus". Vous pouvez définir les options suivantes :

Méthode de résolution par défaut
Le solveur commence par une pièce ayant la propriété  définie sur "true" et une pièce contrainte à celle-ci. Toutes les autres pièces ne sont pas calculées. Si une solution peut être trouvée, la prochaine pièce contrainte est ajoutée pour le calcul, etc. Le solveur essaie de déplacer toutes les pièces en même temps en direction d'une pièce pour laquelle la propriété  a la valeur "true". Notez que dans la plupart des cas, cela prend plus de temps pour le calcul d'une solution. Ceci définit la propriété  à "true" pour toutes les pièces de l’assemblage. Ensuite, aucun calcul n'est réellement effectué, car toutes les pièces seront toujours fixées aux positions où elles ont été créées.
 * Utiliser la résolution de systèmes partiels
 * Utilisez un solveur "magnétique", résolvant toutes les pièces à la fois
 * Force en position fixe

Comportement par défaut du solveur

 * Résoudre automatiquement si une propriété de contrainte est modifiée Le solveur sera automatiquement lancé. Identique à l'activation du bouton de la barre d'outils [[Image:A2p ToggleAutoSolve.svg|24px]].

Comportement lors de la mise à jour de pièces importées
Problèmes connus :
 * Recalculer les pièces importées avant de les mettre à jour Toutes les pièces de l'assemblage, y compris les sous-assemblages, seront ouvertes dans FreeCAD pour être reconstruites à l'aide des valeurs des feuilles de calcul. Cette fonctionnalité est conçue pour une construction totalement paramétrique. Remarque: cette fonctionnalité est très expérimentale et n'est pas recommandée pour des projets importants.
 * L'assemblage peut être détruit à cause de fausses références à des noms topologiques dans des pièces
 * Les feuilles de calcul principales peuvent être endommagées lorsqu'elles sont modifiées alors qu'un fichier de pièce référencé est déjà fermé. Cela peut planter FreeCAD.


 * Activer la mise à jour récursive des pièces importées Ouvre tous les sous-assemblages de manière récursive pour les mettre à jour.


 * Utiliser un nom topologique expérimental Lors de l’importation de pièces dans l’assemblage, un algorithme génère des noms topologiques pour chaque sous-élément de la forme importée. Les noms topologiques sont écrits dans . Lorsqu'une pièce importée doit être mise à jour, ces noms topologiques sont utilisés pour mettre à jour les sous-éléments des contraintes. Ainsi, les assemblages deviennent plus robustes face aux nombres volatils de sous-éléments de FreeCAD. Remarque: Cela augmente la taille des fichiers et le temps de calcul lors de l'importation de pièces. Si la dénomination topologique doit être utilisée, elle doit être activée avant la création de l'assemblage.


 * Hériter par transparence des pièces et des sous-assemblages Utilisez les paramètres de couleur et de transparence des pièces importées. Remarque : cette fonctionnalité est très expérimentale et n'est pas recommandée pour des projets importants.


 * N'importez pas de formes invisibles Cela masquera les formes de données / construction invisibles. Remarque: Aucune contrainte ne doit être connectée aux formes de référence / construction dans les sous-ensembles supérieurs ou autres.Sinon, vous pouvez casser l'assemblage.


 * Utilisez l'union solide pour importer des pièces et des sous-assemblages Toutes les pièces importées seront directement assemblées en tant que union.  Cette fonctionnalité est utile pour les simulations FEM simulations ou l’impression 3D si un seul solide est autorisé. L'alternative consiste à créer ultérieurement une forme de l'assemblage complet.

Paramètres de l'interface utilisateur

 * Afficher les contraintes dans la barre d'outils Si cette option n'est pas utilisée, les boutons de la barre d'outils pour les différentes contraintes ne sont pas visibles pour économiser de l'espace dans la barre d'outils. De nouvelles contraintes peuvent toujours être définies à l’aide de la boîte de dialogue Outils de contrainte (bouton de la barre d’outils [[Image:A2p DefineConstraints.svg|24px]]).

Stockage des fichiers

 * Utiliser des chemins relatifs pour les pièces importées UUtilise les chemins de fichiers relatifs aux fichiers de pièce.
 * Utiliser des chemins absolus pour les pièces importées Utilise des chemins de fichier absolus pour les fichiers de pièces.
 * Tous les fichiers sont dans ce dossier de projet : Tous les fichiers de projet doivent être dans le dossier spécifié. Peu importe s'ils se trouvent dans les sous-dossiers de ce dossier.Remarque: aucun fichier ne peut exister plusieurs fois dans le dossier (par exemple, dans différents sous-dossiers). Cette option est utile pour travailler sur différentes machines car il suffit ensuite de copier le dossier du projet.

Dépannage
Tôt ou tard, vous aurez le problème qu'A2plus ne peut pas résoudre les contraintes que vous avez définies.Pour surmonter cela, il existe différentes stratégies :

Vérification de la direction de la contrainte
Parfois, les contraintes semblent être systématiquement définies mais elles ne peuvent néanmoins pas être résolues. Un exemple: supposons que vous ayez un ensemble de contraintes pour deux plans. Vous souhaitez maintenant définir pour les mêmes plans la contrainte et A2plus ne peut pas résoudre ce problème. Alors les directions de contrainte des et  sont différentes. Utilisez la même direction pour les deux contraintes afin de résoudre ce problème.

Suppression de contraintes
La plupart des cas de contraintes insolubles se produisent directement lors de l'ajout d'une nouvelle contrainte. La solution consiste alors à supprimer la dernière contrainte que vous avez ajoutée. A2plus le proposera également.

Parfois, la stratégie de suppression est la seule, par exemple lorsque vous modifiez une pièce dans FreeCAD afin que des faces ou des arêtes liées à des contraintes soient manquantes. Vous devez ensuite supprimer une contrainte liée à la pièce modifiée à la fois. Utilisez le bouton de la barre d'outils  après chaque suppression pour voir si vous avez atteint un état que le solveur peut résoudre.

Lorsque vous avez un assemblage qui peut être résolu, ajoutez étape par étape les contraintes dont vous avez besoin.

Pièces mobiles
Dans de nombreux cas, le solveur ne nécessite que des meilleures valeurs de départ pour résoudre les contraintes. Prenons par exemple le cas où vous avez une pièce essieu et une pièce roue. Vous ajoutez une contrainte  et n'obtenez aucune information sur l'échec du solveur, mais les pièces ne sont pas déplacées en conséquence et dans le l'onglet Afficher rapport de FreeCAD, vous voyez "REACHED POS-ACCURACY :0.0". Une solution à cela consiste à rapprocher les pièces de la position souhaitée par la contrainte.

Remarque : Assurez-vous qu'au moins une pièce de la contrainte a la propriété  définie sur false.

Définition de la propriété Fonction résultante
Si vous avez oublié certaines fonctionnalités de votre pièce après l'importation dans un assemblage A2plus, vérifiez la propriété. A2plus importe le corps des pièces avec toutes leurs fonctionnalités jusqu'à la fonction résultante. Cela est judicieux, car définir la fonction résultante sur une certaine fonctionnalité signifie que toutes les fonctionnalités situées derrière la fonction résultante ne doivent pas apparaître dans la pièce finale. Ainsi, s'il vous manque une fonctionnalité de pièce dans A2plus, ouvrez la pièce via le bouton de la barre d’outils, puis sélectionnez un corps et regardez sa propriété. Si l'info-bulle ne correspond pas à la fonctionnalité souhaitée, cliquez avec le bouton droit de la souris sur celle-ci et choisissez. Enfin, enregistrez la pièce et rechargez l’assemblage à l’aide du bouton de la barre d’outils.

Réparation de l'arbre d'assemblage
Si vous ne voyez pas clairement pourquoi certaines contraintes ne peuvent pas être résolues, vous pouvez utiliser le bouton de la barre d’outils. Ceci résoudra toutes les contraintes et les regroupera à nouveau sous les différentes pièces.

Éviter les caractères accentués
Sur certains systèmes d'exploitation, vous pouvez rencontrer des problèmes si les noms de fichier ou les chemins de fichier des pièces ou de l'assemblage contiennent des caractères accentués. Par conséquent, évitez ces caractères et les caractères spéciaux en général.

Position de fixation
Cette stratégie n'est plus nécessaire pour les assemblages créés avec A2plus 0.3.11 ou une version plus récente, car A2plus émet désormais un avertissement pour les positions fixes manquantes.

Lorsque vous définissez une contrainte entre deux pièces et qu'aucune pièce n'a la propriété  définie sur true ou est liée par une contrainte à une pièce avec  définie sur true, la contrainte ne peut pas être résolue. La même chose se produit si les deux pièces de la contrainte ont  défini sur true.

Ensuite, A2plus transmet les informations relatives à la solution défaillante, mais parfois, vous voyez que les pièces ne sont pas déplacées en conséquence et dans l'onglet Afficher rapport de FreeCAD, vous voyez "REACHED POS-ACCURACY :0.0". Cela signifie que le solveur a fini sans erreurs mais qu'il n'a pas pu résoudre les contraintes.

Par conséquent, vérifiez qu'au moins une de vos pièces de l'ensemble a  définie sur true. Assurez-vous ensuite que vous ne définissez des contraintes que sur une pièce qui est en quelque sorte connectée à la pièce fixe. Pour visualiser ces dépendances, reportez-vous à la section Structure de l'assemblage.

Pièces tournantes
Cette stratégie n'est plus nécessaire pour les assemblages créés avec A2plus 0.4.0 ou plus récent, car A2plus fait pivoter automatiquement les pièces en arrière-plan afin d'obtenir un angle de départ suffisant pour le solveur.

Le solveur échoue souvent pour la contrainte  si les deux plans sélectionnés ont actuellement un angle de 0 ° ou 180 °. (Les pièces ne sont pas déplacées en conséquence et dans l'onglet "Vue Rapport" de FreeCAD, vous voyez "REACHED POS-ACCURACY :0.0".) Une solution consiste à faire pivoter une pièce de quelques degrés à l'aide de la fonction de transformation de FreeCAD (cliquez avec le bouton droit de la souris sur la pièce dans l’arbre du modèle et sélectionnez dans le menu contextuel ).

Remarque: Assurez-vous qu'au moins une pièce de la contrainte a la propriété définie sur false.

A2plus offers animations via Python scripts. This is might sound complicated but with a script template also users without programming background can get animations.

The animation works usually this way (way A):
 * 1) The assembly is fully constrained
 * 2) The script changes a parameter, for example the position or rotation angle of a part
 * 3) After the parameter change, the assembly constraints are solved
 * 4) Step 2. and 3. are repeated to get the animation

It is also possible to change instead of a placement parameter a constraint, for example the distance between 2 planes. This is way B.

Simple Example
Let's animate an example using way A: First download this assembly file: A2p_animated-example.FCStd and also this Python script: A2p_animation-example-script.py.

This is the content of the script and the lines beginning with a '#' describe what the different script lines do:

To use the script to perform the animation, we must
 * 1) Open the assembly file in FreeCAD.
 * 2) Open the script file in FreeCAD.
 * 3) Click on the toolbar button [[Image:Menu_Std_DlgMacroExecute_fr_02.png|24px]] to execute the script (also called macro).
 * 4) Change to the tab of the assembly to see the rotation.

To practice, just change something in the script and execute it afterwards. For example increase step to 5.

Result
This is the result of the example animation:



Interactive Example
The first example demonstrated how to create an animation without any user feedback. For most applications you need to interact with the animation. For example the interesting issue in the example is to see how the driving pins cross the center groove of the wheel. To have a closer look you might present this detail to your colleagues or boss. Therefore you need an interactive solution.

This can be done by using a custom animation dialog with a slider. By moving the slider you can set the rotation angle and therefore rotate back and forth at interesting position.

We use the same assembly file: A2p_animated-example.FCStd and this Python script: A2p_animation-example-script.py.

This is the content of the script to get the interactive animation dialog:

The dialog defined in the script looks like this:

Script Commands
To understand the script syntax better, here is some command info:

The command means, we change the placement property Rotation.Angle of the part get got previously as "starWheel". This property gets the angle as radian. The function radians from the library math converts the angle from degree to radian.

The property Rotation.Angle uses the current placement axis of the part (in our example the x-axis). To rotate the part e.g. around the z-axis one can set the rotation axis (before calling the rotation command) using the command

Instead of rotating, parts can also be moved. To change for example the placement in y-direction of the wheel, the command would be In this case we would not define the variable angle but  PositionShift that we change on every loop run. There are different ways to set the placement of a part. Some are documented here. Unfortunately there is no list with all possible placement commands.

The command is a A2plus-specific command. It solves the assembly constraints of the assembly we previously got as "document". The option useTransaction specifies if FreeCAD should store every change in the undo/redo stack. For large animations you might therefore set it to False.