Springen naar inhoud

lijn door punten, met zo'n klein mogelijke hoek


  • Log in om te kunnen reageren

#1

DePurpereWolf

    DePurpereWolf


  • >5k berichten
  • 9240 berichten
  • VIP

Geplaatst op 21 augustus 2012 - 12:00

Stel ik heb een aantal punten (coordinaten) en ik wil daar een lijn door trekken. De punten liggen natuurlijk niet allemaal op een lijn.
Verder wil ik dat de lijn die ik trek zo min mogelijk wordt verbuigd. Ofwel, met zo'n groot mogelijke radius in bochten (klein mogelijke hoek)
Hoe zou ik dit oplossen?
Is er een methode om de coordinaten in te voeren, en er een curve uit te krijgen?

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

#2

Michel Uphoff

    Michel Uphoff


  • >5k berichten
  • 5382 berichten
  • Moderator

Geplaatst op 21 augustus 2012 - 12:14

In Excel is dat met 'vloeiende lijnen' eenvoudig te doen, mogelijk komt dit in de buurt van wat jij wilt:

graphtest.jpg
Motus inter corpora relativus tantum est.

#3

Xenion

    Xenion


  • >1k berichten
  • 2606 berichten
  • Moderator

Geplaatst op 21 augustus 2012 - 12:21

Cubic spline interpolatie geeft meestal wel mooie resultaten.

#4

Marko

    Marko


  • >5k berichten
  • 8935 berichten
  • VIP

Geplaatst op 21 augustus 2012 - 12:48

Misschien even de randvoorwaarden helder krijgen. Is het een voorwaarde dat aan iedere x-coördinaat ten hoogste 1 y-coördinaat wordt gekoppeld?

Cetero censeo Senseo non esse bibendum


#5

DePurpereWolf

    DePurpereWolf


  • >5k berichten
  • 9240 berichten
  • VIP

Geplaatst op 22 augustus 2012 - 11:29

Het is zo'n beetje als Michel laat zien, al weet ik natuurlijk niet hoe excel dat doet.

Deze website legt 'spline' al wat beter uit. Vooral de foto's aan de rechtse kant.

http://en.wikipedia....ne_(mathematics)

Veranderd door DePurpereWolf, 23 augustus 2012 - 09:32
heb de website toegevoegd...


#6

Xenion

    Xenion


  • >1k berichten
  • 2606 berichten
  • Moderator

Geplaatst op 22 augustus 2012 - 12:10

Het was niet echt mijn bedoeling om een uitleg ervan te geven :) Ik wou je gewoon verwijzen naar de methode en een implementatie ervan die je snel zou kunnen uittesten (ervan uitgaande dat je MATLAB hebt) om te kijken of het is wat je nodig hebt.

Het idee achter splines is dat je de graad van de interpolatieveelterm beperkt. Lagrange en dergelijke maken een polynoom die door alle punten gaat, maar de graad wordt dan hoger met het aantal spilpunten. Dat levert oscillaties op tussen de punten en dat is meestal niet zo'n realistisch beeld van de echte functie.

De splines maken een stuksgewijze benadering. Je kan bv onderstellen dat de functie lineair varieert tussen de punten (prentje 2 van Michel).

Cubic splines onderstellen dat de functie (tussen 2 punten) een derdegraads veelterm is en zorgt dat de functiewaarde en de 1e en 2e afgeleide van opeenvolgende stukken gelijk zijn in het gemeenschappelijke spilpunt. Zo krijg je een vloeiende lijn ;)
Dat zou prentje 1 van Michel kunnen zijn, deze methode is wel populair geloof ik.

#7

Michel Uphoff

    Michel Uphoff


  • >5k berichten
  • 5382 berichten
  • Moderator

Geplaatst op 22 augustus 2012 - 12:22

al weet ik natuurlijk niet hoe excel dat doet.


Dat is een vraag die meerderen zich gesteld hebben, het blijkt een Bezier curve te zijn. Zie attached excel sheet met de standaard Excel smoothing en de daarbij passende formule.

Bijgevoegde Bestanden

Motus inter corpora relativus tantum est.





0 gebruiker(s) lezen dit onderwerp

0 leden, 0 bezoekers, 0 anonieme gebruikers

Ook adverteren op onze website? Lees hier meer!

Gesponsorde vacatures

Vacatures