Bresenham mit konstanter Bahngeschwindigkeit ?

Gast #895931
Lesenswert?

Moin!

Vielleicht kann mir hier jemand mit dem Bresenham-Algoritmus 
weiterhelfen.
Es soll erreicht werden, dass die Bahngeschwindigkeit (am Beispiel einer 
Gerade also sqrt(dx^2 + dy^2)) konstant ist, um z.B. einen X/Y-Tisch mit 
einem wählbarem Vorschub zu bewegen. Bewege ich den Tisch nur parallel 
zur x- oder y-Achse, ist das ja kein Problem, pro Schleifendurchlauf 
macht nur genau ein Schrittmotor x Schritte, aber wie implementiert man 
das denn bei anderen Geraden, oder gar bei einem Kreis ?

Schönen Dank schonmal für Hinweise

Ja mann
Gast #895939
Lesenswert?

hmmm, klingt einfach aber gut; also wenn nur 1 Motor schreitet x warten 
zum nächsten Durchlauf, wenn beide schreiten sqrt(2)*x warten.
Apropos, funktioniert Bresenham eigentlich auch im 3 dimensionalen Raum 
?

Ja mann
Gast #946924
Lesenswert?

Ok, habe meine Implementierung fertig; funktioniert für Geraden im 
3-dimensionalen Raum sehr gut: Im OCR Interrupt wird geschaut welche der 
3 Achsen bewegt werden muss, je nachdem ob eine, zwei oder 3 Achsen 
bewegt werden, wird der nächste Interrupt nach x, sqrt(2) * x oder 
sqrt(3) * x wieder aufgerufen.

Danke für die Idee

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren