Std Créer un sous-lien

From FreeCAD Documentation
Revision as of 15:57, 11 May 2021 by Donatello (talk | contribs)

Std Créer un sous-lien

Emplacement du menu
Aucun
Ateliers
Tous
Raccourci par défaut
Aucun
Introduit dans la version
0.19
Voir aussi
Std Part, Std Groupe, Std Créer un lien

Description

Std Créer un sous-lien crée un App Link (classe App::Link), tout comme Std Créer un lien mais il fonctionne d'abord sur les sous-éléments sélectionnés et définit DonnéesLink Transform sur true.

Utilisation

Avec sélection :

  1. Sélectionnez un sous-élément dans la Vue 3D, cela signifie un sommet, une arête ou une face, ou toute combinaison de ceux-ci. Ces sous-éléments doivent appartenir à un seul objet.
  2. Appuyez sur le bouton Std Créer un sous-lien. L'objet crée a la même icône que l'objet d'origine mais a deux flèches superposées indiquant qu'il s'agit d'un lien relatif.

Sans sélection :

  • Si aucun objet n'est sélectionné, cette commande ne fait rien.
  • Si un objet est sélectionné uniquement dans la Vue en arborescence, mais qu'aucun sous-élément n'est sélectionné dans la Vue 3D, la commande ne fait rien non plus.

Corps d'origine et trois liens créés à partir de ses sous-éléments, y compris les arêtes et les faces.

Propriétés

Cette commande crée un nouveau App Link. Ses propriétés sont décrites dans Std Créer un lien.

En particulier, DonnéesLink Transform est défini sur true, donc DonnéesPlacement devient masqué et à la place DonnéesLink Placement contrôle la position du lien par rapport à la position de DonnéesLinked Object.

Script

Voir Std Créer un lien pour les informations générales.

Un App Link est créé avec la méthode addObject() du document. Pour définir un lien relatif, sa méthode setLink est utilisée pour sélectionner l'objet source et un ou plusieurs de ses sous-éléments. Ensuite, l'attribut LinkTransform est défini sur True.

import FreeCAD as App

doc = App.newDocument()
body = App.ActiveDocument.addObject("Part::Box", "Box")

obj = App.ActiveDocument.addObject("App::Link", "Link")
obj.setLink(body, '', ['Edge1', 'Edge6', 'Edge7', 'Edge10', 'Face2', 'Face3'])
obj.LinkTransform = True
obj.LinkPlacement.Base = App.Vector(20, 20, 0)
App.ActiveDocument.recompute()