Springen naar inhoud

Oppervlakte driehoek benaderen


  • Log in om te kunnen reageren

#1

Bartemis

    Bartemis


  • 0 - 25 berichten
  • 14 berichten
  • Gebruiker

Geplaatst op 26 maart 2012 - 13:56

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

Veranderd door Bartemis, 26 maart 2012 - 13:57


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

#2

dirkwb

    dirkwb


  • >1k berichten
  • 4172 berichten
  • Moderator

Geplaatst op 26 maart 2012 - 20:33

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

#3

Bartemis

    Bartemis


  • 0 - 25 berichten
  • 14 berichten
  • Gebruiker

Geplaatst op 26 maart 2012 - 20:36

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

#4

Xenion

    Xenion


  • >1k berichten
  • 2606 berichten
  • Moderator

Geplaatst op 26 maart 2012 - 20:43

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

#5

Bartemis

    Bartemis


  • 0 - 25 berichten
  • 14 berichten
  • Gebruiker

Geplaatst op 26 maart 2012 - 20:46

Ja, dat begrijp ik.

Hoe begin je met het integraal beschrijven van een driehoek?

Bart

#6

tempelier

    tempelier


  • >1k berichten
  • 1765 berichten
  • Ervaren gebruiker

Geplaatst op 26 maart 2012 - 20:46

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.

#7

Bartemis

    Bartemis


  • 0 - 25 berichten
  • 14 berichten
  • Gebruiker

Geplaatst op 26 maart 2012 - 20:48

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.

#8

Xenion

    Xenion


  • >1k berichten
  • 2606 berichten
  • Moderator

Geplaatst op 26 maart 2012 - 20:49

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?

#9

Bartemis

    Bartemis


  • 0 - 25 berichten
  • 14 berichten
  • Gebruiker

Geplaatst op 26 maart 2012 - 20:53

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

#10

Xenion

    Xenion


  • >1k berichten
  • 2606 berichten
  • Moderator

Geplaatst op 26 maart 2012 - 20:56

[quote name='Bartemis' post='725874' date='26 March 2012, 20:53']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)[/quote]
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 Bericht bekijken
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.[/quote]
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.

#11

Bartemis

    Bartemis


  • 0 - 25 berichten
  • 14 berichten
  • Gebruiker

Geplaatst op 26 maart 2012 - 21:04

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

#12

Xenion

    Xenion


  • >1k berichten
  • 2606 berichten
  • Moderator

Geplaatst op 26 maart 2012 - 21:13

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.

#13

Bartemis

    Bartemis


  • 0 - 25 berichten
  • 14 berichten
  • Gebruiker

Geplaatst op 27 maart 2012 - 16:29

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

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;
}

#14

Xenion

    Xenion


  • >1k berichten
  • 2606 berichten
  • Moderator

Geplaatst op 27 maart 2012 - 16:58

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

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.

#15

Bartemis

    Bartemis


  • 0 - 25 berichten
  • 14 berichten
  • Gebruiker

Geplaatst op 27 maart 2012 - 17:05

Aha! Zo werkt het

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





0 gebruiker(s) lezen dit onderwerp

0 leden, 0 bezoekers, 0 anonieme gebruikers

Ook adverteren op onze website? Lees hier meer!

Gesponsorde vacatures

Vacatures