aLeXanDer.. Geschrieben 4. Juni 2008 Geschrieben 4. Juni 2008 Hallo ich habe ein denke ich mal mathematisches Problem. C++ Borland Builder 2007 Ich zeichne einen Halbkreis mit Canvas->Pie und das soll als Temperaturanzeige gelten wenns zu warm is geht der Zeiger nach Rechts wenns zu kalt ist nach links ansonsten steht er dementsprechend senkrecht nach oben =) Nun ich hab das Probelm das ich nicht weiß wie die Pixel auf der Kreisbahn zu berechnen sind. Wenn ich einen Kreis hab und die Temperatur ist genau optimal dann sind die Koordinaten Canvas->LineTo(X-Koordinate = Mittelpunkt, Y-Koordinate = Radius) Nun wie bekomme ich aber die Koordinaten wenn die Temperatur zwischen zu heiß und optimal liegt. ? Dann ändert sich ja x und y wert dementsprechen. Ich hoffe ich hab mich nicht zu unverständlich ausgedrückt. Ich brauche praktisch Den x und Y Weert für eine bestimmte GradZahl auf dem Kreisradius. Danke alex
Hexagon Geschrieben 4. Juni 2008 Geschrieben 4. Juni 2008 Moin, schau mal >>hier<< unter Parameterdarstellung. Eventuell hilft Dir das schon.
aLeXanDer.. Geschrieben 4. Juni 2008 Autor Geschrieben 4. Juni 2008 Ein bisschen hat mir das weitergeholfen. aber der x-Wert stimmt nicht. y-Wert najaa kann euch mal mein rechenbeispiel geben Wert in Grad umrechnen 180° weil ich nur nen halben Kreis habe. Multiplikator = 180°/ DifferenzvonMaxnachMin; Ergebnis = (Wert - Minimum) * Multiplikator; int x,y; x = (X-MittelpunktKreis) + ((Radius) * cos(Ergebnis)); y = (Y-Mittelpunktkreis) + ((Radius) * sin(Ergebnis)); Iwie klappts nicht alex
Klotzkopp Geschrieben 4. Juni 2008 Geschrieben 4. Juni 2008 Die Winkelfunktionen erwarten ihr Argument in Bogenmaß, nicht in Grad.
aLeXanDer.. Geschrieben 4. Juni 2008 Autor Geschrieben 4. Juni 2008 Achso Danke =) dann nützt es mir nichts Ich brauche ja die Koordinaten eines Punktes auf dem Kreisbogen. Und die kenn ich nicht. Also kenn ich auch kein Bogenmaß.
Klotzkopp Geschrieben 4. Juni 2008 Geschrieben 4. Juni 2008 Ich brauche ja die Koordinaten eines Punktes auf dem Kreisbogen. Und die kenn ich nicht. Also kenn ich auch kein Bogenmaß. Bogenmaß ist eine "Einheit" für Winkel, genau wie Grad. Das kannst du einfach umrechnen, mit dem Faktor Pi/180.
Crash2001 Geschrieben 4. Juni 2008 Geschrieben 4. Juni 2008 Alternativ könntest du auch einfach bei senkrecht nach oben vom Winkel 0° ausgehen und dann pro °C Abweichung x Grad nach links/rechts gehen und in der Richtung einen Vektor zeichnen. Dann hast du in einem den Zeiger der Anzeige auch schon. Oder halt damit die Koordinaten berechnen und dann jeweils den Radius kleiner werden lassen.
aLeXanDer.. Geschrieben 4. Juni 2008 Autor Geschrieben 4. Juni 2008 Danke für die Hilfe mit dem Bogenmaß klappts nun einwandfrei
aLeXanDer.. Geschrieben 11. Juni 2008 Autor Geschrieben 11. Juni 2008 Noch eine Frage. Das mit dem berechnen funktioniert wunderbar. sofern der Winkel 180° beträgt. Was ist aber wenn ich jetzt Sowas wie eine Art Tacho zeichne und das Maximum nicht bei 0° und das Minimum nicht bei 180° liegen sondern bei z.B 10° und 170° wie stelle ich dann die Berechnungen an? Danke Alex
Klotzkopp Geschrieben 11. Juni 2008 Geschrieben 11. Juni 2008 wie stelle ich dann die Berechnungen an? Dann rechnest du zuerst deine Werte in diesen Bereich um. Alles weitere bleibt gleich. Winkel = (Wert - MinWert)/(MaxWert - MinWert) * (MaxWinkel - MinWinkel) + MinWinkel
aLeXanDer.. Geschrieben 12. Juni 2008 Autor Geschrieben 12. Juni 2008 Jetzt ärger ich mich das ich da nicht selber drauf gekommen bin. Danke für die Hilfe. funktioniert perfekt alex
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden