Oppervlakte driehoek benaderen
-
- 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
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
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
- 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
Hoe begin je met het integraal beschrijven van een driehoek?
Bart
- 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.
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.
- 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
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
- Berichten: 2.609
Re: Oppervlakte driehoek benaderen
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 deBartemis 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)
Hier zal je ook een integraal moeten uitrekenen, maar dat zal dan in bolcoördinaten moeten.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.
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
Ik moet nog even uitvinden hoe ik dit ga doen voor een driehoek, maar ik ga het proberen.
Bart
- Berichten: 2.609
Re: Oppervlakte driehoek benaderen
Ik ben zelf vorig semester de volgende formules tegengekomen om te interpoleren in een driehoek. Ik vind het wel een elegante manierIk moet nog even uitvinden hoe ik dit ga doen voor een driehoek, maar ik ga het proberen.
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;
}
- 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:
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.
Die code lijkt mij niks zinnigs te doen.
Kijk eens naar de uitleg in mijn vorige bericht.
Misschien dat deze afbeelding het duidelijker maakt:
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?
Maar wat zijn dan de formules om die punten uit te rekenen?