Sketcher ConstrainCoincident/de

Beschreibung
Erstellen einer deckungsgleichen Zwangsbedingung für das ausgewählte Element

Dieses Zwangsbedingungswerkzeug nimmt zwei Punkte als Argument und dient dazu, die beiden Punkte deckungsgleich zu machen. (Das bedeutet, sie wie einen Punkt zu setzen).

In der Praxis ist dieses Zwangsbedingungswerkzeug nützlich, wenn es z.B. zu einem Bruch in einem Profil kommt - wenn zwei Linien nahe beieinander enden und verbunden werden müssen - wird eine deckungsgleiche Zwangsbedingung ihrer Endpunkte die Lücke schließen.

Anwendung
Wie bereits erwähnt, benötigt dieses Werkzeug zwei Argumente - beide sind Punkte.
 * 1) Zunächst ist es notwendig, zwei verschiedene Punkte zu markieren. (Beachte, dass dies nicht funktioniert, wenn Du zum Beispiel versuchst, den Start- und Endpunkt der gleichen Linie auszuwählen.)
 * 2) Das Markieren eines Zeichnungselements erfolgt durch Bewegen der Maus über das Element und Anklicken der linken Maustaste.
 * 3) Ein markierter Eintrag ändert die Farbe in grün (Die Farbe kann mit ) bearbeitet werden.
 * 4) Nachfolgende Elemente können durch Wiederholung der obigen Prozedur(en) hervorgehoben werden HINWEIS: Es ist nicht erforderlich, eine spezielle Taste wie Strg gedrückt zu halten, um eine Mehrfachauswahl von Elementen in einer Zeichnung zu erreichen.
 * 5) Wenn Du zwei Punkte markiert hast, klickst Du mit der linken Maustaste auf die 'PunktaufPunkt' [[Image:Constraint_PointOnPoint.png|32px]] Zwangsbedingung, werden die beiden Punkte deckungsgleich und durch einen einzigen Punkt ersetzt.

HINWEIS: Um zwei Punkte deckungsgleich zu machen, muss FreeCAD unbedingt einen oder beide der ursprünglichen Punkte verschieben.

General scripting
The constraint can be created from macros and from the python console by using the following command:

where :
 * Sketch is a sketch object
 * LineFixed is the number of the line, that will not move by applying the constraint
 * PointOfLineFixed is the number of the vertex of the line LineFixed that has to fulfilled the constraint
 * LineMoving is the number of the line, that will move by applying the constraint
 * PointOfLineMoving is the number of the line LineMoving, that has to fulfilled the constraint

The main issue by using this function is to identify correctly the line number and the vertex number of the lines you want to process.

The next paragraph will explain you how to identify the numbering of a line and of a vertex of a line.

Identifying the numbering of a line
I have drawn three lines as shown in the following figure.



By moving the cursor of the mouse above the line you can see the line number at the bottom left of the FreeCAD windows, see next figure.



Unfortunately the numbering displayed on the FreeCAD windows start from 1 whereas the numbering of the line used to script start from 0: this means that you have to retrieve one each time you want to refer to a line.

Identifying the numbering of the vertices of a line
The vertices of one line can only have the value 1 or 2. (Don’t ask me, why the vertices numbering does not start from 0 …) The vertices are numbered according to their order of creation. To find out the order of their creation (If you have a lot of lines, you cannot remember which vertex you have created first), you just have to move the cursor of your mouse above the two vertices of one line, see following figure.



If you read e.g. 4 and 5, it means that the vertex 4 will be referenced by using the number 1 in the script command and the vertex 5 will be referenced by using the number 2 in the script command. Etc.

Example
Let us take the previous example of the three lines. The subsequent figure indicates the numbering of each line and their vertices according to the convention for scripting.



blue text = numbering of line, black text = numbering of vertices

The command

yields following result:



The command yields following result: