C# Triangle Zeichnen
-
hey, hab ein problem. gibts keine vorgefertigte funktion in c# das man triangles zeichnen kann?
oder muss man das selbst berechnen
mein programm soll so aussehen:
es werden a , b ,c vom user eingegeben
und soll damit dann ein dreieck zeichnen.das ist irgendwie schwerer als gedacht,
da das ja für gleichseitiges,gleichschenkliges oder algemeines anders zum berechnen wäre oder?.
kann mir jmd weiterhelfen
-
Nein, das ist gleich zu berechnen. Die Info über die Seitenlängen reicht aus, um die Winkel zu berechnen. Vorgefertige Funktion gibts keine, weils im Standard keinen Sinn macht. Aber im Netz findest du bestimmte etliche Beispiele, wobei ich dir fast empfehlen würde, das selber zu machen als irgendwas aus dem Netz zu kopieren und sich dann zu wunden, warums nicht geht.
-
OMG stimmt ja mit cosinussatz, bah bin ich dumm^^,
das sind di langen ferien XD
-
aja,
jetzt hab ich zwar alles 3 winkel.
nur wie rotier ich danach jetzt am besten wenn ich DrawLine beutze?
bzw wie funktioniert das mit draw line überhaupt.andere idde von wir wäre gewesen den Point3 heruaszufunden
da ich Point1 und Point2 haben, allerdings auch keine ahnung mehr wie das funktioniert
-
Stichwort: Polarkoordinaten -> kartesische, s. http://de.wikipedia.org/wiki/Polarkoordinaten#Umrechnung_von_Polarkoordinaten_in_kartesische_Koordinaten
-
klingt jetzt sau dumm, aber bringt mi irgendwie nicht weiter.
ich kenn die polar koordinaten zwar i wie noch von mathe kommt mir vor aber wie ich das jetzt zwecks meinem dreick richtig anwenden soll... hmmm
-
Sieh dir die Graphik an:
http://upload.wikimedia.org/wikipedia/de/f/f6/Ebene_polarkoordinaten.PNGDu hast
r
und du hast Φ. Nimm z.B. ana
liege auf der Horizontalen,r
seic
und dadurch ist Φ gleich β. Dann hast du den Punkt A (c * cos(β), c * sin(β)). Von Punkt B bist du ausgegangen. Und Punkt C lässt sich dadurch berechnen, dass du der x Koordinate von B die Längea
hinzuaddierst.Mach dir am besten eine Zeichnung dazu
Grüssli
-
hab ne andere lösung:
h = sqrt(b² - (a-x)²)
h = sqrt(c²-x²)beide kann man gleichsetzten(also sqrt(b²..) = sqrt(c²...)
dann auf x umformen da kommt dann rausx = (c² - b² + a²)/(2a)
so kann man h ausrechnen:
h = sqrt(c²-x²)
somit hab ich punkt 3
p1(C) = (10,30) .....fixe koordinaten (x,y)das nicht ganz am rand der form ist
p2(B) = (a+10,30) ..... a+fixe coord. , y bleibt ja gleich ist ja ja nur geradeer strich von punkt C zu punkt B
p3(A) = (a-x,h) ...... einfach a her nehmen - x rechnen so hab ich die X coordinate vom punkt 3, und Y coordinate ist einfach die höhe von dreieck.