Std LinkMake/fr: Difference between revisions

From FreeCAD Documentation
(Created page with "Sans sélection: # Si aucun objet n'est sélectionné, appuyez sur le bouton {{Button|16px Std Créer un lien}} pour créer un li...")
No edit summary
 
(129 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<languages/>
<languages/>

{{Docnav/fr
|[[Std_Group/fr|Groupe]]
|[[Std_LinkMakeRelative/fr|Créer un sous-lien]]
|[[Std_Base|Std Base]]
|IconL=Std_Group.svg
|IconR=Std_LinkMakeRelative.svg
|IconC=Freecad.svg
}}


{{GuiCommand/fr
{{GuiCommand/fr
|Name=Std LinkMake
|Name=Std LinkMake
|Name/fr=Std Créer un lien
|Name/fr=Std Créer un lien
|MenuLocation=Aucun
|MenuLocation=
|Workbenches=Tous
|Workbenches=Tous
|Version=0.19
|Version=0.19
|SeeAlso=[[Std Part/fr|Std Part]], [[Std Group/fr|Std Groupe]], [[PartDesign Body/fr|PartDesign Corps]]
|SeeAlso=[[Std_Part/fr|Std Part]], [[Std_Group/fr|Std Groupe]], [[PartDesign_Body/fr|PartDesign Corps]]
}}
}}


==Description==
==Description==


{{Button|[[File:Std_LinkMake.svg|16px]] [[Std_LinkMake/fr|Std LinkMake]]}} crée une classe [[App_Link/fr|App Link]] ({{incode|App::Link}}), un type d'objet faisant référence ou lié à un autre objet, dans le même document ou dans un autre document. Il est spécialement conçu pour dupliquer efficacement un seul objet plusieurs fois, ce qui permet de créer des [[assembly/fr|assemblages]] complexes à partir de sous-assemblages plus petits et de plusieurs composants réutilisables tels que des vis, des écrous et des éléments de fixation similaires.
{{Button|[[File:Std_LinkMake.svg|16px]] [[Std_LinkMake/fr|Std Créer un lien]]}} crée une classe [[App_Link/fr|App Link]] ({{incode|App::Link}}), un type d'objet faisant référence ou lié à un autre objet, dans le même document ou dans un autre document. Il est spécialement conçu pour dupliquer efficacement un seul objet plusieurs fois, ce qui permet de créer des [[assembly/fr|assemblages]] complexes à partir de sous-assemblages plus petits et de plusieurs composants réutilisables tels que des vis, des écrous et des éléments de fixation similaires.


L'objet [[App_Link/fr|App Link]] a été nouvellement introduit dans la v0.19. Auparavant, une simple duplication d'objets pouvait être réalisée avec {{Button|[[File:Draft_Clone.svg|16px]] [[Draft_Clone/fr|Draft Clone]]}}, mais c'est une solution moins efficace en raison de son implémentation qui crée essentiellement une copie de la [[Part_TopoShape/fr|Forme]] interne de l'objet source. D'un autre côté, un lien fait directement référence à la forme d'origine, donc plus efficace en mémoire.
L'objet [[App_Link/fr|App Link]] a été nouvellement introduit dans la v0.19. Auparavant, une simple duplication d'objets pouvait être réalisée avec {{Button|[[File:Draft_Clone.svg|16px]] [[Draft_Clone/fr|Draft Cloner]]}}, mais c'est une solution moins efficace en raison de son implémentation qui crée essentiellement une copie de la [[Part_TopoShape/fr|forme]] interne de l'objet source. D'un autre côté, un lien fait directement référence à la forme d'origine, donc plus efficace en mémoire.


En lui-même, l'objet [[App_Link/fr|Link]] peut se comporter comme un tableau dupliquant son objet de base plusieurs fois. Cela peut être fait en définissant sa propriété {{PropertyData/fr|Element Count}} sur {{Value|1}} ou plus. Cet objet "[[#Link_Array/fr|Link Array]]" peut également être créé avec les différents outils de tableau du [[File:Workbench_Draft.svg|24px]] [[Draft_Module|atelier Draft]], par exemple {{Button|[[File:Draft_OrthoArray.svg|16px]] [[Draft_OrthoArray/fr|Draft Réseau orthogonal]]}}, {{Button|[[File:Draft_PolarArray.svg|16px]] [[Draft_PolarArray/fr|Draft Réseau polaire]]}}, et {{Button|[[File:Draft_CircularArray.svg|16px]] [[Draft_CircularArray/fr|Draft Réseau circulaire]]}}.
En lui-même, l'objet [[App_Link/fr|Link]] peut se comporter comme un tableau dupliquant son objet de base plusieurs fois. Cela peut être fait en définissant sa propriété {{PropertyData/fr|Element Count}} sur {{Value|1}} ou plus. Cet objet "[[Std_LinkMake/fr#R.C3.A9seau_lien|Réseau lien]]" peut également être créé avec les différents outils de tableau de l'[[File:Workbench_Draft.svg|24px]] [[Draft_Workbench/fr|atelier Draft]], par exemple {{Button|[[File:Draft_OrthoArray.svg|16px]] [[Draft_OrthoArray/fr|Draft Réseau orthogonal]]}}, {{Button|[[File:Draft_PolarArray.svg|16px]] [[Draft_PolarArray/fr|Draft Réseau polaire]]}}, et {{Button|[[File:Draft_CircularArray.svg|16px]] [[Draft_CircularArray/fr|Draft Réseau circulaire]]}}.


Lorsqu'ils sont utilisés avec l'[[File:Workbench_PartDesign.svg|24px]] [[PartDesign_Workbench/fr|atelier PartDesign]], les liens sont destinés à être utilisés avec {{Button|[[File:PartDesign_Body.svg|16px]] [[PartDesign_Body/fr|PartDesign Corps]]}}. Il est donc recommandé de définir {{PropertyView/fr|Display Mode Body}} sur {{Value|Tip}} pour sélectionner les caractéristiques du corps entier et non les fonctions individuelles. Pour créer des tableaux des [[PartDesign_Feature/fr|PartDesign Features]] internes, utilisez {{Button|[[File:PartDesign_LinearPattern.svg|16px]] [[PartDesign_LinearPattern/fr|PartDesign Répétition linéaire]]}}, {{Button|[[File:PartDesign_PolarPattern.svg|16px]] [[PartDesign_PolarPattern/fr|PartDesign Répétition circulaire]]}} et {{Button|[[File:PartDesign_MultiTransform.svg|16px]] [[PartDesign_MultiTransform/fr|PartDesign Transformation multiple]]}}.
Lorsqu'ils sont utilisés avec l'[[File:Workbench_PartDesign.svg|24px]] [[PartDesign_Workbench/fr|atelier PartDesign]], les liens sont destinés à être utilisés avec {{Button|[[File:PartDesign_Body.svg|16px]] [[PartDesign_Body/fr|PartDesign Corps]]}}. Il est donc recommandé de définir {{PropertyView/fr|Display Mode Body}} sur {{Value|Tip}} pour sélectionner les caractéristiques du corps entier et non les fonctions individuelles. Pour créer des tableaux des [[PartDesign_Feature/fr|PartDesign Features]] internes, utilisez {{Button|[[File:PartDesign_LinearPattern.svg|16px]] [[PartDesign_LinearPattern/fr|PartDesign Répétition linéaire]]}}, {{Button|[[File:PartDesign_PolarPattern.svg|16px]] [[PartDesign_PolarPattern/fr|PartDesign Répétition circulaire]]}} et {{Button|[[File:PartDesign_MultiTransform.svg|16px]] [[PartDesign_MultiTransform/fr|PartDesign Transformation multiple]]}}.
Line 22: Line 31:
L'outil {{Button|[[File:Std_LinkMake.svg|16px]] [[Std_LinkMake/fr|Std Créer un lien]]}} n'est pas défini par un atelier particulier mais par le système de base. De ce fait il se trouve donc dans {{MenuCommand|Barre d'outils Structure}} qui est disponible dans tous les [[Workbenches/fr|ateliers]]. L'objet Link, utilisé en conjonction avec {{Button|[[File:Std_Part.svg|16px]] [[Std_Part/fr|Std Part]]}} pour regrouper divers objets, constitue la base des ateliers [[File:Assembly3_workbench_icon.svg|24px]] [[Assembly3_Workbench/fr|Assembly3]] et [[File:Assembly4_workbench_icon.svg|24px]] [[Assembly4_Workbench/fr|Assembly4]].
L'outil {{Button|[[File:Std_LinkMake.svg|16px]] [[Std_LinkMake/fr|Std Créer un lien]]}} n'est pas défini par un atelier particulier mais par le système de base. De ce fait il se trouve donc dans {{MenuCommand|Barre d'outils Structure}} qui est disponible dans tous les [[Workbenches/fr|ateliers]]. L'objet Link, utilisé en conjonction avec {{Button|[[File:Std_Part.svg|16px]] [[Std_Part/fr|Std Part]]}} pour regrouper divers objets, constitue la base des ateliers [[File:Assembly3_workbench_icon.svg|24px]] [[Assembly3_Workbench/fr|Assembly3]] et [[File:Assembly4_workbench_icon.svg|24px]] [[Assembly4_Workbench/fr|Assembly4]].


<span id="Usage"></span>
==Utilisation==
==Utilisation==


Avec sélection:
Avec sélection :
# Sélectionnez un objet dans la [[Tree_view/fr|Vue en arborescence]] ou la [[3D_view/fr|vue 3D]] pour lequel vous souhaitez créer un lien.
# Sélectionnez un objet dans la [[Tree_view/fr|Vue en arborescence]] ou la [[3D_view/fr|vue 3D]] pour lequel vous souhaitez créer un lien.
# Appuyez sur le bouton {{Button|[[File:Std_LinkMake.svg|16px]] [[Std_LinkMake/fr|Std Créer un lien]]}}. L'objet crée a la même icône que l'objet d'origine mais a une flèche superposée indiquant qu'il s'agit d'un lien.
# Appuyez sur le bouton {{Button|[[File:Std_LinkMake.svg|16px]] [[Std_LinkMake/fr|Std Créer un lien]]}}. L'objet crée a la même icône que l'objet d'origine mais a une flèche superposée indiquant qu'il s'agit d'un lien.


Sans sélection:
Sans sélection :
# Si aucun objet n'est sélectionné, appuyez sur le bouton {{Button|[[File:Std_LinkMake.svg|16px]] [[Std_LinkMake/fr|Std Créer un lien]]}} pour créer un lien [[File:Link.svg|24px]] vide.
# Si aucun objet n'est sélectionné, appuyez sur le bouton {{Button|[[File:Std_LinkMake.svg|16px]] [[Std_LinkMake/fr|Std Créer un lien]]}} pour créer un lien vide [[File:Link.svg|24px]].
# Allez dans l'[[Property_editor/fr|Éditeur de propriétés]], puis cliquez sur la propriété {{PropertyData/fr|Linked Object}} pour ouvrir la [[Selection_methods|Link selection dialog]] pour choisir un objet, puis appuyez sur {{Button|OK }}.
# Allez dans l'[[Property_editor/fr|Éditeur de propriétés]], puis cliquez sur la propriété {{PropertyData/fr|Linked Object}} pour ouvrir la [[Selection_methods|Dialogue de sélection des liens]] pour choisir un objet, puis appuyez sur {{Button|OK }}.
# Au lieu de choisir un objet entier dans la [[Tree_view/fr|Vue en arborescence]], vous pouvez également choisir des sous-éléments (sommets, arêtes ou faces) d'un seul objet dans la [[3D_view/fr|Vue 3D]]. Dans ce cas, le lien dupliquera uniquement ces sous-éléments et la superposition de flèches sera différente. Cela peut également être fait avec {{Button|[[File:Std_LinkMakeRelative.svg|16px]] [[Std_LinkMakeRelative/fr|Std Créer un sous-lien]]}}.
# Au lieu de choisir un objet entier dans la [[Tree_view/fr|Vue en arborescence]], vous pouvez également choisir des sous-éléments (sommets, arêtes ou faces) d'un seul objet dans la [[3D_view/fr|Vue 3D]]. Dans ce cas, le lien dupliquera uniquement ces sous-éléments et la superposition de flèches sera différente. Cela peut également être fait avec {{Button|[[File:Std_LinkMakeRelative.svg|16px]] [[Std_LinkMakeRelative/fr|Std Créer un sous-lien]]}}.


[[File:Std_Link_tree_example.png]] [[File:Std_Link_example.png]]
[[File:Std_Link_tree_example.png]] [[File:Std_Link_example.png]]


{{Caption|(1) An object, (2) an empty Link, (3) a full Link to the first object (with overriding material), and (4) a Link to only some subelements of the object. The empty Link is not tied to the real object so it is not displayed in the [[3D_view|3D view]].}}
{{Caption|(1) Un objet, (2) un lien vide, (3) un lien complet vers le premier objet (avec un matériau de remplacement), et (4) un lien vers seulement quelques sous-éléments de l'objet. Le lien vide n'est pas lié à l'objet réel et n'est donc pas affiché dans la [[3D_view/fr|vue 3D]].}}


<span id="Usage:_external_documents"></span>
== Usage: external documents ==
== Utilisation : documents externes ==


# Start with a document that has at least one object which will be the source of the Link.
# Commencez par un document contenant au moins un objet qui sera la source du lien.
# Open a new document or an existing document. For easier handling, use {{Button|[[File:Std_TreeMultiDocument.svg|16px]] [[Std_TreeMultiDocument|Std TreeMultiDocument]]}} to show both documents in the [[tree_view|tree view]]. Before you proceed, [[Std_Save|save]] both documents. The Link won't be able to find its source and target unless both documents are saved on disk.
# Ouvrez un nouveau document ou un document existant. Pour une manipulation plus facile, utilisez {{Button|[[File:Std_TreeMultiDocument.svg|16px]] [[Std_TreeMultiDocument/fr|Std Arborescence Tous les documents]]}} pour afficher les deux documents dans la [[Tree_view/fr|vue en arborescence]]. Avant de continuer, [[Std_Save/fr|sauvegarder]] les deux documents. Le lien ne pourra pas trouver sa source et sa cible à moins que les deux documents ne soient enregistrés sur le disque.
# In the first document, select the object that you wish to link; then switch tabs in the [[main_view_area|main view area]] to switch to the second document.
# Dans le premier document, sélectionnez l'objet que vous souhaitez lier, puis changez d'onglet dans la [[main_view_area/fr|Zone de vue principale]] pour passer au deuxième document.
# Press {{Button|[[File:Std_LinkMake.svg|16px]] [[Std_LinkMake|Std LinkMake]]}}. The produced object has the same icon as the original object, but has an additional arrow overlay indicating it is a Link coming from an external document.
# Appuyez sur {{Button|[[File:Std_LinkMake.svg|16px]] [[Std_LinkMake/fr|Std Créer un lien]]}}. L'objet produit a la même icône que l'objet d'origine mais a une flèche superposée indique qu'il s'agit d'un lien provenant d'un document externe.


{{Emphasis|Notes:}}
{{Emphasis|Remarques :}}
* When saving the document with the Link, it will also ask to [[Std_Save|save]] the source document which contains the original object.
* Lors de l'enregistrement du document avec le lien, il sera demandé également de [[Std_Save/fr|sauvegarder]] le document source qui contient l'objet d'origine.
* To include the original object in the document with the Link, use {{Button|[[File:Std_LinkImport.svg|16px]] [[Std_LinkImport|Std LinkImport]]}} or {{Button|[[File:Std_LinkImportAll.svg|16px]] [[Std_LinkImportAll|Std LinkImportAll]]}}.
* Pour inclure l'objet d'origine dans le document avec le lien, utilisez {{Button|[[File:Std_LinkImport.svg|16px]] [[Std_LinkImport/fr|Std Importer des liens]]}} ou {{Button|[[File:Std_LinkImportAll.svg|16px]] [[Std_LinkImportAll/fr|Std Importer tous les liens]]}}.
* {{Button|[[File:Std_LinkMake.svg|16px]] [[Std_LinkMake|Std LinkMake]]}} can be used on an existing Link object, in order to create a Link to a Link which ultimately resolves to the original object in the source document. This can be used with {{Button|[[File:Std_LinkMakeRelative.svg|16px]] [[Std_LinkMakeRelative|Std LinkMakeRelative]]}} to pick only certain subelements as well.
* {{Button|[[File:Std_LinkMake.svg|16px]] [[Std_LinkMake/fr|Std Créer un lien]]}} peut être utilisé sur un objet Link existant afin de créer un lien vers un lien qui résout finalement l'objet original dans le document source. Cela peut être réalisé avec {{Button|[[File:Std_LinkMakeRelative.svg|16px]] [[Std_LinkMakeRelative/fr|Std Créer un sous-lien]]}} pour ne sélectionner que certains sous-éléments également.


[[File:Std_Link_tree_documents_example.png]] [[File:Std_Link_documents_example.png]]
[[File:Std_Link_tree_documents_example.png]] [[File:Std_Link_documents_example.png]]


{{Caption|(1, 2) Two objects from a source document linked into a target document, (3) a Link to the second Link (with overriding material), and (4) a Link to the subelements of the second Link.}}
{{Caption|(1, 2) Deux objets d'un document source liés à un document cible, (3) un lien vers le deuxième lien (avec un matériau de remplacement) et (4) un lien vers les sous-éléments du deuxième lien.}}


<span id="Dragging_and_dropping"></span>
=== Dragging and dropping ===
=== Glisser-déposer ===


Instead of switching document tabs, you can create Links by performing a drag and drop operation in the [[tree_view|tree view]]: select the source object from the first document, drag it, then drop it into the second document's name while holding the {{KEY|Alt}} key in the keyboard.
Au lieu de changer d'onglet de document, vous pouvez créer des liens en effectuant une opération de glisser-déposer dans la [[Tree_view/fr|Vue en arborescence]]: sélectionnez l'objet source dans le premier document, faites-le glisser, puis déposez-le dans le nom du second document tout en maintenant la touche {{KEY|Alt}} du clavier.


Le glisser-déposer entraîne différentes actions en fonction de la touche de modification enfoncée.
Dragging and dropping results in different actions depending on the modifier key that is held.
* Sans touche de modification, il déplace simplement l'objet d'un document à l'autre; une flèche inclinée s'affiche dans le curseur.
* Without modifier key it simply moves the object from one document to the other; an inclined arrow is shown in the cursor.
* Holding the {{KEY|Ctrl}} key copies the object; a plus sign is shown in the cursor.
* Maintenir la touche {{KEY|Ctrl}} copie l'objet ; un signe plus est affiché dans le curseur.
* Holding the {{KEY|Alt}} key creates a Link; a pair of chain links is shown in the cursor.
* Maintenir la touche {{KEY|Alt}} crée un lien ; une paire de maillons de chaîne est affichée dans le curseur.


For the {{KEY|Ctrl}} and {{KEY|Alt}} modifiers, dragging and dropping can also be done with a single document. That is, dragging an object and dropping it into the same document's name can be used to create multiple copies or multiple Links to it.
Pour les modificateurs {{KEY|Ctrl}} et {{KEY|Alt}}, le glisser-déposer peut également être effectué avec un seul document. Autrement dit, faire glisser un objet et le déposer dans le même nom de document peut être utilisé pour créer plusieurs copies ou plusieurs liens vers celui-ci.


== Groups ==
<span id="Groups"></span>
== Groupes ==


{{Button|[[File:Std_LinkMake.svg|16px]] [[Std_LinkMake|Std LinkMake]]}} can be used on {{Button|[[File:Std_Part.svg|16px]] [[Std_Part|Std Parts]]}} in order to quickly duplicate groups of objects positioned in space, that is, [[assembly|assemblies]].
{{Button|[[File:Std_LinkMake.svg|16px]] [[Std_LinkMake/fr|Std Créer un lien]]}} peut être utilisé avec des objets {{Button|[[File:Std_Part.svg|16px]] [[Std_Part/fr|Std Part]]}} afin de dupliquer rapidement des groupes d'objets positionnés dans l'espace, c'est-à-dire [[assembly/fr|assemblages]].


[[File:Std_Link_tree_Std_Part_example.png]]
[[File:Std_Link_tree_Std_Part_example.png]]


{{Caption|Link created from a [[Std_Part|Std Part]]; the objects are not duplicated but they are listed under the original container and under the Link container.}}
{{Caption|Lien créé à partir d'une [[Std_Part/fr|Std Part]] ; les objets ne sont pas dupliqués mais ils sont répertoriés sous le conteneur d'origine et sous le conteneur Lien.}}


A regular {{Button|[[File:Std_Group.svg|16px]] [[Std_Group|Std Group]]}} does not possess a {{PropertyData|Placement}} property, so it cannot control the position of the objects inside of it. However, when {{Button|[[File:Std_LinkMake.svg|16px]] [[Std_LinkMake|Std LinkMake]]}} is used with {{Button|[[File:Std_Group.svg|16px]] [[Std_Group|Std Group]]}}, the resulting Link behaves essentially like a {{Button|[[File:Std_Part.svg|16px]] [[Std_Part|Std Part]]}}, and can also be moved in space.
Un {{Button|[[File:Std_Group.svg|16px]] [[Std_Group/fr|Std Groupe]]}} ne possède pas de propriété {{PropertyData/fr|Placement}}, il ne peut donc pas contrôler la position des objets à l'intérieur de celui-ci. Cependant, lorsque {{Button|[[File:Std_LinkMake.svg|16px]] [[Std_LinkMake/fr|Std Créer un lien]]}} est utilisé avec {{Button|[[File:Std_Group.svg|16px]] [[Std_Group/fr|Std Groupe]]}}, le lien résultant se comporte essentiellement comme un {{Button|[[File:Std_Part.svg|16px]] [[Std_Part/fr|Std Part]]}} et peut également être déplacé dans l'espace.


[[File:Std_Link_tree_Std_Group_example.png]] [[File:Std_Link_Std_Group_example.png]]
[[File:Std_Link_tree_Std_Group_example.png]] [[File:Std_Link_Std_Group_example.png]]


{{Caption|Link created from a [[Std_Group|Std Group]]; the objects are not duplicated but they are listed under the original container and under the Link container. The Link (with overriding material) can be moved in space, just like a [[Std_Part|Std Part]].}}
{{Caption|Lien créé à partir d'un [[Std_Group/fr|Std Groupe]] ; les objets ne sont pas dupliqués mais ils sont répertoriés sous le conteneur d'origine et sous le conteneur Lien. Le lien (avec le matériau de remplacement) peut être déplacé dans l'espace, tout comme un [[Std_Part/fr|Std Part]].}}


A Link to a {{Button|[[File:Std_Part.svg|16px]] [[Std_Part|Std Part]]}} will keep the visibility of the objects synchronized with the original Part; so if you hide one object in a Link, it will be hidden in all Links and in the original object. On the other hand a Link to a {{Button|[[File:Std_Group.svg|16px]] [[Std_Group|Std Group]]}} will allow independent control of the visibilities.
Un lien vers un {{Button|[[File:Std_Part.svg|16px]] [[Std_Part/fr|Std Part]]}} gardera la visibilité des objets synchronisée avec la Part d'origine. Donc si vous masquez un objet dans un lien, il sera masqué dans tous les liens et dans l'objet d'origine. D'un autre côté, un lien vers un {{Button|[[File: Std_Group.svg|16px]] [[Std_Group/fr|Std Groupe]]}} permettra un contrôle indépendant des visibilités.


[[File:Std_Link_tree_Std_Part_visibility.png]] [[File:Std_Link_tree_Std_Group_visibility.png]]
[[File:Std_Link_tree_Std_Part_visibility.png]] [[File:Std_Link_tree_Std_Group_visibility.png]]


{{Caption|Left: [[Std_Part|Std Part]] with two objects, and two Links to the Part; the visibility of the objects is synchronized. Right: [[Std_Group|Std Group]] with two objects, and two Links to the Group; the visibility of the objects is independently controlled in each group.}}
{{Caption|À gauche : [[Std_Part/fr|Std Part]] avec deux objets et deux liens vers la pièce; la visibilité des objets est synchronisée. À droite : [[Std_Group/fr|Std Group]] avec deux objets et deux liens vers le groupe. La visibilité des objets est contrôlée indépendamment dans chaque groupe.}}


<span id="Overriding_appearance"></span>
== Overriding appearance ==
== Apparence de remplacement ==


When a Link is created, by default the {{PropertyView|Override Material}} is {{FALSE}}, so the Link will have the same appearance as the original {{PropertyData|Linked Object}}.
Lorsqu'un lien est créé, par défaut {{PropertyView/fr|Override Material}} est {{FALSE}}, donc le lien aura la même apparence que l'original {{PropertyData/fr|Linked Object}}.


When {{PropertyView|Override Material}} is set to {{TRUE}}, the {{PropertyView|Shape Material}} property will now control the appearance of the Link.
Lorsque {{PropertyView/fr|Override Material}} est défini sur {{TRUE}}, la propriété {{PropertyView/fr|Shape Material}} contrôlera désormais l'apparence du lien.


Regardless of the state of {{PropertyView|Override Material}}, it is possible to individually set the appearance of the subelements (vertices, edges, faces) of a Link.
Quel que soit l'état de {{PropertyView/fr|Override Material}}, il est possible de définir individuellement l'apparence des sous-éléments (sommets, arêtes, faces) d'un lien.
# Select the Link in the [[tree_view|tree view]]. Open the context menu (right-click), and pick {{MenuCommand|Override colors}}.
# Sélectionnez le lien dans la [[Tree_view/fr|Vue en arborescence]]. Ouvrez le menu contextuel (clic droit) et choisissez {{MenuCommand|Override colors}}.
# Now pick the individual subelements that you want in the [[3D_view|3D view]], press {{Button|Edit}}, and change the properties including transparency.
# Choisissez maintenant les sous-éléments individuels que vous voulez dans la [[3D_view/fr|Vue 3D]], appuyez sur {{Button|Edit}} et modifiez les propriétés, y compris la transparence.
# To remove the custom attributes, select the elements in the list, and press {{Button|Remove}}.
# Pour supprimer les attributs personnalisés, sélectionnez les éléments dans la liste et appuyez sur {{Button|Remove}}.
# When you are satisfied with the result, press {{Button|OK}} to close the dialog.
# Lorsque vous êtes satisfait du résultat, appuyez sur {{Button|OK}} pour fermer la boîte de dialogue.


{{Emphasis|Note:}} as of v0.19, the coloring of the subelements is subject to the [[topological_naming_problem|topological naming problem]] so it should be done as the last modelling step, when the model is not subject to change any more.
{{Emphasis|Remarque :}} à partir de la v0.19, la coloration des sous-éléments est soumise au [[topological_naming_problem/fr|Problème de dénomination topologique]]. Elle doit être effectuée comme dernière étape de modélisation lorsque le modèle n'est plus sensé être modifié.


[[File:Std_Link_override_color_example.png|500px]]
[[File:Std_Link_override_color_example.png|500px]]


{{Caption|(1) An original object, (2) a Link with overriding material, and (3) a second Link with individual modified subelements.}}
{{Caption|(1) Un objet original, (2) un lien avec un matériau de remplacement et (3) un deuxième lien avec des sous-éléments modifiés individuels.}}


<span id="Link_Array"></span>
== Link Array ==
== Réseau lien ==


{{Emphasis|See also:}} [[Draft_OrthoArray|Draft OrthoArray]].
{{Emphasis|Voir aussi :}} [[Draft_OrthoArray/fr|Draft Réseau orthogonal]].


When a Link is created, by default its {{PropertyData|Element Count}} is {{Value|0}}, so only a single Link object will be visible in the [[tree_view|tree view]].
Lorsqu'un lien est créé, par défaut, son {{PropertyData/fr|Element Count}} est {{Value|0}}, donc un seul objet Link sera visible dans la [[Tree_view/fr|Vue en arborescence]].


Given that {{PropertyData|Show Element}} is {{TRUE}} by default, when {{PropertyData|Element Count}} is set to {{Value|1}} or more, automatically more Links will be created below the first one; each new Link can be placed in the desired position by changing its own {{PropertyData|Placement}} property.
Étant donné que {{PropertyData/fr|Show Element}} est {{TRUE}} par défaut, lorsque {{PropertyData/fr|Element Count}} est défini sur {{Value|1}} ou plus, automatiquement plus de liens seront créés sous le premier. Chaque nouveau lien peut être placé à la position souhaitée en modifiant sa propre propriété {{PropertyData/fr|Placement}}.


In similar way, each element of the array can have its own appearance changed, either by the {{PropertyView|Override Material}} and {{PropertyView|Shape Material}} properties, or by using the {{MenuCommand|Override colors}} menu on the entire array and then selecting individual faces; this is described in [[#Overriding_appearance|Overriding appearance]].
De la même manière, chaque élément du réseau peut avoir sa propre apparence modifiée, soit par les propriétés {{PropertyView/fr|Override Material}} et {{PropertyView/fr|Shape Material}}, soit en utilisant le menu {{MenuCommand|Override colors}} sur l'ensemble du réseau puis en sélectionnant des faces une par une. Ceci est décrit dans [[#Apparence_de_remplacement|Apparence de remplacement]].


[[File:Std_Link_tree_array_example.png]] [[File:Std_Link_array_example.png|500px]]
[[File:Std_Link_tree_array_example.png]] [[File:Std_Link_array_example.png|500px]]


{{Caption|(1) Original object, and (2, 3, 4) a Link array with three elements, each in a different position. The first Link has overridden material and transparent faces, the other two have custom face colors.}}
{{Caption|(1) Objet d'origine, et (2, 3, 4) un réseau Lien avec trois éléments, chacun dans une position différente. Le premier lien a un matériau de remplacement et des faces transparentes, les deux autres ont des couleurs de face personnalisées.}}


Once you are satisfied with the placement and properties of the Link elements in the array, you may change {{PropertyData|Show Element}} to {{FALSE}} in order hide the individual Links in the [[tree_view|tree view]]; this has the benefit of making the system more responsive, particularly if you have many objects in the document.
Une fois que vous êtes satisfait de l'emplacement et des propriétés des éléments Liens dans le réseau, vous pouvez changer {{PropertyData/fr|Show Element}} en {{FALSE}} afin de masquer les liens individuels dans la [[Tree_view/fr|Vue en arborescence]]. Cela présente l'avantage de rendre le système plus réactif, en particulier si vous avez de nombreux objets dans le document.


When creating this type of Link array, you must place each of the elements manually; however, if you would like to use specific patterns to place the copies, you may use the array tools of the [[File:Workbench_Draft.svg|24px]] [[Draft_Module|Draft Workbench]], like {{Button|[[File:Draft_OrthoArray.svg|16px]] [[Draft_OrthoArray|Draft OrthoArray]]}}, {{Button|[[File:Draft_PolarArray.svg|16px]] [[Draft_PolarArray|Draft PolarArray]]}}, and {{Button|[[File:Draft_CircularArray.svg|16px]] [[Draft_CircularArray|Draft CircularArray]]}}; these commands can create normal copies or Link copies depending on the options at creation time.
Lors de la création de ce type de réseau de liens, vous devez placer chacun des éléments manuellement. Cependant, si vous souhaitez utiliser des modèles spécifiques pour placer les copies, vous pouvez utiliser les outils de réseau de l'[[File:Workbench_Draft.svg|24px]] [[Draft_Workbench/fr|atelier Draft]], comme {{Button|[[ File:Draft_OrthoArray.svg|16px]] [[Draft_OrthoArray/fr|Draft Réseau orthogonal]]}}, {{Button|[[File:Draft_PolarArray.svg|16px]] [[Draft_PolarArray/fr|Draft Réseau polaire]]}} et {{Button|[[File:Draft_CircularArray.svg|16px]] [[Draft_CircularArray/fr|Draft Réseau circulaire]]}}; ces commandes peuvent créer des copies normales ou des copies de lien selon les options au moment de la création.


== Visibility ==
<span id="Visibility"></span>
== Visibilité ==


When {{PropertyData|Show Element}} is {{TRUE}} and individual elements are listed in the [[tree_view|tree view]] in a [[#Link_Array|Link Array]], each Link can be shown or hidden by pressing the {{KEY|Space}} bar in the keyboard.
Lorsque {{PropertyData/fr|Show Element}} est {{TRUE}} et que des éléments individuels sont répertoriés dans la [[Tree_view/fr|Vue en arborescence]] dans un [[#R.C3.A9seau_lien|Réseau lien]], chaque lien peut être affiché ou masqué par en appuyant sur la barre {{KEY|Espace}} du clavier.


Another way to hide the individual elements is using the {{MenuCommand|Override colors}} menu.
Une autre façon de masquer les éléments individuels consiste à utiliser le menu {{MenuCommand|Override colors}}.
# Select the array, open the {{MenuCommand|Override colors}} menu (right click).
# Sélectionnez le tableau, ouvrez le menu {{MenuCommand|Override colors}} (clic droit).
# In the [[3D_view|3D view]], pick any subelement from any Link in the array.
# Dans la [[3D_view/fr|Vue 3D]], choisissez n'importe quel sous-élément à partir de n'importe quel lien du réseau.
# Press {{Button|Hide}}. An icon of an eye [[File:Invisible.svg|24px]] should appear, indicating that this element has been hidden from the [[3D_view|3D view]]. The object will temporarily show itself when the cursor hovers over the [[File:Invisible.svg|24px]] icon.
# Appuyez sur {{Button|Hide}}. Une icône représentant un œil [[File:Invisible.svg|24px]] devrait apparaître, indiquant que cet élément a été masqué de la [[3D_view/fr|Vue 3D]]. L'objet s'affichera temporairement lorsque le curseur survolera l'icône [[File:Invisible.svg|24px]].
# You can click {{Button|OK}} to confirm the operation and close the dialog. The Link will remain hidden even if it is shown as visible in the [[tree_view|tree view]].
# Vous pouvez cliquer sur {{Button|OK}} pour confirmer l'opération et fermer la boîte de dialogue. Le lien restera caché même s'il est affiché comme visible dans la [[Tree_view/fr|Vue en arborescence]].


[[File:Std_Link_array_visibility_example.png]]
[[File:Std_Link_array_visibility_example.png]]


{{Caption|Boîte de dialogue des couleurs des éléments disponibles lors de l'ouverture du menu contextuel d'un objet Lien dans l'arborescence.}}
{{Caption|Element color dialog that is available when opening the context menu of a Link object in the tree view.}}


If you wish to restore the visibility of this array element, enter the dialog once more, pick the eye icon, then click on {{Button|Remove}} to remove the hidden status, and click {{Button|OK}} to confirm and close the dialog. The element will be visible in the [[3D_view|3D view]] again.
Si vous souhaitez restaurer la visibilité de cet élément du réseau, entrez à nouveau dans la boîte de dialogue, choisissez l'icône en forme d'œil, puis cliquez sur {{Button|Remove}} pour supprimer l'état caché et cliquez sur {{Button|OK}} pour confirmer et fermez la boîte de dialogue. L'élément sera à nouveau visible dans [[3D_view/fr|Vue 3D]].


When the Link is for a {{Button|[[File:Std_Part.svg|16px]] [[Std_Part|Std Part]]}} or a {{Button|[[File:Std_Group.svg|16px]] [[Std_Part|Std Group]]}}, the {{MenuCommand|Override colors}} menu works in similar way as with arrays; it allows controlling the face color, entire object color, and visibility of the objects in the group.
Lorsque le lien est pour un {{Button|[[File:Std_Part.svg|16px]] [[Std_Part/fr|Std Part]]}} ou un {{Button|[[File:Std_Group.svg|16px]] [[ Std_Part/fr|Std Groupe]]}}, le menu {{MenuCommand|Override colors}} fonctionne de la même manière qu'avec les réseaux. Il permet de contrôler la couleur de la face, la couleur de l'objet entier et la visibilité des objets du groupe.


[[File:Std_Link_Std_Part_visibility_example.png]] [[File:Std_Link_Std_Part_visibility_example_3D.png]]
[[File:Std_Link_Std_Part_visibility_example.png]] [[File:Std_Link_Std_Part_visibility_example_3D.png]]


{{Caption|A [[Std_Part|Std Part]] containing three objects, and a Link to that Part; in the Link, (1) the first object is made invisible, (2) the second object has some subelements with different colors, (3) the entire third object has a different color and level of transparency.}}
{{Caption|Un [[Std_Part/fr|Std Part]] contenant trois objets et un lien vers cette pièce ; dans le lien, (1) le premier objet est rendu invisible, (2) le deuxième objet a des sous-éléments avec des couleurs différentes, (3) le troisième objet entier a une couleur et un niveau de transparence différents.}}


<span id="Properties"></span>
==Propriétés==
==Propriétés==


An [[App_Link|App Link]] ({{incode|App::Link}} class) is derived from the basic [[App_DocumentObject|App DocumentObject]] ({{incode|App::DocumentObject}} class), therefore it has the latter's basic properties like {{PropertyData|Label}} and {{PropertyData|Label2}}.
Un [[App_Link/fr|App Link]] (classe {{incode|App::Link}}) est dérivé de [[App_DocumentObject/fr|App DocumentObject]] (classe {{incode|App::DocumentObject}}). Il a donc les propriétés de base de ce dernier comme {{PropertyData/fr|Label}} et {{PropertyData/fr|Label2}}.


Voici les propriétés spécifiques disponibles dans l'[[Property_editor/fr|Éditeur de propriétés]]. Les propriétés masquées peuvent être affichées en utilisant la commande {{MenuCommand|Afficher tout}} dans le menu contextuel de l'[[Property_editor/fr|Éditeur de propriétés]].
The following are the specific properties available in the [[property editor|property editor]]. Hidden properties can be shown by using the {{MenuCommand|Show all}} command in the context menu of the [[property editor|property editor]].


<span id="Data"></span>
===Données===
===Données===


{{TitleProperty| Link}}
{{TitleProperty|Link}}


* {{PropertyData/fr|Linked Object|XLink}} : il indique l'objet source de [[App_Link/fr|App Link]]; il peut s'agir d'un objet entier ou d'un sous-élément de celui-ci (sommet, arête ou face).
<div class="mw-translate-fuzzy">
* {{PropertyData/fr|Link Transform|Bool}} : la valeur par défaut est {{FALSE}}, auquel cas le lien remplacera le propre emplacement de {{PropertyData/fr|Linked Object}}. S'il est défini sur {{TRUE}}, le lien sera placé à la même position que {{PropertyData/fr|Linked Object}}, et son placement sera relatif à l'emplacement de {{PropertyData/fr|Linked Object}}. Ceci peut également être réalisé avec {{Button|[[File:Std_LinkMakeRelative.svg|16px]] [[Std_LinkMakeRelative/fr|Std Créer un sous-lien]]}}.
* {{PropertyData|Linked Object}}:
* {{PropertyData|Link Transform}}:
* {{PropertyData/fr|Placement|Placement}} : le placement du lien en coordonnées absolues.
* {{PropertyData/fr|Link Placement|Placement|Hidden}} : il s'agit d'un décalage appliqué au-dessus du {{PropertyData/fr|Placement}} du {{PropertyData/fr|Linked Object}}. Cette propriété est normalement masquée mais apparaît si {{PropertyData/fr|Link Transform}} est défini sur {{TRUE}} ; dans ce cas, {{PropertyData/fr|Placement}} devient désormais masqué.
* {{PropertyData|Placement}}:
* {{PropertyData/fr|Show Element|Bool}}: la valeur par défaut est {{TRUE}}, auquel cas la [[Tree_view/fr|Vue en arborescence]] affichera les copies de lien individuelles, tant que {{PropertyData/fr|Element Count}} est {{Value|1}} ou plus grand.
* {{PropertyData|Sub Elements}}:
* {{PropertyData/fr|Element Count|IntegerConstraint}} : la valeur par défaut est {{Value|0}}. S'il est {{Value|1}} ou plus grand, le [[App_Link|App Link]] se comportera comme un réseau et dupliquera le même {{PropertyData/fr|Linked Object}} plusieurs fois. Si {{PropertyData/fr|Show Elements}} est {{TRUE}}, chaque élément du tableau sera affiché dans la [[Tree_view/fr|Vue en arborescence]] et chacun pourra avoir son propre {{PropertyData/fr|Placement}} modifié. Chaque copie de lien aura un nom basé sur le [[Object_name/fr|nom (Name)]] du lien, augmenté de {{incode|_iN}}, où {{incode|N}} est un nombre commençant par {{incode|0}}. Par exemple, avec un seul {{incode|Link}}, les copies seront nommées {{incode|Link_i0}}, {{incode|Link_i1}}, {{incode|Link_i2}}, etc.
* {{PropertyData|Show Elements}}:
* {{PropertyData/fr|Link Execute|String}} : nom de la fonction d'exécution qui s'exécutera pour cet objet Link particulier. La valeur par défaut est {{Value|'appLinkExecute'}}. Réglez-le sur {{Value|'None'}} pour le désactiver.
* {{PropertyData|Element Count}}:
* {{PropertyData/fr|Colored Elements|LinkSubHidden|Hidden}} : liste des éléments Link dont la couleur a été remplacée.
* {{PropertyData|Scale}}:
* {{PropertyData/fr|Scale|Float}} : la valeur par défaut est {{Value|1.0}}. C'est un facteur de mise à l'échelle uniforme dans chaque direction {{incode|X}}, {{incode|Y}} et {{incode|Z}}. Par exemple, un cube de {{Value|2 mm}} x {{Value|2 mm}} x {{Value|2 mm}}, qui est mis à l'échelle par {{Value|2.0}}, donnera une forme aux dimensions {{Value|4 mm}} x {{Value|4 mm}} x {{Value|4 mm}}.
</div>
* {{PropertyData/fr|Scale Vector|Vector|Hidden}} : le facteur d'échelle pour chaque composant {{incode|(X, Y, Z)}} pour tous les éléments Link lorsque {{PropertyData/fr|Element Count}} est {{Value|1}} ou plus. Si {{PropertyData/fr|Scale}} est différent de {{Value|1.0}}, cette même valeur sera utilisée dans les trois composants.
* {{PropertyData/fr|Scale List|VectorList}} : le facteur d'échelle pour chaque élément Link.
* {{PropertyData/fr|Visibility List|BoolList|Hidden}} : {{emphasis|(lecture seule)}} l'état de visibilité de chaque élément Link, soit {{TRUE}} ou {{FALSE}}.
* {{PropertyData/fr|Placement List|PlacementList|Hidden}} : {{emphasis|(lecture seule)}} l'emplacement de chaque élément Link.
* {{PropertyData/fr|Element List|LinkList|Hidden}} : la liste des éléments Link.
* {{PropertyData/fr|_LinkTouched|Bool|Hidden}} :
* {{PropertyData/fr|_ChildCache|LinkList|Hidden}} :


{{TitleProperty|Base}}
{{TitleProperty|Base}}


* {{PropertyData|Proxy|PythonObject|Hidden}}: a custom class associated with this object. This only exists for the [[Python|Python]] version. See [[Std_LinkMake#Scripting|Scripting]].
* {{PropertyData/fr|Proxy|PythonObject|Hidden}} : classe personnalisée associée à cet objet. Cela n'existe que pour la version [[Python/fr|Python]]. Voir [[Std_LinkMake/fr#Script|Script]].


L'objet [[App_Link/fr|App Link]] affichera en plus les propriétés de {{PropertyData|Linked Object}} d'origine, ainsi l'[[Property_editor/fr|Éditeur de propriétés]] peut avoir des groupes de propriétés comme {{TitleProperty|Attachment}}, {{TitleProperty|Box}}, {{TitleProperty|Draft}}, etc.
<div class="mw-translate-fuzzy">
De plus, il affichera les propriétés de l'original {{PropertyData|Linked Object}}.
</div>


<span id="View"></span>
===Vues===
===Vues===


{{TitleProperty| Link}}
{{TitleProperty|Link}}


* {{PropertyView/fr|Draw Style|Enumeration}} : il vaut par défaut {{Value|None}}; il peut s'agir de {{value|Solid}}, {{value|Dashed}}, {{value|Dotted}}, {{value|Dashdot}}; définit le style des arêtes dans la [[3D_view/fr|Vue 3D]].
<div class="mw-translate-fuzzy">
* {{PropertyView/fr|Line Width|FloatConstraint}} : un flotteur qui détermine la largeur en pixels des bords dans la [[3D_view/fr|Vue 3D]]. La valeur par défaut est {{value|2.0}}.
* {{PropertyView|Draw Style}}:
* {{PropertyView/fr|Override Material|Bool}} : la valeur par défaut est {{FALSE}}; s'il est défini sur {{TRUE}}, il remplacera le matériau de {{PropertyData|Linked Object}} et affichera les couleurs définies dans {{PropertyView/fr|Shape Material}}.
* {{PropertyView|Line Width}}:
* {{PropertyView/fr|Point Size|FloatConstraint}} : similaire à {{PropertyView/fr|Line Width}}, définit la taille des sommets.
* {{PropertyView|Override Material}}:
* {{PropertyView/fr|Selectable|Bool}} : s'il est {{TRUE}}, l'objet peut être sélectionné avec le pointeur dans la [[3D_view/fr|Vue 3D]]. Sinon, l'objet ne peut pas être sélectionné tant que cette option n'est pas définie sur {{TRUE}}.
* {{PropertyView|Point Size}}:
* {{PropertyView|Selectable}}:
* {{PropertyView|Shape Material}}:
</div>


* {{PropertyView|Shape Material|Material}}: this property includes sub-properties that describe the appearance of the object.
* {{PropertyView/fr|Shape Material|Material}} : cette propriété comprend des sous-propriétés qui décrivent l'apparence de l'objet.
** {{PropertyView|Diffuse Color}}, it defaults to {{value|(0.4, 1.0, 1.0)}}, which is displayed as {{value|[102, 255, 255]}} on base 255, <span style="background-color:#6ff; color:#222; width:3em; height:12pt; padding: 2px 1em 2px;"> light blue </span>.
** {{PropertyView/fr|Diffuse Color}}, la valeur par défaut est {{value|(0.4, 1.0, 1.0)}}, qui s'affiche sous la forme {{value|[102, 255, 255]}} sur la base 255, <span style="background-color:#6ff; color:#222; width:3em; height:12pt; padding: 2px 1em 2px;"> light blue </span>..
** {{PropertyView|Ambient Color}}, it defaults to {{value|(0.2, 0.2, 0.2)}}, which is displayed as {{value|[51, 51, 51]}} on base 255, <span style="background-color:#333; color:#eee; width:3em; height:12pt; padding: 2px 1em 2px;"> dark gray </span>.
** {{PropertyView/fr|Ambient Color}}, la valeur par défaut est {{value|(0.2, 0.2, 0.2)}}, qui s'affiche sous la forme {{value|[51, 51, 51]}} sur la base 255, <span style="background-color:#333; color:#eee; width:3em; height:12pt; padding: 2px 1em 2px;"> dark gray </span>.
** {{PropertyView|Specular Color}}, it defaults to {{value|(0.0, 0.0, 0.0)}}, which is displayed as {{value|[0, 0, 0]}} on base 255, <span style="background-color:#000; color:#eee; width:3em; height:12pt; padding: 2px 1em 2px;"> black </span>.
** {{PropertyView/fr|Specular Color}}, la valeur par défaut est {{value|(0.0, 0.0, 0.0)}}, qui s'affiche sous la forme {{value|[0, 0, 0]}} sur la base 255, <span style="background-color:#000; color:#eee; width:3em; height:12pt; padding: 2px 1em 2px;"> black </span>.
** {{PropertyView|Emissive Color}}, it defaults to {{value|(0.0, 0.0, 0.0)}}, which is displayed as {{value|[0, 0, 0]}} on base 255, <span style="background-color:#000; color:#eee; width:3em; height:12pt; padding: 2px 1em 2px;"> black </span>.
** {{PropertyView/fr|Emissive Color}}, la valeur par défaut est {{value|(0.0, 0.0, 0.0)}}, qui s'affiche sous la forme {{value|[0, 0, 0]}} sur la base 255, <span style="background-color:#000; color:#eee; width:3em; height:12pt; padding: 2px 1em 2px;"> black </span>.
** {{PropertyView|Shininess}}, it defaults to {{Value|0.2}}
** {{PropertyView/fr|Shininess}}, la valeur par défaut est {{Value|0.2}}
** {{PropertyView|Transparency}}, it defaults to {{Value|0.0}}.
** {{PropertyView/fr|Transparency}}, la valeur par défaut est {{Value|0.0}}.


{{TitleProperty|Base}}
{{TitleProperty|Base}}


* {{PropertyView|Child View Provider|PersistentObject|Hidden}}:
* {{PropertyView/fr|Child View Provider|PersistentObject|Hidden}} :
* {{PropertyView|Material List|MaterialList|Hidden}}: {{Emphasis|(read-only)}} if individual materials have been added, they will be listed here.
* {{PropertyView/fr|Material List|MaterialList|Hidden}} : {{Emphasis|(lecture seulement)}} si des matériaux individuels ont été ajoutés, ils seront listés ici.
* {{PropertyView|Override Color List|ColorList|Hidden}}: {{Emphasis|(read-only)}} if the individual faces or edges of the link have been overridden they will be listed here.
* {{PropertyView/fr|Override Color List|ColorList|Hidden}} : {{Emphasis|(lecture seulement)}} si les faces ou arêtes individuelles du lien ont été remplacées, elles seront listées ici.
* {{PropertyView|Override Material List|BoolList|Hidden}}: {{Emphasis|(read-only)}} if the individual materials of the link have been overridden they will be listed here.
* {{PropertyView/fr|Override Material List|BoolList|Hidden}} : {{Emphasis|(lecture seulement)}} si les différents matériaux du lien ont été remplacés, ils seront listés ici.


{{TitleProperty|Display Options}}
{{TitleProperty|Options d'affichage}}


* {{PropertyView|Display Mode|Enumeration}}: {{Value|'Link'}} or {{Value|'ChildView'}}.
* {{PropertyView/fr|Display Mode|Enumeration}} : {{Value|'Link'}} ou {{Value|'ChildView'}}.
* {{PropertyView|Show In Tree|Bool}}: see the information in [[App_FeaturePython|App FeaturePython]].
* {{PropertyView/fr|Show In Tree|Bool}} : voir les informations dans [[App_FeaturePython/fr|App FeaturePython]].
* {{PropertyView|Visibility|Bool}}: see the information in [[App_FeaturePython|App FeaturePython]].
* {{PropertyView/fr|Visibility|Bool}} : voir les informations dans [[App_FeaturePython/fr|App FeaturePython]].


{{TitleProperty|Selection}}
{{TitleProperty|Selection}}


* {{PropertyView|On Top When Selected|Enumeration}}: see the information in [[App_FeaturePython|App FeaturePython]].
* {{PropertyView/fr|On Top When Selected|Enumeration}} : voir les informations dans [[App_FeaturePython/fr|App FeaturePython]].
* {{PropertyView|Selection Style|Enumeration}}: see the information in [[App_FeaturePython|App FeaturePython]].
* {{PropertyView/fr|Selection Style|Enumeration}} : voir les informations dans [[App_FeaturePython/fr|App FeaturePython]].


Il montrera en outre les propriétés de vue de l'original {{PropertyData|Linked Object}}.
Il montrera en outre les propriétés de vue de l'original {{PropertyData|Linked Object}}.


== Inheritance ==
<span id="Inheritance"></span>
== Héritage ==


An [[App_Link|App Link]] is formally an instance of the class {{incode|App::Link}}, whose parent is the basic [[App_DocumentObject|App DocumentObject]] ({{incode|App::DocumentObject}} class). It is a very low level object, which can be used with most other document objects.
Un [[App_Link/fr|App Link]] est formellement une instance de la classe {{incode|App::Link}}, dont le parent est le [[App_DocumentObject/fr|App DocumentObject]] (classe {{incode|App::DocumentObject}}). C'est un objet de très bas niveau, qui peut être utilisé avec la plupart des autres objets de document.


[[File:FreeCAD_core_objects.svg|800px]]
[[File:FreeCAD_core_objects.svg|800px]]


{{Caption|Simplified diagram of the relationships between the core objects in the program. The {{incode|App::Link}} object is a core component of the system, it does not depend on any workbench, but it can be used with most objects created in all workbenches.}}
{{Caption|Schéma simplifié des relations entre les objets principaux du programme. L'objet {{incode|App::Link}} est un composant central du système, il ne dépend d'aucun atelier, mais il peut être utilisé avec la plupart des objets créés dans tous les ateliers.}}


<span id="Scripting"></span>
== Script ==
== Script ==


{{Emphasis|See also:}} [[FreeCAD Scripting Basics|FreeCAD Scripting Basics]], and [[scripted objects|scripted objects]].
{{Emphasis|Voir aussi :}} [[FreeCAD_Scripting_Basics/fr|Débuter avec les scripts]] et [[Scripted_objects/fr|Objets créés par script]].


See [[Part_Feature|Part Feature]] for the general information.
Voir [[Part_Feature/fr|Part Feature]] pour plus d'informations.


An App Link is created with the {{incode|addObject()}} method of the document. It can define its {{PropertyData|Linked Object}} by overriding its {{incode|LinkedObject}} attribute, or by using its {{incode|setLink}} method.
Un lien d'application est créé avec la méthode {{incode|addObject()}} du document. Il peut définir son {{PropertyData/fr|Linked Object}} en remplaçant son attribut {{incode|LinkedObject}}, ou en utilisant sa méthode {{incode|setLink}}.
{{Code|code=
{{Code|code=
import FreeCAD as App
import FreeCAD as App
Line 246: Line 269:
}}
}}


The basic {{incode|App::Link}} doesn't have a Proxy object so it can't be fully used for sub-classing.
Le {{incode|App::Link}} de base n'a pas d'objet Proxy, il ne peut donc pas être entièrement utilisé pour la sous-classification.


Therefore, for [[Python|Python]] subclassing, you should create the {{incode|App::LinkPython}} object.
Par conséquent, pour la sous-classification [[Python/fr|Python]], vous devez créer l'objet {{incode|App::LinkPython}}.


{{Code|code=
{{Code|code=
Line 258: Line 281:
}}
}}


<span id="Further_reading"></span>
== Further reading ==
== Lecture complémentaire ==


The [[App_Link|App Link]] object was introduced after 2 years of development and prototyping. This component was thought and developed almost single-handedly by user {{Emphasis|realthunder}}. The motivations and design implementations behind this project are described in his GitHub page, [https://github.com/realthunder/FreeCAD_assembly3/wiki/Link Link]. In order to accomplish this feature, several core changes to FreeCAD were made; these were also extensively documented in [https://github.com/realthunder/FreeCAD_assembly3/wiki/Core-Changes Core-Changes].
L'objet [[App_Link/fr|App Link]] a été introduit après 2 ans de développement et de prototypage. Ce composant a été pensé et développé presque seul par l'utilisateur {{Emphasis|realthunder}}. Les motivations et les implémentations de conception derrière ce projet sont décrites dans sa page GitHub, [https://github.com/realthunder/FreeCAD_assembly3/wiki/Link Link]. Afin d'accomplir cette fonctionnalité, plusieurs modifications fondamentales de FreeCAD ont été apportées; ceux-ci ont également été largement documentés dans [https://github.com/realthunder/FreeCAD_assembly3/wiki/Core-Changes Core-Changes].


The App Link project started after the redesign of the [[PartDesign Workbench|PartDesign Workbench]] was complete in v0.17. The history of App Link can be traced to some essential forum threads:
Le projet App Link a démarré après que la refonte de l'[[PartDesign Workbench/fr|atelier PartDesign]] s'est terminée dans la v0.17. L'histoire d'App Link peut être retracée à certains fils de discussion essentiels du forum :
* [https://forum.freecadweb.org/viewtopic.php?f=19&t=21505 Why an object can only be inside one App::Part?] (March 2017)
* [https://forum.freecadweb.org/viewtopic.php?f=19&t=21505 Pourquoi un objet ne peut être que dans un seul App::Part?] (mars 2017)
* [https://forum.freecadweb.org/viewtopic.php?f=10&t=21586 Introducing App::Link/XLink] (March 2017)
* [https://forum.freecadweb.org/viewtopic.php?f=10&t=21586 Présentation de App::Link/XLink] (mars 2017)
* [https://forum.freecadweb.org/viewtopic.php?f=20&t=22216 Links] (May 2017)
* [https://forum.freecadweb.org/viewtopic.php?f=20&t=22216 Liens] (mai 2017)
* [https://forum.freecadweb.org/viewtopic.php?f=20&t=23015 Realthunder Link implementation: Architecture discussion] (June 2017)
* [https://forum.freecadweb.org/viewtopic.php?f=20&t=23015 Implémentation de Realthunder Link: discussion sur l'architecture] (juin 2017)
* [https://forum.freecadweb.org/viewtopic.php?f=17&t=23419 PR #876: Link, stage one, context aware selection] (July 2017)
* [https://forum.freecadweb.org/viewtopic.php?f=17&t=23419 PR # 876: Lien, première étape, sélection sensible au contexte] (juillet 2017)
* [https://forum.freecadweb.org/viewtopic.php?f=17&t=23626 Preview: Link, stage two, API groundwork] (July 2017)
* [https://forum.freecadweb.org/viewtopic.php?f=17&t=23626 Preview: Link, stage two, API groundwork] (juillet 2017)
* [https://forum.freecadweb.org/viewtopic.php?f=20&t=25712 Assembly3 preview] (December 2017)
* [https://forum.freecadweb.org/viewtopic.php?f=20&t=25712 Aperçu Assembly3] (décembre 2017)
* [https://forum.freecadweb.org/viewtopic.php?f=10&t=29542 Merging of my Link branch] (June 2018)
* [https://forum.freecadweb.org/viewtopic.php?f=10&t=29542 Fusion de ma branche Link] (juin 2018)


Finally, the pull request and merge happened:
Enfin, le pull request et le merge ont eu lieu :
* [https://forum.freecadweb.org/viewtopic.php?f=27&t=38621 App::Link: the big merge], old thread (July 2019), [https://github.com/FreeCAD/FreeCAD/pull/2350 pull request #2350] (the BIG merge), [https://github.com/realthunder/FreeCAD/tree/LinkMerge LinkMerge branch].
* [https://forum.freecadweb.org/viewtopic.php?f=27&t=38621 App::Link: the big merge], ancien fil de discussion (juillet 2019), [https://github.com/FreeCAD/FreeCAD/pull/2350 pull request #2350] (the BIG merge), [https://github.com/realthunder/FreeCAD/tree/LinkMerge LinkMerge branch].
* [https://forum.freecadweb.org/viewtopic.php?f=8&t=37757 App::Link: the big merge], main thread (July 2019)
* [https://forum.freecadweb.org/viewtopic.php?f=8&t=37757 App::Link: the big merge], fil de discussion principal (juillet 2019)
* [https://forum.freecadweb.org/viewtopic.php?p=329054#p329054 A simple path description of Link, 019, Link stage, Asm3, merge?] (August 2019)
* [https://forum.freecadweb.org/viewtopic.php?p=329054#p329054 A simple path description of Link, 019, Link stage, Asm3, merge?] (août 2019)
* [https://forum.freecadweb.org/viewtopic.php?f=17&t=39672 PR#2559: expose link and navigation actions], an introduction to the Link feature in 0.19 (September 2019).
* [https://forum.freecadweb.org/viewtopic.php?f=17&t=39672 PR#2559: expose link and navigation actions], une introduction à la fonctionnalité Lien dans la version 0.19 (septembre 2019).

D'autres "liens" divers à propos de Link incluent :
* [[Dynamic linked object]] - Un schéma avec Link et assemblys qui vise à réduire la duplication de la logique associée à l'assemblage telle que l'orientation, le positionnement ou le nombre d'instances.


{{Docnav/fr
|[[Std_Group/fr|Groupe]]
|[[Std_LinkMakeRelative/fr|Créer un sous-lien]]
|[[Std_Base|Std Base]]
|IconL=Std_Group.svg
|IconR=Std_LinkMakeRelative.svg
|IconC=Freecad.svg
}}


{{Std Base navi{{#translation:}}}}
{{Std Base navi{{#translation:}}}}

Latest revision as of 13:08, 18 November 2023

Std Créer un lien

Emplacement du menu
Aucun
Ateliers
Tous
Raccourci par défaut
Aucun
Introduit dans la version
0.19
Voir aussi
Std Part, Std Groupe, PartDesign Corps

Description

Std Créer un lien crée une classe App Link (App::Link), un type d'objet faisant référence ou lié à un autre objet, dans le même document ou dans un autre document. Il est spécialement conçu pour dupliquer efficacement un seul objet plusieurs fois, ce qui permet de créer des assemblages complexes à partir de sous-assemblages plus petits et de plusieurs composants réutilisables tels que des vis, des écrous et des éléments de fixation similaires.

L'objet App Link a été nouvellement introduit dans la v0.19. Auparavant, une simple duplication d'objets pouvait être réalisée avec Draft Cloner, mais c'est une solution moins efficace en raison de son implémentation qui crée essentiellement une copie de la forme interne de l'objet source. D'un autre côté, un lien fait directement référence à la forme d'origine, donc plus efficace en mémoire.

En lui-même, l'objet Link peut se comporter comme un tableau dupliquant son objet de base plusieurs fois. Cela peut être fait en définissant sa propriété DonnéesElement Count sur 1 ou plus. Cet objet "Réseau lien" peut également être créé avec les différents outils de tableau de l' atelier Draft, par exemple Draft Réseau orthogonal, Draft Réseau polaire, et Draft Réseau circulaire.

Lorsqu'ils sont utilisés avec l' atelier PartDesign, les liens sont destinés à être utilisés avec PartDesign Corps. Il est donc recommandé de définir VueDisplay Mode Body sur Tip pour sélectionner les caractéristiques du corps entier et non les fonctions individuelles. Pour créer des tableaux des PartDesign Features internes, utilisez PartDesign Répétition linéaire, PartDesign Répétition circulaire et PartDesign Transformation multiple.

L'outil Std Créer un lien n'est pas défini par un atelier particulier mais par le système de base. De ce fait il se trouve donc dans Barre d'outils Structure qui est disponible dans tous les ateliers. L'objet Link, utilisé en conjonction avec Std Part pour regrouper divers objets, constitue la base des ateliers Assembly3 et Assembly4.

Utilisation

Avec sélection :

  1. Sélectionnez un objet dans la Vue en arborescence ou la vue 3D pour lequel vous souhaitez créer un lien.
  2. Appuyez sur le bouton Std Créer un lien. L'objet crée a la même icône que l'objet d'origine mais a une flèche superposée indiquant qu'il s'agit d'un lien.

Sans sélection :

  1. Si aucun objet n'est sélectionné, appuyez sur le bouton Std Créer un lien pour créer un lien vide .
  2. Allez dans l'Éditeur de propriétés, puis cliquez sur la propriété DonnéesLinked Object pour ouvrir la Dialogue de sélection des liens pour choisir un objet, puis appuyez sur OK .
  3. Au lieu de choisir un objet entier dans la Vue en arborescence, vous pouvez également choisir des sous-éléments (sommets, arêtes ou faces) d'un seul objet dans la Vue 3D. Dans ce cas, le lien dupliquera uniquement ces sous-éléments et la superposition de flèches sera différente. Cela peut également être fait avec Std Créer un sous-lien.

(1) Un objet, (2) un lien vide, (3) un lien complet vers le premier objet (avec un matériau de remplacement), et (4) un lien vers seulement quelques sous-éléments de l'objet. Le lien vide n'est pas lié à l'objet réel et n'est donc pas affiché dans la vue 3D.

Utilisation : documents externes

  1. Commencez par un document contenant au moins un objet qui sera la source du lien.
  2. Ouvrez un nouveau document ou un document existant. Pour une manipulation plus facile, utilisez Std Arborescence Tous les documents pour afficher les deux documents dans la vue en arborescence. Avant de continuer, sauvegarder les deux documents. Le lien ne pourra pas trouver sa source et sa cible à moins que les deux documents ne soient enregistrés sur le disque.
  3. Dans le premier document, sélectionnez l'objet que vous souhaitez lier, puis changez d'onglet dans la Zone de vue principale pour passer au deuxième document.
  4. Appuyez sur Std Créer un lien. L'objet produit a la même icône que l'objet d'origine mais a une flèche superposée indique qu'il s'agit d'un lien provenant d'un document externe.

Remarques :

  • Lors de l'enregistrement du document avec le lien, il sera demandé également de sauvegarder le document source qui contient l'objet d'origine.
  • Pour inclure l'objet d'origine dans le document avec le lien, utilisez Std Importer des liens ou Std Importer tous les liens.
  • Std Créer un lien peut être utilisé sur un objet Link existant afin de créer un lien vers un lien qui résout finalement l'objet original dans le document source. Cela peut être réalisé avec Std Créer un sous-lien pour ne sélectionner que certains sous-éléments également.

(1, 2) Deux objets d'un document source liés à un document cible, (3) un lien vers le deuxième lien (avec un matériau de remplacement) et (4) un lien vers les sous-éléments du deuxième lien.

Glisser-déposer

Au lieu de changer d'onglet de document, vous pouvez créer des liens en effectuant une opération de glisser-déposer dans la Vue en arborescence: sélectionnez l'objet source dans le premier document, faites-le glisser, puis déposez-le dans le nom du second document tout en maintenant la touche Alt du clavier.

Le glisser-déposer entraîne différentes actions en fonction de la touche de modification enfoncée.

  • Sans touche de modification, il déplace simplement l'objet d'un document à l'autre; une flèche inclinée s'affiche dans le curseur.
  • Maintenir la touche Ctrl copie l'objet ; un signe plus est affiché dans le curseur.
  • Maintenir la touche Alt crée un lien ; une paire de maillons de chaîne est affichée dans le curseur.

Pour les modificateurs Ctrl et Alt, le glisser-déposer peut également être effectué avec un seul document. Autrement dit, faire glisser un objet et le déposer dans le même nom de document peut être utilisé pour créer plusieurs copies ou plusieurs liens vers celui-ci.

Groupes

Std Créer un lien peut être utilisé avec des objets Std Part afin de dupliquer rapidement des groupes d'objets positionnés dans l'espace, c'est-à-dire assemblages.

Lien créé à partir d'une Std Part ; les objets ne sont pas dupliqués mais ils sont répertoriés sous le conteneur d'origine et sous le conteneur Lien.

Un Std Groupe ne possède pas de propriété DonnéesPlacement, il ne peut donc pas contrôler la position des objets à l'intérieur de celui-ci. Cependant, lorsque Std Créer un lien est utilisé avec Std Groupe, le lien résultant se comporte essentiellement comme un Std Part et peut également être déplacé dans l'espace.

Lien créé à partir d'un Std Groupe ; les objets ne sont pas dupliqués mais ils sont répertoriés sous le conteneur d'origine et sous le conteneur Lien. Le lien (avec le matériau de remplacement) peut être déplacé dans l'espace, tout comme un Std Part.

Un lien vers un Std Part gardera la visibilité des objets synchronisée avec la Part d'origine. Donc si vous masquez un objet dans un lien, il sera masqué dans tous les liens et dans l'objet d'origine. D'un autre côté, un lien vers un Std Groupe permettra un contrôle indépendant des visibilités.

À gauche : Std Part avec deux objets et deux liens vers la pièce; la visibilité des objets est synchronisée. À droite : Std Group avec deux objets et deux liens vers le groupe. La visibilité des objets est contrôlée indépendamment dans chaque groupe.

Apparence de remplacement

Lorsqu'un lien est créé, par défaut VueOverride Material est false, donc le lien aura la même apparence que l'original DonnéesLinked Object.

Lorsque VueOverride Material est défini sur true, la propriété VueShape Material contrôlera désormais l'apparence du lien.

Quel que soit l'état de VueOverride Material, il est possible de définir individuellement l'apparence des sous-éléments (sommets, arêtes, faces) d'un lien.

  1. Sélectionnez le lien dans la Vue en arborescence. Ouvrez le menu contextuel (clic droit) et choisissez Override colors.
  2. Choisissez maintenant les sous-éléments individuels que vous voulez dans la Vue 3D, appuyez sur Edit et modifiez les propriétés, y compris la transparence.
  3. Pour supprimer les attributs personnalisés, sélectionnez les éléments dans la liste et appuyez sur Remove.
  4. Lorsque vous êtes satisfait du résultat, appuyez sur OK pour fermer la boîte de dialogue.

Remarque : à partir de la v0.19, la coloration des sous-éléments est soumise au Problème de dénomination topologique. Elle doit être effectuée comme dernière étape de modélisation lorsque le modèle n'est plus sensé être modifié.

(1) Un objet original, (2) un lien avec un matériau de remplacement et (3) un deuxième lien avec des sous-éléments modifiés individuels.

Réseau lien

Voir aussi : Draft Réseau orthogonal.

Lorsqu'un lien est créé, par défaut, son DonnéesElement Count est 0, donc un seul objet Link sera visible dans la Vue en arborescence.

Étant donné que DonnéesShow Element est true par défaut, lorsque DonnéesElement Count est défini sur 1 ou plus, automatiquement plus de liens seront créés sous le premier. Chaque nouveau lien peut être placé à la position souhaitée en modifiant sa propre propriété DonnéesPlacement.

De la même manière, chaque élément du réseau peut avoir sa propre apparence modifiée, soit par les propriétés VueOverride Material et VueShape Material, soit en utilisant le menu Override colors sur l'ensemble du réseau puis en sélectionnant des faces une par une. Ceci est décrit dans Apparence de remplacement.

(1) Objet d'origine, et (2, 3, 4) un réseau Lien avec trois éléments, chacun dans une position différente. Le premier lien a un matériau de remplacement et des faces transparentes, les deux autres ont des couleurs de face personnalisées.

Une fois que vous êtes satisfait de l'emplacement et des propriétés des éléments Liens dans le réseau, vous pouvez changer DonnéesShow Element en false afin de masquer les liens individuels dans la Vue en arborescence. Cela présente l'avantage de rendre le système plus réactif, en particulier si vous avez de nombreux objets dans le document.

Lors de la création de ce type de réseau de liens, vous devez placer chacun des éléments manuellement. Cependant, si vous souhaitez utiliser des modèles spécifiques pour placer les copies, vous pouvez utiliser les outils de réseau de l' atelier Draft, comme Draft Réseau orthogonal, Draft Réseau polaire et Draft Réseau circulaire; ces commandes peuvent créer des copies normales ou des copies de lien selon les options au moment de la création.

Visibilité

Lorsque DonnéesShow Element est true et que des éléments individuels sont répertoriés dans la Vue en arborescence dans un Réseau lien, chaque lien peut être affiché ou masqué par en appuyant sur la barre Espace du clavier.

Une autre façon de masquer les éléments individuels consiste à utiliser le menu Override colors.

  1. Sélectionnez le tableau, ouvrez le menu Override colors (clic droit).
  2. Dans la Vue 3D, choisissez n'importe quel sous-élément à partir de n'importe quel lien du réseau.
  3. Appuyez sur Hide. Une icône représentant un œil devrait apparaître, indiquant que cet élément a été masqué de la Vue 3D. L'objet s'affichera temporairement lorsque le curseur survolera l'icône .
  4. Vous pouvez cliquer sur OK pour confirmer l'opération et fermer la boîte de dialogue. Le lien restera caché même s'il est affiché comme visible dans la Vue en arborescence.

Boîte de dialogue des couleurs des éléments disponibles lors de l'ouverture du menu contextuel d'un objet Lien dans l'arborescence.

Si vous souhaitez restaurer la visibilité de cet élément du réseau, entrez à nouveau dans la boîte de dialogue, choisissez l'icône en forme d'œil, puis cliquez sur Remove pour supprimer l'état caché et cliquez sur OK pour confirmer et fermez la boîte de dialogue. L'élément sera à nouveau visible dans Vue 3D.

Lorsque le lien est pour un Std Part ou un Std Groupe, le menu Override colors fonctionne de la même manière qu'avec les réseaux. Il permet de contrôler la couleur de la face, la couleur de l'objet entier et la visibilité des objets du groupe.

Un Std Part contenant trois objets et un lien vers cette pièce ; dans le lien, (1) le premier objet est rendu invisible, (2) le deuxième objet a des sous-éléments avec des couleurs différentes, (3) le troisième objet entier a une couleur et un niveau de transparence différents.

Propriétés

Un App Link (classe App::Link) est dérivé de App DocumentObject (classe App::DocumentObject). Il a donc les propriétés de base de ce dernier comme DonnéesLabel et DonnéesLabel2.

Voici les propriétés spécifiques disponibles dans l'Éditeur de propriétés. Les propriétés masquées peuvent être affichées en utilisant la commande Afficher tout dans le menu contextuel de l'Éditeur de propriétés.

Données

Link

  • DonnéesLinked Object (XLink) : il indique l'objet source de App Link; il peut s'agir d'un objet entier ou d'un sous-élément de celui-ci (sommet, arête ou face).
  • DonnéesLink Transform (Bool) : la valeur par défaut est false, auquel cas le lien remplacera le propre emplacement de DonnéesLinked Object. S'il est défini sur true, le lien sera placé à la même position que DonnéesLinked Object, et son placement sera relatif à l'emplacement de DonnéesLinked Object. Ceci peut également être réalisé avec Std Créer un sous-lien.
  • DonnéesPlacement (Placement) : le placement du lien en coordonnées absolues.
  • Données (caché)Link Placement (Placement) : il s'agit d'un décalage appliqué au-dessus du DonnéesPlacement du DonnéesLinked Object. Cette propriété est normalement masquée mais apparaît si DonnéesLink Transform est défini sur true ; dans ce cas, DonnéesPlacement devient désormais masqué.
  • DonnéesShow Element (Bool): la valeur par défaut est true, auquel cas la Vue en arborescence affichera les copies de lien individuelles, tant que DonnéesElement Count est 1 ou plus grand.
  • DonnéesElement Count (IntegerConstraint) : la valeur par défaut est 0. S'il est 1 ou plus grand, le App Link se comportera comme un réseau et dupliquera le même DonnéesLinked Object plusieurs fois. Si DonnéesShow Elements est true, chaque élément du tableau sera affiché dans la Vue en arborescence et chacun pourra avoir son propre DonnéesPlacement modifié. Chaque copie de lien aura un nom basé sur le nom (Name) du lien, augmenté de _iN, où N est un nombre commençant par 0. Par exemple, avec un seul Link, les copies seront nommées Link_i0, Link_i1, Link_i2, etc.
  • DonnéesLink Execute (String) : nom de la fonction d'exécution qui s'exécutera pour cet objet Link particulier. La valeur par défaut est 'appLinkExecute'. Réglez-le sur 'None' pour le désactiver.
  • Données (caché)Colored Elements (LinkSubHidden) : liste des éléments Link dont la couleur a été remplacée.
  • DonnéesScale (Float) : la valeur par défaut est 1.0. C'est un facteur de mise à l'échelle uniforme dans chaque direction X, Y et Z. Par exemple, un cube de 2 mm x 2 mm x 2 mm, qui est mis à l'échelle par 2.0, donnera une forme aux dimensions 4 mm x 4 mm x 4 mm.
  • Données (caché)Scale Vector (Vector) : le facteur d'échelle pour chaque composant (X, Y, Z) pour tous les éléments Link lorsque DonnéesElement Count est 1 ou plus. Si DonnéesScale est différent de 1.0, cette même valeur sera utilisée dans les trois composants.
  • DonnéesScale List (VectorList) : le facteur d'échelle pour chaque élément Link.
  • Données (caché)Visibility List (BoolList) : (lecture seule) l'état de visibilité de chaque élément Link, soit true ou false.
  • Données (caché)Placement List (PlacementList) : (lecture seule) l'emplacement de chaque élément Link.
  • Données (caché)Element List (LinkList) : la liste des éléments Link.
  • Données (caché)_LinkTouched (Bool) :
  • Données (caché)_ChildCache (LinkList) :

Base

  • Données (caché)Proxy (PythonObject) : classe personnalisée associée à cet objet. Cela n'existe que pour la version Python. Voir Script.

L'objet App Link affichera en plus les propriétés de DonnéesLinked Object d'origine, ainsi l'Éditeur de propriétés peut avoir des groupes de propriétés comme Attachment, Box, Draft, etc.

Vues

Link

  • VueDraw Style (Enumeration) : il vaut par défaut None; il peut s'agir de Solid, Dashed, Dotted, Dashdot; définit le style des arêtes dans la Vue 3D.
  • VueLine Width (FloatConstraint) : un flotteur qui détermine la largeur en pixels des bords dans la Vue 3D. La valeur par défaut est 2.0.
  • VueOverride Material (Bool) : la valeur par défaut est false; s'il est défini sur true, il remplacera le matériau de DonnéesLinked Object et affichera les couleurs définies dans VueShape Material.
  • VuePoint Size (FloatConstraint) : similaire à VueLine Width, définit la taille des sommets.
  • VueSelectable (Bool) : s'il est true, l'objet peut être sélectionné avec le pointeur dans la Vue 3D. Sinon, l'objet ne peut pas être sélectionné tant que cette option n'est pas définie sur true.
  • VueShape Material (Material) : cette propriété comprend des sous-propriétés qui décrivent l'apparence de l'objet.
    • VueDiffuse Color, la valeur par défaut est (0.4, 1.0, 1.0), qui s'affiche sous la forme [102, 255, 255] sur la base 255, light blue ..
    • VueAmbient Color, la valeur par défaut est (0.2, 0.2, 0.2), qui s'affiche sous la forme [51, 51, 51] sur la base 255, dark gray .
    • VueSpecular Color, la valeur par défaut est (0.0, 0.0, 0.0), qui s'affiche sous la forme [0, 0, 0] sur la base 255, black .
    • VueEmissive Color, la valeur par défaut est (0.0, 0.0, 0.0), qui s'affiche sous la forme [0, 0, 0] sur la base 255, black .
    • VueShininess, la valeur par défaut est 0.2
    • VueTransparency, la valeur par défaut est 0.0.

Base

  • Vue (caché)Child View Provider (PersistentObject) :
  • Vue (caché)Material List (MaterialList) : (lecture seulement) si des matériaux individuels ont été ajoutés, ils seront listés ici.
  • Vue (caché)Override Color List (ColorList) : (lecture seulement) si les faces ou arêtes individuelles du lien ont été remplacées, elles seront listées ici.
  • Vue (caché)Override Material List (BoolList) : (lecture seulement) si les différents matériaux du lien ont été remplacés, ils seront listés ici.

Options d'affichage

  • VueDisplay Mode (Enumeration) : 'Link' ou 'ChildView'.
  • VueShow In Tree (Bool) : voir les informations dans App FeaturePython.
  • VueVisibility (Bool) : voir les informations dans App FeaturePython.

Selection

Il montrera en outre les propriétés de vue de l'original DonnéesLinked Object.

Héritage

Un App Link est formellement une instance de la classe App::Link, dont le parent est le App DocumentObject (classe App::DocumentObject). C'est un objet de très bas niveau, qui peut être utilisé avec la plupart des autres objets de document.

Schéma simplifié des relations entre les objets principaux du programme. L'objet App::Link est un composant central du système, il ne dépend d'aucun atelier, mais il peut être utilisé avec la plupart des objets créés dans tous les ateliers.

Script

Voir aussi : Débuter avec les scripts et Objets créés par script.

Voir Part Feature pour plus d'informations.

Un lien d'application est créé avec la méthode addObject() du document. Il peut définir son DonnéesLinked Object en remplaçant son attribut LinkedObject, ou en utilisant sa méthode setLink.

import FreeCAD as App

doc = App.newDocument()
bod1 = App.ActiveDocument.addObject("Part::Box", "Box")
bod2 = App.ActiveDocument.addObject("Part::Cylinder", "Cylinder")
bod1.Placement.Base = App.Vector(10, 0, 0)
bod2.Placement.Base = App.Vector(0, 10, 0)

obj1 = App.ActiveDocument.addObject("App::Link", "Link")
obj2 = App.ActiveDocument.addObject("App::Link", "Link")

obj1.LinkedObject = bod1
obj2.setLink(bod2)
obj1.Placement.Base = App.Vector(-10, -10, 0)
obj2.Placement.Base = App.Vector(10, -10, 0)
obj1.ViewObject.OverrideMaterial = True
App.ActiveDocument.recompute()

Le App::Link de base n'a pas d'objet Proxy, il ne peut donc pas être entièrement utilisé pour la sous-classification.

Par conséquent, pour la sous-classification Python, vous devez créer l'objet App::LinkPython.

import FreeCAD as App

doc = App.newDocument()
obj = App.ActiveDocument.addObject("App::LinkPython", "Link")
obj.Label = "Custom label"

Lecture complémentaire

L'objet App Link a été introduit après 2 ans de développement et de prototypage. Ce composant a été pensé et développé presque seul par l'utilisateur realthunder. Les motivations et les implémentations de conception derrière ce projet sont décrites dans sa page GitHub, Link. Afin d'accomplir cette fonctionnalité, plusieurs modifications fondamentales de FreeCAD ont été apportées; ceux-ci ont également été largement documentés dans Core-Changes.

Le projet App Link a démarré après que la refonte de l'atelier PartDesign s'est terminée dans la v0.17. L'histoire d'App Link peut être retracée à certains fils de discussion essentiels du forum :

Enfin, le pull request et le merge ont eu lieu :

D'autres "liens" divers à propos de Link incluent :

  • Dynamic linked object - Un schéma avec Link et assemblys qui vise à réduire la duplication de la logique associée à l'assemblage telle que l'orientation, le positionnement ou le nombre d'instances.