Deutsch
Forum

Vergleichen

 
Hallo Leute !

sagen wir, ich habe ein BMP(A) und einen ausschnitt BMP(B).
Nun möchte ich überprüfen ob, B irgendwo in A vorkommt.
Kann ich das mit der ProSpeed.Dll irgendwie realisieren?

Mit freundlichem Gruss,
Alexander Schönfeld
 
19.04.2004  
 



Hallo Alexander,

da hast du dir aber eine gewaltige Aufgabe gestellt, ich kenne kein Programm oder Dll, die das könnte...

Aber eine Idee habe ich doch (ja, mit ProSpeed):

Verwandle beide Bilder in ein ByteArray via InitExtFX(). Du hast jetzt zwei Handle für zwei Byte Arrays, also quasi zwei Bereiche mit Grafikdaten. Die zurückgegebenen Handle sind Adressen zu einer Struktur, an deren Offset 40 der Zeiger auf die eigentlichen Grafikdaten steht (LongInt). Die mußt du in eine Variable speichern...

arrayadresse1&=Long(bytearray1&,40)
arrayadresse2&=Long(bytearray2&,40)

Und bitte beachte, das die Grafiken vom System (paradoxerweise) von links unten nach rechts oben gespeichert werden (!)
An Offset 20 steht übrigens ein LongInt, das angibt, wieviele Bytes im jeweiligen Bytearray stehen. Diese Infos brauchst du ebenfalls.
Jetzt kannst du FindBytes() anwenden. Am besten läßt du die ersten 16 Bytes des Bildausschnitts im großen Bild suchen. Wenn das Ergebniss hier negativ war, ist der Bildausschnitt nirgendwo im Bild vorhanden. Wenn er positiv war, kopiere ab dieser Stelle in der Größe des Bildausschnitts diese Stelle in einen neuen HDC und von dort läßt du es wieder in ein Byte-Array umwandeln. Jetzt kannst du beide Bytesarrays (die ja jetzt die gleiche Größe haben) mit CompareBytes() vergleichen.
Wenn das Ergebniss positiv war, dann befindet sich der Bildausschnitt tatsächlich im Bild.

Nicht mal so einfach, oder?
Ist aber immerhin eine relativ schnelle Lösung.
Alternativ kannst du natürlich auch mit GetPixel() / SetPixel() arbeiten.
Ich hoffe, du bekommst das hin...

Gruß, Frank
 
19.04.2004  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

2.503 Betrachtungen

Unbenanntvor 0 min.
Walter05.06.2022
maroro30.07.2018
Peter Max Müller09.06.2015
J. Strahl13.01.2011

Themeninformationen

Dieses Thema hat 1 Teilnehmer:

unbekannt (2x)


Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie