Springen naar inhoud

Wat moet ik leren om de wiskunde van Bézier curves te snappen?


  • Log in om te kunnen reageren

#1

nicocin

    nicocin


  • 0 - 25 berichten
  • 1 berichten
  • Gebruiker

Geplaatst op 05 oktober 2018 - 07:43

Beste forumleden,

 

Achtergrond

Ik ben bezig met het maken van een soort twee-dimensionale tv-lift. Twee stappenmotoren verzorgen de beweging, en die worden aangestuurd vanuit een Arduino Uno.
Het is de bedoeling dat ik een 'pad' omschrijf als een Bézier curve (met meer dan 5 controlepunten), die door de lift gevolgd wordt.

Daarnaast wil ik de snelheid langs het pad van de lift kunnen bepalen, bijvoorbeeld door een tweening/easing functie die op basis van tijd de afstand of snelheid bepaald.

 

De hardware voor de lift is ondertussen in vergevorderd stadium, maar ik ben nog aan het worstelen met de software die op de Arduino moet draaien. (Wat enigzins opmerkelijk is aangezien ik veel programmeer ervaring heb, en geen hardware en elektrotechniek ervaring...)

 

Uitdaging

Om een programma te kunnen schrijven dat twee motoren zo aanstuurt dat de lift niet alleen de curve volgt, maar dat doet met een snelheid die wordt bepaald door een functie (en dat doet op een 16mHz processor met maar 2k geheugen, zonder dat de motoren gaan 'haperen'), moet ik de wiskunde achter Bézier curves denk ik écht snappen.

Gelukkig is er online wel het één en ander te vinden over Bézier curves. Helaas mis ik de basiskennis om die informatie goed te kunnen begrijpen. Ik vermoed dat unit 4 en unit 5 van http://pages.mtu.edu/~shene/COURSES/cs3621/NOTES/notes.html de meeste antwoorden kunnen geven, maar ik snap de gegeven formules, en vooral de conclusies die als een volstrekte vanzelfsprekendheid worden gedeponeerd niet.

 

Vraag

Wat zijn de logische stappen om te nemen om de benodigde kennis te verkrijgen voor het begrijpen van de wiskunde van Bézier curves? 

 

Ik ben natuurlijk erg blij met links naar relevante cursussen en artikelen (binnen en buiten dit forum), maar ook met simpelweg een lijstje onderwerpen/zoektermen die op een logische manier opbouwen naar dit onderwerp.
Bijvoorbeeld:

Is dit allemaal meetkunde, of moet ik ook een beginnerscursus algebra volgen?
Moet ik eerst wat lezen over parametrische curves in het algemeen, voor ik naar Bézier curves kijk, of zou dat juist alleen verwarring scheppen?

Wat is de terminologie die hoort bij functies die werken op coordinaten (x,y) in plaats van enkele waarden? (ik dacht even dat dit misschien iets met vectors te maken had, maar dat lijkt niet zo te zijn...)

 

p.s.

Ik ben niet op zoek naar praktische oplossingen voor wat ik omschrijf bij achtergrond en uitdaging.
Pragmatische (goed-genoeg) oplossingen gaan mij wel lukken met m'n gebrekkige wiskundige begrip. Bijvoorbeeld door de curve op te delen in 1000 lineaire segmenten en vervolgens alle calculaties te doen op basis van die polygonale lijn, in plaats van de daadwerkelijke curve.

Ik wil dit echter zo goed/elegant mogelijk doen, én volledig begrijpen wat ik doe en waarom. Ik wil dus echt de benodigde kennis gaan verzamelen waarmee ik uiteindelijk zelf mijn uitdaging te lijf kan gaan.

Veranderd door nicocin, 05 oktober 2018 - 07:51


Dit forum kan gratis blijven vanwege banners als deze. Door te registeren zal de onderstaande banner overigens verdwijnen.

#2

mathfreak

    mathfreak


  • >1k berichten
  • 3123 berichten
  • Pluimdrager

Geplaatst op 05 oktober 2018 - 18:29

Misschien helpt dit je wat verder: https://nl.wikipedia...i/BĂ©zierkromme

"Mathematics is a gigantic intellectual construction, very difficult, if not impossible, to view in its entirety." Armand Borel





0 gebruiker(s) lezen dit onderwerp

0 leden, 0 bezoekers, 0 anonieme gebruikers

Ook adverteren op onze website? Lees hier meer!

Gesponsorde vacatures

Vacatures