Reg. datum: 02 november 2008
Berichten: 55
Reg. datum: 02 november 2008
Reg. datum: 02 november 2008
Hoe bedoel je als waarde? Is dat V2?quote:Mathieu_Hinder schreef op zaterdag 07 november 2009 @ 22:48:
Volgens de sinusregel wordt het dit, dit is toepasbaar bij iedere driehoek, (Pythagoras kan je enkel gebruiken bij rechthoekige driehoeken):
AC/sin(b)=AB/sin(c)
AC= (sin(b)*AB)/sin(c) -> Dit moet je dus gebruiken als waarde!
- Uitgewerkt op die ene driehoek wordt dit:
AC = (((V2)/2)*112)/1
AC = 79,19
Daarnaast, waarom deel je door 1? Dat is toch altijd 1?
Bedoel je dan (((sin(b)*AB)/sin(c)) / 2) * AB?
Ik ben heel blij met al jullie hulp, maar wat moet ik dan wel doen?quote:LED-Maniak schreef op zaterdag 07 november 2009 @ 22:59:
[...]
Je rekent zoals ik al eerder aangaf in radialen.
Dat moet je niet doen
Je getal in radialen vermenigvuldigen met pi en dan delen door 180.
System.Diagnostics.Debug.WriteLine(Math.Sin(45*pi/180) / Math.Sin((90*pi/180) / 100))
System.Diagnostics.Debug.WriteLine(Math.Sin(45*pi/180) / (Math.Sin((90*pi/180)) / 100))
En nu?
System.Diagnostics.Debug.WriteLine(Math.Sin(45*pi/180) / (Math.Sin((90*pi/180)) / 100))
En nu?
45,0176670623702quote:LED-Maniak schreef op zaterdag 07 november 2009 @ 23:05:
System.Diagnostics.Debug.WriteLine(Math.Sin(45*pi/180) / Math.Sin((90*pi/180) / 100))
System.Diagnostics.Debug.WriteLine(Math.Sin(45*pi/180) / (Math.Sin((90*pi/180)) / 100))
En nu?
70,7106781186547
Komt erg dichtbij de 70 waar ik het over had he? 
quote:LED-Maniak schreef op zaterdag 07 november 2009 @ 23:07:
Komt erg dichtbij de 70 waar ik het over had he?
Yup, probeer nu alleen nog even te zien wat ik nu moet doen (relatie tussen formule en ontbrekende gegevens)quote:LED-Maniak schreef op zaterdag 07 november 2009 @ 23:07:
Komt erg dichtbij de 70 waar ik het over had he?
Berichten: 55
Reg. datum: 02 november 2008
Reg. datum: 02 november 2008
Je zijde is toch wel degelijk 79,19 lang hoor. Edit: ik zie dat jij in je voorbeeld-driehoek ACF met schuine zijde 100 hebt gewerkt, vandaar het verschil, ik nam 112.
Maar om het even kort samen te vatten:
Je wilt je 2 (AC en BC) zijden uitdrukken afhankelijk van
-de variabele zijde 'AB'
-2 aanliggende hoeken van AB (hoek a en hoek b)
-overstaande hoek van AB (hoek c)
Je zijde AC is dus '[sin(b)*AB]/sin(c)'
Je zijde BC is dus '[sin(a)*AB]/sin(c)'
Je waarde van je hoeken moet je invoeren in radialen.!!
Enkel in mijn voorbeeld heb ik overigens die V2 gebruikt (de sinus van 45° is namelijk (V2)/2 en de sinus van 90° is 1, vandaar dus die twee getallen. In een andere hoek en situatie zullen deze uiteraard veranderen)
Maar om het even kort samen te vatten:
Je wilt je 2 (AC en BC) zijden uitdrukken afhankelijk van
-de variabele zijde 'AB'
-2 aanliggende hoeken van AB (hoek a en hoek b)
-overstaande hoek van AB (hoek c)
Je zijde AC is dus '[sin(b)*AB]/sin(c)'
Je zijde BC is dus '[sin(a)*AB]/sin(c)'
Je waarde van je hoeken moet je invoeren in radialen.!!
Enkel in mijn voorbeeld heb ik overigens die V2 gebruikt (de sinus van 45° is namelijk (V2)/2 en de sinus van 90° is 1, vandaar dus die twee getallen. In een andere hoek en situatie zullen deze uiteraard veranderen)
Mathieu_Hinder wijzigde dit bericht 07-11-2009 23:27 (30%)
woops, ik heb sinus en de lengte omgedraaid 
^^ heeft gelijk.
^^ heeft gelijk.
LED-Maniak wijzigde dit bericht 07-11-2009 23:29 (17%)
eerst dacht ik: Yeah!, maar volgens mij is er nog iets niet goed.quote:Mathieu_Hinder schreef op zaterdag 07 november 2009 @ 23:14:
Je zijde is toch wel degelijk 79,19 lang hoor. Edit: ik zie dat jij in je voorbeeld-driehoek ACF met schuine zijde 100 hebt gewerkt, vandaar het verschil, ik nam 112.
Maar om het even kort samen te vatten:
Je wilt je 2 (AC en BC) zijden uitdrukken afhankelijk van
-de variabele zijde 'AB'
-2 aanliggende hoeken van AB (hoek a en hoek b)
-overstaande hoek van AB (hoek c)
Je zijde AC is dus '[sin(b)*AB]/sin(c)'
Je zijde BC is dus '[sin(a)*AB]/sin(c)'
Je waarde van je hoeken moet je invoeren in radialen.!!
Enkel in mijn voorbeeld heb ik overigens die V2 gebruikt (de sinus van 45° is namelijk (V2)/2 en de sinus van 90° is 1, vandaar dus die twee getallen. In een andere hoek en situatie zullen deze uiteraard veranderen)
Output = 30x:
A: 1, B: 1, C: 2, AB: 112, AC: 104, BC: 104
Code:
Visual Basic .NET:
1 | For i As Integer = 30 To 60
|
Update:
Moest er doubles van maken, anders wordt alles afgerond
Visual Basic .NET:
1 | Private Sub Test(ByVal Arc As Double, ByVal AB As Double)
|
Uitkomst:
A: 30, B: 60, C: 90, AB: 112, AC: 96,9948452238571, BC: 56
A: 31, B: 59, C: 90, AB: 112, AC: 96,0027376786366, BC: 57,6842643899261
A: 32, B: 58, C: 90, AB: 112, AC: 94,9813867695197, BC: 59,350957594119
A: 33, B: 57, C: 90, AB: 112, AC: 93,9311036098875, BC: 60,999571921683
A: 34, B: 56, C: 90, AB: 112, AC: 92,8522081261647, BC: 62,6296051887237
A: 35, B: 55, C: 90, AB: 112, AC: 91,7450289603671, BC: 64,2405608713172
A: 36, B: 54, C: 90, AB: 112, AC: 90,6099033699941, BC: 65,831948256757
A: 37, B: 53, C: 90, AB: 112, AC: 89,4471771252968, BC: 67,4032825930294
A: 38, B: 52, C: 90, AB: 112, AC: 88,2572044039529, BC: 68,9540852364737
A: 39, B: 51, C: 90, AB: 112, AC: 87,0403476831807, BC: 70,4838837975818
A: 40, B: 50, C: 90, AB: 112, AC: 85,7969776293255, BC: 71,9922122848924
A: 41, B: 49, C: 90, AB: 112, AC: 84,5274729849505, BC: 73,4786112469368
A: 42, B: 48, C: 90, AB: 112, AC: 83,2322204534681, BC: 74,9426279121921
A: 43, B: 47, C: 90, AB: 112, AC: 81,9116145813471, BC: 76,3838163269998
A: 44, B: 46, C: 90, AB: 112, AC: 80,5660576379289, BC: 77,8017374914077
A: 45, B: 45, C: 90, AB: 112, AC: 79,1959594928933, BC: 79,1959594928933
A: 46, B: 44, C: 90, AB: 112, AC: 77,8017374914077, BC: 80,5660576379289
A: 47, B: 43, C: 90, AB: 112, AC: 76,3838163269998, BC: 81,9116145813471
A: 48, B: 42, C: 90, AB: 112, AC: 74,9426279121921, BC: 83,2322204534681
A: 49, B: 41, C: 90, AB: 112, AC: 73,4786112469368, BC: 84,5274729849505
A: 50, B: 40, C: 90, AB: 112, AC: 71,9922122848924, BC: 85,7969776293255
A: 51, B: 39, C: 90, AB: 112, AC: 70,4838837975818, BC: 87,0403476831807
A: 52, B: 38, C: 90, AB: 112, AC: 68,9540852364737, BC: 88,2572044039529
A: 53, B: 37, C: 90, AB: 112, AC: 67,4032825930294, BC: 89,4471771252968
A: 54, B: 36, C: 90, AB: 112, AC: 65,831948256757, BC: 90,6099033699941
A: 55, B: 35, C: 90, AB: 112, AC: 64,2405608713172, BC: 91,7450289603671
A: 56, B: 34, C: 90, AB: 112, AC: 62,6296051887237, BC: 92,8522081261647
A: 57, B: 33, C: 90, AB: 112, AC: 60,999571921683, BC: 93,9311036098875
A: 58, B: 32, C: 90, AB: 112, AC: 59,350957594119, BC: 94,9813867695197
A: 59, B: 31, C: 90, AB: 112, AC: 57,6842643899261, BC: 96,0027376786366
A: 60, B: 30, C: 90, AB: 112, AC: 56, BC: 96,9948452238571
Nu lijkt het er meer op en kan ik gaan klooien. Ik ga binnekort nog maar eens een meetkunde boek kopen, want 't wil d'r allemaal niet helemaal in, maar iig heel erg bedankt alvast, nu ik iets werkends heb kan ik iig daar mee stoeien.
Klopt het dat het dus is:
Zijde = (Sin(Overstaande hoek) * Bekende zijde) / Sin(Overstaande hoek van bekende zijde)?
CMG wijzigde dit bericht 07-11-2009 23:37 (49%)
Berichten: 55
Reg. datum: 02 november 2008
Reg. datum: 02 november 2008
Programmeren weet ik helaas helemaal niets van (nog iets te vroeg daarvoor
), je formule op zich lijkt dus wel te kloppen.
A: 45, B: 45, C: 90, AB: 112, AC: 79,1959594928933, BC: 79,1959594928933
Yes
Veel succes in het verdiepen in de wiskunde!
A: 45, B: 45, C: 90, AB: 112, AC: 79,1959594928933, BC: 79,1959594928933
Yes
Mathieu_Hinder wijzigde dit bericht 07-11-2009 23:37 (36%)
Klopt dit: Zijde = (Sin(Overstaande hoek) * Bekende zijde) / Sin(Overstaande hoek van bekende zijde)?quote:Mathieu_Hinder schreef op zaterdag 07 november 2009 @ 23:36:
Programmeren weet ik helaas helemaal niets van (nog iets te vroeg daarvoor), je formule op zich lijkt wel te kloppen...
Dus:
AB = (Sin( C ) * AC) / Sin( B )
of
AB = (Sin( C ) * BC) / Sin( A )
AC = (Sin( B ) * AB) / Sin( C )
of
AC = (Sin( B ) * BC) / Sin( A )
BC = (Sin( A ) * AB) / Sin( C )
of
BC = (Sin( A ) * AC) / Sin( B )
CMG wijzigde dit bericht 07-11-2009 23:40 (24%)
Berichten: 55
Reg. datum: 02 november 2008
Reg. datum: 02 november 2008
Het principe is eenvoudiger te onthouden als je het zo schrijft:
Sin(a) . Sin(b) .. Sin(c)
-------- = --------- = ---------
A .......... B ......... C
In woorden: de verhouding tussen de sinus van een hoek en de lengte van de overstaande zijde is altijd gelijk
Die puntjes dienen enkel om dat een reeks spaties blijkbaar weggelaten wordt, een kolom maken lukt niet echt...
Hierbij zijn de hoeken en zijden met dezelfde letter overstaande hoeken/zijden. Naargelang de gegevens die je hebt, kan je die invullen, de formule wat omvormen en zo 1 onbekende berekenen.
Sin(a) . Sin(b) .. Sin(c)
-------- = --------- = ---------
A .......... B ......... C
In woorden: de verhouding tussen de sinus van een hoek en de lengte van de overstaande zijde is altijd gelijk
Die puntjes dienen enkel om dat een reeks spaties blijkbaar weggelaten wordt, een kolom maken lukt niet echt...
Hierbij zijn de hoeken en zijden met dezelfde letter overstaande hoeken/zijden. Naargelang de gegevens die je hebt, kan je die invullen, de formule wat omvormen en zo 1 onbekende berekenen.
Mathieu_Hinder wijzigde dit bericht 07-11-2009 23:47 (53%)
Dat is persoonlijk, overal staat het op die manier, alleen dan begrijp ik het dus niet, dat was de moeilijkheid ook hier. Mijn voorbeeld kan ik door een compiler heen gooien en die begrijpt wat ik bedoelquote:Mathieu_Hinder schreef op zaterdag 07 november 2009 @ 23:41:
Het is eenvoudiger te onthouden als je het zo schrijft:
Sin(a) . Sin(b) .. Sin(c)
-------- = --------- = ---------
A .......... B ......... C
Die puntjes dienen enkel om dat een reeks spaties blijkbaar weggelaten wordt...
Hierbij zijn de hoeken en zijden met dezelfde letter overstaand. Naargelang de gegevens die je hebt, kan je invullen en 1 onbekende berekenen.
Berichten: 128
Reg. datum: 25 september 2006
Reg. datum: 25 september 2006
Is het niet handiger als je een functie maakt voor naar Radialen te rekenen en terug? Dan krijg je:
Visual Basic .NET:
Visual Basic .NET:
1 | Public Function ToRadian(Degree as Double) as Double
|
offtopic:
Heb hem niet getest of die goed werkt, maar daar kom je snel achter
Heb hem niet getest of die goed werkt, maar daar kom je snel achter
Hehe, true. Dit was even quick en dirty testen, niet hoe de code er echt uit komt te zien.quote:P-Storm schreef op zaterdag 07 november 2009 @ 23:51:
Is het niet handiger als je een functie maakt voor naar Radialen te rekenen en terug? Dan krijg je:
Visual Basic .NET:
1
2
3
4
5
6
7
8
9
10Public Function ToRadian(Degree as Double) as Double
return Degree * math.pi / 2
End Function
Public Function ToDegree(Radian as Double) as Double
Return Radian / math.pi * 2
End Functionofftopic:
Heb hem niet getest of die goed werkt, maar daar kom je snel achter
Ik zal straks nog even aangepaste code laten zien om het resultaat in actie te laten zien (heb mijn oplossing al voor 0 -> 56 graden (door Y offset), moet nog even bedenken wat ik moet doen voor de X offset)
UPDATE
Aangepaste source: http://www.nkcss.nl/GDIPlusRotate-UPDATE.zip
Ik heb een paar dingen geprobeerd, maar kom er niet helemaal uit.
Wat ik moet weten: Vanaf linker boven hoek gemeten het aantal pixels omlaag tot het punt waarop je een horizontale lijn kunt trekken van 100 pixels binnen het vierkant van 112 pixels en hoeveel pixels naar links die lijn van 100 pixels breed begint ten opzichte van het startpunt. Volgens mij klinkt het erg vaag, ik zal kijken of ik morgen nog eens wat dingen kan gaan tekenen
CMG wijzigde dit bericht 08-11-2009 01:44 (30%)
Ik ga toch dit topic (alsnog) sluiten. Dit is nu zo goed als uitgemondt in een bij-het-handje-hou-topic. Iets wat we hier liever niet zien. Het is erg lief en aardig dat mensen je hier nu zo helpen maar jij bent diegene die dingen zou moeten nakijken, debuggen etc en dat laat je hier nu door anderen doen. Ik krijg ook nog het gevoel dat het hier om een huiswerkachtig iets gaat en dan zou je dit soort dingen eerst met je docent moeten overleggen.
Creepy wijzigde dit bericht 08-11-2009 09:51 (19%)
Some people, when confronted with a problem, think "I know, I'll use regular expressions." Now they have two problems. — Jamie Zawinski
Dit topic is gesloten.