QPainterpath mit Integer

Alles rund um die Programmierung mit Qt
Antworten
marvel
Beiträge: 105
Registriert: 9. August 2009 07:41

QPainterpath mit Integer

Beitrag von marvel »

hallo,
gibt es eine möglichkeit einen qpainterpath mit integerwerten zu füllen anstatt mit fließkommazahlen, sonst würde ich ne eigene containerklasse schreiben.
anno1988
Beiträge: 280
Registriert: 23. Januar 2009 20:49

Beitrag von anno1988 »

du kannst auch einfach einen static_cast benutzen.

Bei welcher Methode werden denn da Fließkommazahlen verlangt?
marvel
Beiträge: 105
Registriert: 9. August 2009 07:41

Beitrag von marvel »

ich habe eine liste von koordinaten die aus fließkommazahlen bestehen. diese wollte ich in einen qpainterpath per addPolygon ablegen und später zeichnen lassen. leider nimmt der painterpath laut api nur fließkommazahlen auf.
anno1988
Beiträge: 280
Registriert: 23. Januar 2009 20:49

Beitrag von anno1988 »

also probleme hatte icjh bisher keine einen integer auf einen qreal bzw. float zu casten.

wie gesagt, versuche den static_cast.

Code: Alles auswählen

int var0 = 55;
qreal var1 = static_cast<int>(var0);
so kann man es z.b. machen. dann den wert der methode übergeben.

PS: wenn deine koordianten aus fließkommazahlen bestehen und fleißkommazahlen verlagnt werden ist das ja garkeimn problem 8)
marvel
Beiträge: 105
Registriert: 9. August 2009 07:41

Beitrag von marvel »

okay, ich habe vergessen die noch ein paar infos zu geben. grundsätzlich ist es kein problem von int auf float oder double zu casten. ich möchte aber bei den integerwerten bleiben und diese in einem painterpath ablegen ohne sie zu casten. der grund ist einfach, mein qt fpr windows mobile unterstützt keine fließkommazahlen bzw zeichnet sie falsch. aus diesem grund bin ich gezwungen mit integerwerten zu arbeiten. da man laut api keinen qpainterpath mit intergerwerten füllen kann, also addPolygon etc, wollte ich wissen ob es dazu vllt ne alternative gibt, ansonsten müsste ich ne eigene contatinerklasse oder ähnliches schreiben.
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Was soll denn dann mit dem QPainterPath passieren? Ich mein wenn ich ein QPainterPath (egal unter welchen OS) mit korrekten Werten fülle und es dan versuche darzustellen und es nicht geht ist es ein Qt bug.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
marvel
Beiträge: 105
Registriert: 9. August 2009 07:41

Beitrag von marvel »

darauf wollte ich hinaus, es scheint ein qt bug zu sein der speziell unter windows mobile mit qt auftaucht. ich suche also eine alternative zu dem qpainterpath oder man müsste es selber implementieren bzw nachbauen. hat da vllt jmd eine idee ???
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Schonmal was vom qt-bugtracker gehört? Die würden sich über ein kompilierbares minimalbeispiel freuen (wie wir ggf. auch fals jemand dein os hat)
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
marvel
Beiträge: 105
Registriert: 9. August 2009 07:41

Beitrag von marvel »

ich werde mich gerne darumkümmern und ein kleines beispiel kompilieren, jedoch denke ich das dieses problem nicht sofort gelöst werden wird. ich brauche also immer noch eine alternative dazu
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Da Qt-intern wohl sowieso alles in floats gerechnet wird ... wirds wohl kaum was geben. Deshalb wundere ich mich auch dass da ein Bug sein soll.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
marvel
Beiträge: 105
Registriert: 9. August 2009 07:41

Beitrag von marvel »

nun, ich benutze als minibeispiel die drawLine funktion vom qpainter. man kann als parameter int oder float angeben. beim int zeichnet er wie gewollt, beim float wird komplett falsch gezeichnet. aus diesem grund gehe ich mal davon aus das es ein bug ist. die werte die ich übergebe sind fast identisch, kann also nicht daran liegen das ich was falsch übergebe
anno1988
Beiträge: 280
Registriert: 23. Januar 2009 20:49

Beitrag von anno1988 »

du kannst den code ja mal posten. dann kann man auch mal sehen ob es wirklich ein bug im framework ist.
marvel
Beiträge: 105
Registriert: 9. August 2009 07:41

Beitrag von marvel »

frag mich bitte nicht wie und warum, aber ich hab nochmal die wince qt version neu kompiliert und jetzt nimmt er auch doublewerte an. danke an alle für die hilfe. kann also geclosed werden
Antworten