Forum: Platinen KiCad5: Bauteil verschieben, Cursorposition zentrieren?


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Markus M. (adrock)


Bewertung
1 lesenswert
nicht lesenswert
Hi,

versuche mich gerade mit einem einfachen Layout in KiCad5 (nightly). 
Eigentlich funktioniert es ganz gut, einige Sachen sind 
gewühnungsbedürftig, aber eines nervt jetzt beim Layout:

Im pcbnew möchte ich Bauelemente "schön" ausrichten. Wie kann ich es 
erreichen, dass das Fadenkreuz des Cursors in der MITTE des Bauteils 
steht beim Verschieben? (Damit die Koordinaten stimmen bzw. das Raster 
richtig rastet)

Das aktuelle Verhalten kommt mir nicht-deterministisch vor:

Manchmal springt das Fadenkreuz/Cursor direkt nach dem Selektieren 
(entweder durch Linksklick und Ziehen an einer geeigneten Stelle oder 
durch den Selektionsrahmen und "Move" Befehl) in die Mitte des Bauteils, 
manchmal aber auch nicht. Das hängt auch nicht vom Bauteil selbst ab, 
selbst gleiche Bauteile verhalten sich unterschiedlich.

Kann man nach der Selektion mit irgendeinem Tastenkürzel bestimmen, in 
welche Ecker/Mitte des Bauteils der Cursor springen soll?

Gruß
Markus

: Bearbeitet durch User
von Guido B. (guido-b)


Bewertung
0 lesenswert
nicht lesenswert
Markus M. schrieb:
> Kann man nach der Selektion mit irgendeinem Tastenkürzel bestimmen, in
> welche Ecker/Mitte des Bauteils der Cursor springen soll?

Nein, das wird beim Entwurf des Footprints festgelegt. Im Zweifel
hilft nur ein neuer Entwurf.

von Hans (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Markus M. schrieb:
> (Damit die Koordinaten stimmen bzw. das Raster
> richtig rastet)

Dabei sollte man noch anmerken, dass du auch einen Pin selektieren 
kannst... also nicht den pin alleine (geht auch), sondern das Bauteil 
selektieren per klick auf einen pin.

dann ist die Pin-Mitte deine Referenz die ans Raster ausgerichtet wird.

kann ganz praktisch sein... oder auch lästig... je nachdem was man 
gerade bezweckt :)

73

von Markus M. (adrock)


Bewertung
0 lesenswert
nicht lesenswert
Guido B. schrieb:
> Markus M. schrieb:
>> Kann man nach der Selektion mit irgendeinem Tastenkürzel bestimmen, in
>> welche Ecker/Mitte des Bauteils der Cursor springen soll?
>
> Nein, das wird beim Entwurf des Footprints festgelegt. Im Zweifel
> hilft nur ein neuer Entwurf.

Für den selben Footprint (z.B. Widerstand, 0805, aus der 
Standardbibliothek), springt der Cursor mal in die Mitte des Footprints, 
mal nicht. Somit hängt es nicht mit dem Footprint zusammen.

Es scheint abhängig zu sein WO man klickt und evtl. auch von der 
Vergrößerung. Aber wie gesagt, ich konnte es bis jetzt noch nicht 
nachvollziehen.

: Bearbeitet durch User
von jz23 (Gast)


Bewertung
1 lesenswert
nicht lesenswert
Der Cursor springt entweder in die Mitte des Bauteils oder in die Mitte 
des Pins - je nachdem, was näher liegt.

von Markus M. (adrock)


Bewertung
0 lesenswert
nicht lesenswert
jz23 schrieb:
> Der Cursor springt entweder in die Mitte des Bauteils oder in die Mitte
> des Pins - je nachdem, was näher liegt.

Ah ja, das erklärt das Verhalten. Bei den SMD 0805 Widerständen liegt 
das alles sehr nah zusammen.

Danke!

von Bernd W. (berndwiebus) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Hallo Markus.

Markus M. schrieb:

> Im pcbnew möchte ich Bauelemente "schön" ausrichten. Wie kann ich es
> erreichen, dass das Fadenkreuz des Cursors in der MITTE des Bauteils
> steht beim Verschieben? (Damit die Koordinaten stimmen bzw. das Raster
> richtig rastet)

