Difference between revisions of "FindColorEx"

From SCAR Divi Manual
Jump to: navigation, search
Line 10: Line 10:
  
 
==Description==
 
==Description==
This function searches for a given color specified by '''Color''' inside of a given search area specified by '''XS''', '''YS''', '''XE''', '''YE''' using a scan-line pattern. The search area is given as a set of upper-left ('''XS''', '''YS''') and lower-right ('''XE''', '''YE''') coordinates which are specified relative to the selected client window. If the given search area is invalid ('''XS''' > '''XE''' or '''YS''' > '''YE'''), an exception is thrown.
+
This function searches for a given color specified by '''Color''' using a scan-line pattern. The search area is given as a set of upper-left ('''XS''', '''YS''') and lower-right ('''XE''', '''YE''') coordinates which are specified relative to the selected client window. If the given search area is invalid ('''XS''' > '''XE''' or '''YS''' > '''YE'''), an exception is thrown.
  
 
The function returns [[false]] if the color was not found, if it was it returns [[true]] and the coordinates of all found instances of the color in the [[TPointArray]] '''Points'''.
 
The function returns [[false]] if the color was not found, if it was it returns [[true]] and the coordinates of all found instances of the color in the [[TPointArray]] '''Points'''.

Revision as of 13:42, 2 April 2012

FindColors.gif

Definition

function FindColors(out Points: TPointArray; const Color, XS, YS, XE, YE: Integer): Boolean;

Availability

SCAR Divi 3.20 > Current

Description

This function searches for a given color specified by Color using a scan-line pattern. The search area is given as a set of upper-left (XS, YS) and lower-right (XE, YE) coordinates which are specified relative to the selected client window. If the given search area is invalid (XS > XE or YS > YE), an exception is thrown.

The function returns false if the color was not found, if it was it returns true and the coordinates of all found instances of the color in the TPointArray Points.

Example

var
  w, h: Integer;
  TPA: TPointArray;

begin
  GetClientDimensions(w, h);
  if FindColors(TPA, 0, 0, 0, w - 1, h - 1) then
  begin
    WriteLn('Found color ' + IntToStr(Length(TPA)) + ' times');
    WriteLn('Coordinates: ' + TPAToStr(TPA));
  end;
end.

See Also