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 Zitieren
Hexagon Geschrieben 4. Juni 2008 Geschrieben 4. Juni 2008 Moin, schau mal >>hier<< unter Parameterdarstellung. Eventuell hilft Dir das schon. Zitieren
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 Zitieren
Klotzkopp Geschrieben 4. Juni 2008 Geschrieben 4. Juni 2008 Die Winkelfunktionen erwarten ihr Argument in Bogenmaß, nicht in Grad. Zitieren
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ß. Zitieren
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. Zitieren
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. Zitieren
aLeXanDer.. Geschrieben 4. Juni 2008 Autor Geschrieben 4. Juni 2008 Danke für die Hilfe mit dem Bogenmaß klappts nun einwandfrei Zitieren
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 Zitieren
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 Zitieren
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 Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.