Forum: Programmieren allgemein
by stahli,
29. Apr 2016
Wenn man in der Mitte eine Linie zieht und diese beide Rects begrenzt überschneiden sich beide tatsächlich um ein Pixel.
Man muss also das rechte Rect noch um ein Pixel nach rechts verschieben und erhält die gegebene Situation (und in der Mitte eine 2 Pixel breite Linie).
Ich sehe gerade, in XE3 ist die Funktion auch noch falsch und ich hatte auch eine eigene geschrieben. :roteyes:
Forum: Programmieren allgemein
by stahli,
29. Apr 2016
Das gelbe Rect1 ist Left=2 und Right=5.
Der Bereich ist dann real 2..4.
Das blaue Rect2 ist dann Left=5 und Right=8.
Der Bereich ist dann real 5..7.
Die beiden Rects grenzen nur aneinander, aber es gibt keine Überschneidung.
Dass die Rects Left und Top den realen Wert widerspiegeln und Right und Bottom 1 Pixel weiter außerhalb liegen hat mich auch schon einige graue Haare gekostet...
Forum: Programmieren allgemein
by stahli,
29. Apr 2016
Ich denke, dass Du Recht hast (und frage mich, warum mir das nicht aufgefallen war - vielleicht ist das in XE3 schon gefixt? Ich schaue das heute Abend mal nach.)