Te algorytmy Bresenhama (zarówno dla odcinków prostych, jak i krzywych) nie będą dobre do wyznaczania wektorów ruchów (one są do reseryzacji - czyli znajdowania pikseli spełniających określone warunki). Zdecydowanie polecam algorytmy interpolacji liniowej, kołowej, helikalnej itd (wymyślone już od dawna).prokopcio pisze:...
Tutaj odrazu Ci proponuję, żebyś szczegółowo przyjrzał się algorytmowi Bresenhama, który jest bardzo prosty i na podstawie niego łatwo znajdziesz poszczególne kroki jakie trzeba wykonać aby "przejechać" z punktu do punktu. Reszta zależy tylko od Twojej wyobraźni.
Najprostrzy algorytm interpolacji liniowej wygląda tak. Liczenie następnego punktu następuje względem poprzedniego o interwał ruchu w danej osi.
Dla obrabiarki 3-osiowej będzie to:
X(i+1) = X(i) + λxi,
Y(i+1) = Y(i) + λyi,
Z(i+1) = Z(i) + λzi.
gdzie: λxi = λL/L(Xi-Xo), λyi = λL/L(Yi-Yo), λzi = λL/L(Zi-Zo),
L = długość wektora ruchu,
λL = posuw dotychczasowy,
Xi,Yi,Zi - punkt aktualny,
Xo,Yo,Zo - punkt początkowy ruchu.
Pozdrawiam.