beim graph bräuchte ich einen toggle der grid snapping aktiviert. alle vorhandenen nodes soll da bleiben wo sie sind, erst wenn man ein node bewegt soll es greifen die grid-größe kannst du selbst entscheiden, am besten ein sinnvoller wert --- Gebaut. Zwei Dinge, die weder oben stehen noch aus dem Commit hervorgehen: **Die Rastergröße ist 24 px – dieselbe Zahl, die den Hintergrund zeichnet** (`GRID_STEP`). Es gibt also keinen zweiten, unsichtbaren Raster: was einrastet, rastet auf einer Linie ein, die man sieht. Bei starkem Herauszoomen blendet das Raster aus (`MIN_GRID_STEP`), der Snap-Schritt bleibt aber derselbe – er hängt an Weltkoordinaten, nicht am Zoom. **Bei Mehrfachauswahl richtet sich jeder Node für sich aus** (Nachtrag des Users während der Arbeit). Die erste Fassung verschob die Auswahl um *einen* gemeinsamen Versatz, was ihre alten, krummen Abstände mitschleppte: nur der Ankerknoten landete auf einer Linie. Jetzt ist `dragOffset` pro Node definiert – jeder bekommt seinen eigenen Versatz, die Auswahl fluchtet danach wirklich. Der Preis ist bewusst: die relativen Abstände innerhalb der Auswahl können sich um bis zu einen halben Schritt ändern.