Ich habe keinen aktuellen Build, darum beschreibe ich hier mal das 
übliche Verhalten, so wie ich es von kiCad kenne.
Mag sein, dass sich jemand aktuell etwas anderes überlegt hat, oder dass 
es ein Bug ist.

1) Rechteck aufziehen und Linksklick ist etwas ganz anderes als 
Rechtsklick und Move oder Drag.

Im ersteren Fall definierst Du eine Gruppe, die Du verschiebst, und der 
Ankerpunkt ist die letzte Ecke des zur Gruppierung aufgezogenen 
Rechtecks.
Du bekommst ja dann auch ein Auswahlmenue, was alles zur Gruppe gehören 
soll.

Im zweiten Fall selektierst Du ein Bauteil, und das wird an dem 
Ankerpunkt angefasst, der im Footprint definiert wurde.
Wie aber der Ankerpunkt im Footprint definiert wurde, dazu gibt es 
Standards:
a) Bei THT Bauteilen ist es Pad1
b) Bei SMD Bauteilen ist es das Symmetriezentrum des Bauteils, oder 
etwas, was diesem sehr nahekommt.

Diese Standards sind vermutlich irgendwo in IPC definiert oder aber 
"altes Brauchtum", und ich gebe zu, sie sind hinterfragbar.
Das mit dem Symmetriezentrum bei SMD find ich ganz brauchbar (auch in 
Bezug auf Pick and Place Daten für automatische Bestückung), das mit Pin 
1 bei THT eher nicht.

Aber grundsätzlich kannst Du bei KiCad den Ankerpunkt eines Footprints 
dahin packen, wo Du meinst, dass es für Dich am sinnvollsten ist. Das 
machst Du im Footprinteditor mit dem Ankersymbol aus der rechten 
Buttonleiste.

2) KiCad erlaubt nicht nur Move und Drag bei Footprints, sondern auch 
für einzelne Pads.

Wenn du etwas flott bist, hast Du möglicherweise versehentlich ein Pad 
statt des Footprints angewählt, wenn alles im Fangbereich des cursors 
war.

> Kann man nach der Selektion mit irgendeinem Tastenkürzel bestimmen, in
> welche Ecker/Mitte des Bauteils der Cursor springen soll?

In Version Application: pcbnew
Version: (2017-06-16 revision dab73e1)-master, release build unter Linux 
nicht, und in
der Application: pcbnew Version: (5.0.0-rc2-dev-293-gfb882633b), release 
build unter Windows/Wine auch nicht.

3) Zum Raster: Der Ankerpunkt setzt sich immer auf einen Rasterpunkt des 
gewählten aktuellen Rasters. Wenn die Rasterpunkte für die Pads feiner 
sind...kein Thema. Die werden in diesem feineren Raster gesetzt.

Wenn du jetzt Pads hast, die neben dem aktuellen Raster liegen, oder 
Leiterbahnenden, von einer Phase des Routens, wo Du in einem feineren 
Raster gearbeitet hast, und die jetzt ebenfalls nicht im Raster liegen: 
Kein Problem. Du kannst diese Punkte beim Routen trozdem fassen.

KiCad arbeitet intern immer mit dem feinstmöglichen Raster. Das ist 
feiner, als die meisten Leiterplattenfabriken fertigen können, und das 
angezeigte Raster wird nur zum Plazieren der Ankerpunkte verwendet und 
zum Plazieren der Knick- und Endpunkte beim Routen, sofern eine 
Luftlinie nicht zwischen den Rasterpunkten landet und automatisch eine 
feinere Plazierung erzwingt.
Ansonsten ist das Raster eher als Vorschlag und Orientierungshilfe zu 
betrachten. ;O)

Wenn man von anderen systemen kommt, erwartet man möglicherweise nicht 
immer solch komfortables Verhalten und gerät in Panik, wenn was nicht im 
Raster ist. ;O)

Zugegeben: Eeschema ist da deutlich zickiger. Aber das ist ja auch ein 
Schaltplan, der ist abstrakt und man ist nicht an Abmessungen der realen 
Welt gebunden.

Ich hoffe, das bringt etwas Licht in das scheinbar merkwürdige 
Verhalten.

Mit freundlichem Gruß: Bernd wiebus alias dl1eic
http://www.l02.de

: Bearbeitet durch User

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.