Entwickler-Ecke
Multimedia / Grafik - Pointer bei Scanline
Eritacus - Mi 19.01.11 20:22
Titel: Pointer bei Scanline
Hallo zusammen,
seit einiger Zeit benutze ich Scanline mit Erfolg. Ich kann ganze Bitmaps oder auch Teile davon
gezielt bearbeiten oder auslesen. Bisher nehme ich dafür nur Inc(p) oder Dec(p), was ziemlich umständlich ist.
ABER:
1. Wie kann ich den Pointer sofort auf eine bestimmte Stelle setzen (gewissermaßen adressieren)?
2. Wie erhalte ich die aktuelle Position des Pointers?
Weiß jemand Rat?
Gruß
Eritacus
jaenicke - Mi 19.01.11 20:54
Eritacus hat folgendes geschrieben : |
1. Wie kann ich den Pointer sofort auf eine bestimmte Stelle setzen (gewissermaßen adressieren)? |
Einfach den gewünschten Offset-Wert als zweiten Parameter an Inc/Dec übergeben oder direkt mit dem Pointer rechnen.
Eritacus hat folgendes geschrieben : |
2. Wie erhalte ich die aktuelle Position des Pointers? |
Anfang der Zeile merken und vom aktuellen Wert abziehen.
Zudem kannst du dir auch die Differenz zweier Zeilen merken und auch damit von der ersten Zeile ausgehend direkt rechnen.
bummi - Mi 19.01.11 20:59
oder direkt durchgreifen
Beispiel für pf24bit
Delphi-Quelltext
1: 2:
| type pRGBTripleArray = ^TRGBTripleArray; |
>>
Delphi-Quelltext
1: 2: 3: 4: 5: 6:
| with pRGBTripleArray(Image1.Picture.Bitmap.ScanLine[Y])[X] do begin rgbtred := 0; rgbtgreen :=0; rgbtblue := 0; end |
Eritacus - Sa 22.01.11 08:21
Hallo,
ich danke Euch beiden, hat geholfen!
Manchmal fehlen einem die einfachsten Dinge...
Gruß
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!