Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

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

Geschrieben

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

Geschrieben
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.

Geschrieben

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.

Geschrieben

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

Geschrieben
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

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...