|
Emplacement du menu |
---|
Sketch → Contraintes d'esquisse → contrainte coïncidence |
Ateliers |
Sketcher, PartDesign |
Raccourci par défaut |
C |
Voir aussi |
Constraint Lock, Constraint Point onto Object |
"Créer une contrainte coïncidente sur l'élément sélectionné"
Cet outil de contrainte prend deux points comme arguments, et sert à en faire deux points coïncident (ce qui signifie les superposer). En termes pratiques cet outil de contrainte est utile quand il y a une rupture dans un profil, par exemple :
Cet outil de contrainte prend deux points comme argument et sert à faire coïncider les deux points. (Dans le but de faire comme un seul point).
En pratique, cet outil est utile lorsqu'il y a une rupture dans un profil par exemple - où deux lignes se terminent l'une près de l'autre et doivent être jointes - une contrainte coïncidente sur leurs points d'extrémité comblera l'écart.
Comme indiqué ci-dessus, cet outil prend deux arguments - les deux, sont des points.
NOTE : Afin de faire deux points coïncidents, FreeCAD doit nécessairement déplacer un, ou les deux points d'origine. Il est parfois difficile de sélectionner les deux points parce que trop proche, la fenêtre de saisie permet de faire une sélection multiple
NOTE: In order to make two points coincident, FreeCAD must necessarily move one, or both, of the original points.
Les contraintes peuvent être créées à partir de macros et de la console python en utilisant la fonction suivante:
Sketch.addConstraint(Sketcher.Constraint('Coincident',LineFixed,PointOfLineFixed,LineMoving,PointOfLineMoving))
où :* Esquisse est un objet d'esquisse* LineFixed est le numéro de la ligne, qui ne bougera pas en appliquant la contrainte* PointOfLineFixed est le numéro du sommet de la ligne LineFixed devant remplir la contrainte* LineMoving est le numéro de la ligne, qui se déplacera en appliquant la contrainte* PointOfLineMoving est le numéro de la ligne LineMoving, qui doit remplir la contrainte
Le problème principal en utilisant cette fonction est d'identifier correctement le numéro de ligne et le nombre de vertex des lignes que vous voulez traiter.
Le paragraphe suivant vous expliquera comment identifier la numérotation d'une ligne et d'un sommet d'une ligne.
J'ai dessiné trois lignes comme indiqué dans la figure suivante.
En déplaçant le curseur de la souris au-dessus de la ligne, vous pouvez voir le numéro de la ligne en bas à gauche des fenêtres FreeCAD, voir la figure suivante.
Malheureusement la numérotation affichée sur les fenêtres de FreeCAD commence à partir de 1 alors que la numérotation de la ligne utilisée pour le script commence à partir de 0: cela signifie que vous devez en récupérer une chaque fois que vous voulez faire référence à une ligne.
Les sommets d'une ligne ne peuvent avoir que la valeur 1 ou 2. (Ne me demandez pas pourquoi les sommets ne partent pas de 0 ...) Les sommets sont numérotés selon leur ordre de création.Pour connaître l'ordre de leur création (Si vous avez beaucoup de lignes, vous ne pouvez pas vous souvenir du sommet que vous avez créé en premier), il vous suffit de déplacer le curseur de votre souris au-dessus des deux sommets d'une ligne.
Si vous lisez par exemple 4 et 5, cela signifie que le sommet 4 sera référencé en utilisant le numéro 1 dans la commande de script et le sommet 5 sera référencé en utilisant le numéro 2 dans la commande de script. Etc
Prenons l'exemple précédent des trois lignes. La figure suivante indique la numérotation de chaque ligne et de leurs sommets selon la convention de script.
texte bleu = numérotation de la ligne, texte noir = numérotation des sommets
les commandes
Sketch.addConstraint(Sketcher.Constraint('Coincident',1,2,2,1))
donne le résultat suivant:
les commandes
Sketch.addConstraint(Sketcher.Constraint('Coincident',0,2,2,2))
donne le résultat suivant: