Oppervlakte driehoek benaderen

Moderators: dirkwb, Xilvo

Berichten: 14

Oppervlakte driehoek benaderen

Beste forumleden,

Mijn bedoeling is om de oppervlakte van een driehoek op een ellipsoïde uit te rekenen (benaderen) , maar ik wil makkelijker beginnen.

Hiervoor wil ik eerst de oppervlakte van een normale driehoek benaderen waarvan de coördinaten gegeven zijn.

Ik weet dat dit exact uitgerekend kan worden, maar het is de bedoeling dat ik het benader.

Mijn vraag luidt: Welke stappen moet je zetten om de oppervlakte van een (niet rechthoekig) driehoek te benaderen door middel van programmeren?

Groeten,

Bart

Berichten: 4.246

Re: Oppervlakte driehoek benaderen

Hoe makkelijk wil je het benaderen?
Quitters never win and winners never quit.

Berichten: 14

Re: Oppervlakte driehoek benaderen

Hoe bedoelt u met makkelijk benaderen?

Ik wil het door middel van iteraties proberen te benaderen en beschik over programmeervaardigheden, ik weet alleen niet welke formules ik moet gebruiken om het te benaderen.

Bart

Gebruikersavatar
Berichten: 2.609

Re: Oppervlakte driehoek benaderen

Normaal gezien stel je hiervoor de oppervlakte integraal op en los je die dan numeriek op.

Berichten: 14

Re: Oppervlakte driehoek benaderen

Ja, dat begrijp ik.

Hoe begin je met het integraal beschrijven van een driehoek?

Bart

Gebruikersavatar
Berichten: 4.320

Re: Oppervlakte driehoek benaderen

Ik brgrijp niet goed waarom het persé via itteratie moet.

Ik weet wel zo'n methode, bepaal de oppervlakte via de s-formule en trek dan de wortel met Newton Rapson.

Maar ik zie het waarom niet goed.
In de wiskunde zijn er geen Koninklijke wegen Majesteit.

Berichten: 14

Re: Oppervlakte driehoek benaderen

Ik wil het door middel van iteraties doen omdat ik het later op een bol en later nog op een sferoïde wil toepassen. Dit kan geloof ik niet exact.

Gebruikersavatar
Berichten: 2.609

Re: Oppervlakte driehoek benaderen

Ik weet niet hoe jouw 'driehoek' eruit ziet. Misschien moet je eens je exacte probleem geven. Onder welke vorm ken je de figuur waarvan je de oppervlakte wil bepalen?

Berichten: 14

Re: Oppervlakte driehoek benaderen

Eigenlijk zijn het 3 vragen:

Hoe bereken je door middel van iteraties de oppervlakte van een driehoek.

Ik noem wat coördinaten:

(0,0)

(5,2)

(4,6)

Hoe bereken je door middel van iteraties de oppervlakte van een driehoek op een bol.

Coördinaten zijn niet gegeven, de breedtegraad en de lengtegraad.

Hoe bereken je door middel van iteraties de oppervlakte van een driehoek op een sferoïde (ellipsoïde).

Coördinaten zijn niet gegeven, de breedtegraad en de lengtegraad.

Bart

Gebruikersavatar
Berichten: 2.609

Re: Oppervlakte driehoek benaderen

Bartemis schreef:Eigenlijk zijn het 3 vragen:

Hoe bereken je door middel van iteraties de oppervlakte van een driehoek.

Ik noem wat coördinaten:

(0,0)

(5,2)

(4,6)
De enige manier die ik zo meteen kan bedenken is via de integraal. Als je die numeriek oplost dan ben je eigenlijk ook aan het itereren. Zie bijvoorbeeld codevoorbeelden bij de
Hoe bereken je door middel van iteraties de oppervlakte van een driehoek op een bol.

Coördinaten zijn niet gegeven, de breedtegraad en de lengtegraad.

Hoe bereken je door middel van iteraties de oppervlakte van een driehoek op een sferoïde (ellipsoïde).

Coördinaten zijn niet gegeven, de breedtegraad en de lengtegraad.
Hier zal je ook een integraal moeten uitrekenen, maar dat zal dan in bolcoördinaten moeten.

Intuïtief kan je dan zeggen dat je het oppervlak onderverdeelt in kleine vlakke figuren waarvan je wel makkelijk de oppervlakte kan berekenen. Je trekt een soort rooster over het oppervlak. En als je de oppervlakte van alle cellen optelt krijg je een benadering voor de echte oppervlakte. Dat kan je bekomen door een parametervoorstelling van het oppervlak te berekenen in een bepaald aantal punten.

Een cirkel in poolcoordinaten krijg je bijvoorbeeld door de straal r vast te houden en de hoek teta te laten lopen van 0 tot 2pi. Dat is echter continu. Je kan de hoek laten variëren in stapjes van een paar graden en de cirkel dus benaderen door een aantal punten. Als je die punten dan per 4 samenneemt kan je de oppervlakte benaderen door de som van rechthoeken.

Berichten: 14

Re: Oppervlakte driehoek benaderen

Heel erg bedankt! Ik ga aan de slag!

Ik moet nog even uitvinden hoe ik dit ga doen voor een driehoek, maar ik ga het proberen.

Bart

Gebruikersavatar
Berichten: 2.609

Re: Oppervlakte driehoek benaderen

Ik moet nog even uitvinden hoe ik dit ga doen voor een driehoek, maar ik ga het proberen.
Ik ben zelf vorig semester de volgende formules tegengekomen om te interpoleren in een driehoek. Ik vind het wel een elegante manier :)

Beschouw je 3 punten als vectoren A,B en C.

Een punt P ligt op de rechte tussen A en C als:

P = A + s*(C-A). Als s = 0, dan P = A en als s = 1, dan P = C. Dus voor s in [0,1] zit je in het lijnstuk AC.

Zelfde voor lijnstuk BC.

Je kan de parameter laten variëren in stappen van grootte h. Je kan dan de oppervlakte benaderen door de onderstellen dat je in elke stap een balk vormt met hoogte h en breedte de afstand tussen de 2 punten. Hoe kleiner de stap h, hoe beter de benadering wordt. (Zie de analogie met Riemann sommen.)

Op een sfeer/ellipsoïde wordt het wel ingewikkelder, maar ik denk dat daar hetzelfde basis idee ook wel werkt.

Berichten: 14

Re: Oppervlakte driehoek benaderen

Ik probeer een driehoek te benaderen, maar het werkt niet echt als ik de precisie wil verhogen:

Code: Selecteer alles

hoogte = 100;

breedte = 3;

helling = hoogte/breedte;

precisie = 5;

biteraties = breedte/precisie;

opp = hoogte*breedte/2;

som = 0;

for(i=0;i<precisie;i++)

{

som += i*helling*biteraties;

}

Gebruikersavatar
Berichten: 2.609

Re: Oppervlakte driehoek benaderen

som += i*helling*biteraties = i*(hoogte/breedte)*(breedte/precisie) = i* hoogte/precisie;

Die code lijkt mij niks zinnigs te doen.

Kijk eens naar de uitleg in mijn vorige bericht.

Misschien dat deze afbeelding het duidelijker maakt:
driehoek.png
driehoek.png (10.7 KiB) 985 keer bekeken
Punten B en C worden apart genomen en ik ga in stapjes via de driehoek naar A. in elke stap bepaal ik een rechthoek. Met als hoogte de stapgrootte. Als je de oppervlaktes van die rechthoeken optelt dan krijg je een benadering voor de oppervlakte van de driehoek. Hoe kleiner de stapgrootte, hoe dichter bij de echte oppervlakte je komt.

Berichten: 14

Re: Oppervlakte driehoek benaderen

Aha! Zo werkt het

Maar wat zijn dan de formules om die punten uit te rekenen?

Reageer