Forum: Algorithmen, Datenstrukturen und Klassendesign
by Valle,
11. Jun 2012
Ich kann kein Delphi, aber ich tendiere mal zu Round():
zielkoordinatex.caption := IntToStr(Round(StrToFloat(koordinatex.text) / StrToFloat(originalx.text) * StrToFloat(zielx.text)));
zielkoordinatey.caption := IntToStr(Round(StrToFloat(koordinatey.text) / StrToFloat(originaly.text) * StrToFloat(ziely.text)));
Liebe Grüße,
Valentin
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Valle,
11. Jun 2012
Das hat mir Grafik absolut nichts zu tun. ;-)
Die Zahlen stammen nur aus deinen Beispielen. Nur bei einer hatte ich einen Tippfehler drin, vielleicht hat dich das verwirrt.
Den neuen Punkt habe ich durch Auflösen der Gleichung bekommen. ;-) Du musst das Ganze mit Verhältnissen rechnen. Die X-Koordinate des gegebenen, alten Punktes (400 in deinem Beispiel) steht im Verhältnis zur Breite des...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Valle,
11. Jun 2012
Rechne mit Verhältnissen:
x_alt / breite_alt = x_neu / breite_neu
y_alt / hoehe_alt = y_neu / hoehe_neu
Also etwas konkreter:
x_alt / 1920 = x_neu / 1024
y_alt / 1080 = y_neu / 768