*lol* Ich bin froh, wenn es überhaupt erstmal geht
Ich habe jetzt eine Polygonlinie mit 40 Punkten (ausreichend genaue Darstellung) erzeugt, welche die Flugbahn auf Knopfdruck darstellt:
Code: Alles auswählen
void CannonField::paintCheat(QPainter &painter)
{
QPainter painter2(this);
painter2.setPen(Qt::black);
painter2.setPen(Qt::DashLine);
... bla bla ...
int i;
double x[40];
double y[40];
x[0] = bla;
y[0] = bla;
for(i = 1; i < 40; i++)
{
x[i] = bla;
y[i] = bla;
};
QPointF points[40] =
{
QPointF(x[0], y[0]),
QPointF(x[1], y[1]),
QPointF(x[2], y[2]),
QPointF(x[3], y[3]),
QPointF(x[4], y[4]),
QPointF(x[5], y[5]),
QPointF(x[6], y[6]),
QPointF(x[7], y[7]),
QPointF(x[8], y[8]),
QPointF(x[9], y[9]),
QPointF(x[10], y[10]),
QPointF(x[11], y[11]),
QPointF(x[12], y[12]),
QPointF(x[13], y[13]),
QPointF(x[14], y[14]),
QPointF(x[15], y[15]),
QPointF(x[16], y[16]),
QPointF(x[17], y[17]),
QPointF(x[18], y[18]),
QPointF(x[19], y[19]),
QPointF(x[20], y[20]),
QPointF(x[21], y[21]),
QPointF(x[22], y[22]),
QPointF(x[23], y[23]),
QPointF(x[24], y[24]),
QPointF(x[25], y[25]),
QPointF(x[26], y[26]),
QPointF(x[27], y[27]),
QPointF(x[28], y[28]),
QPointF(x[29], y[29]),
QPointF(x[30], y[30]),
QPointF(x[31], y[31]),
QPointF(x[32], y[32]),
QPointF(x[33], y[33]),
QPointF(x[34], y[34]),
QPointF(x[35], y[35]),
QPointF(x[36], y[36]),
QPointF(x[37], y[37]),
QPointF(x[38], y[38]),
QPointF(x[39], y[39]),
};
painter2.drawPolyline(points, 40);
update();
}
Das ganze "bla bla" steht für Deklarationen und Berechnungen der Flugbahn. Das hab ich mal entfernt, damit man den Code schneller überfliegen kann.
Gibt es eine geschicktere Variante, um das Punkt-Array zu erzeugen? Ich wollte das direkt in eine for-Schleife packen, hab den Compiler aber nicht überzeugen können
Und: solange diese Vorschau-Flugbahn eingeblendet wird kann ich zwar einen richtigen "Schuß" abfeuern, dieser bewegt sich jedoch nur sehr langsam, solange die Flugbahn eingeblendet wird. Ist diese wieder weg, bewegt sich der Schuß ganz normal schnell. Was verlangsamt mein Programm so sehr?
Noch eine Frage: wie kann ich die Linienstärke meiner Vorschau-Flugbahn erhöhen?
Beste grüße, Chris