QGraphicsSvgItem skalieren

Alles rund um die Programmierung mit Qt
Antworten
Bugi
Beiträge: 10
Registriert: 15. Oktober 2009 11:06
Kontaktdaten:

QGraphicsSvgItem skalieren

Beitrag von Bugi »

Hallo,

ich muss ein svg bildchen in Rechteck(QGraphicsItem) einfügen. Dafür habe ich eine Klasse geschrieben, die aus QGraphicsSvgItem abgeleitet ist. Nun möchte ich das bildchen in einer bestimmten Größe im Rechteck gezeichnet wird. Dazu rechnete ich ein skalierungfaktor wie folgt.

hscale = sollHeight / (boundingrect von svgItem).height;
wscale = sollWidth / (boundingrect von svgItem).width;

Mit diesen Skalierungsfaktoren habe ich die Transformationsmatrix von svgItem korrigiert. Aber dann ist das bildchen zu klein. Was mache ich beim skalieren falsch? Oder Wie kann ich anders machen?

Vielen herzlichen Dank im Voraus!

Gruß Bugi
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Re: QGraphicsSvgItem skalieren

Beitrag von franzf »

Bugi hat geschrieben:Dafür habe ich eine Klasse geschrieben, die aus QGraphicsSvgItem abgeleitet ist.
Kannst du diese Entscheidung begründen? Du änderst am Verhalten von QGraphicsSvgItem nichts. Das Vorhaben lässt sich mit der public-API umsetzen.

Zum Problem kann man nicht wirklich was sagen. Könntest du bitte tatsächlich verwendeten, relevanten Code - am besten in Form eines kompilierbaren Minimalbeispieles - posten?
Bugi
Beiträge: 10
Registriert: 15. Oktober 2009 11:06
Kontaktdaten:

Beitrag von Bugi »

Hallo franzf,

vielen Dank für deine Antwort. Du hast völlig Recht zu der Programmstruktur bzgl der abgeleiteten Klasse.
Bei mir hat es sich herausgestellt, dass die svg Dateien nicht richtig generiert wurden und somit sehr klein waren.
Ich habe dann ganz normal QGraphicsSvgItem genommen und skaliert funktioniert wunderbar :-)


Gruß Bugi.
Antworten