Klasa „monkeyrunner” do przechowywania obrazu urządzenia lub ekranu emulatora. Podczas zrzutu ekranu obraz jest kopiowany z bufora ekranu. Metody tego obiektu umożliwiają konwersję obrazu na różne formaty pamięci masowej, zapisywanie obrazu do pliku, kopiowanie części obrazu i porównywanie tego obiektu z innymi obiektami MonkeyImage
.
Nie musisz tworzyć nowych instancji interfejsu MonkeyImage
. Zamiast tego utwórz nową instancję na podstawie zrzutu ekranu za pomocą polecenia
MonkeyDevice.takeSnapshot()
. Użyj na przykład:
newimage = MonkeyDevice.takeSnapshot()
Podsumowanie
Metody | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
Konwertuje bieżący obraz na określony format i zwraca go jako ciąg znaków, do którego można później uzyskać dostęp w postaci iterowalnego pliku binarnego.
|
||||||||||
|
Zwraca pojedynczy piksel w lokalizacji obrazu (x,y) jako kropkę z liczby całkowitej, w postaci (a,r,g,b).
|
||||||||||
|
Zwraca pojedynczy piksel w lokalizacji obrazu (x,y) jako 32-bitową całkowitą.
|
||||||||||
MonkeyImage
|
Tworzy nowy obiekt
MonkeyImage z prostokątnego zaznaczenia bieżącego obrazu.
|
||||||||||
|
MonkeyImage inne, zmiennoprzecinkowe%)
Porównuje ten obiekt
MonkeyImage z innym i zwraca wynik porównania. Argument percent określa różnicę procentową, która jest dozwolona, gdy dwa obrazy mają być „równe”.
|
||||||||||
|
Zapisuje bieżący obraz w pliku określonym przez
filename w formacie określonym przez format .
|
Metody publiczne
string convertToBytes (format string)
Konwertuje bieżący obraz na określony format i zwraca go jako ciąg znaków, do którego można później uzyskać dostęp w postaci iterowalnego pliku binarnego.
Argumenty
format | Żądany format wyjściowy. Obsługiwane są wszystkie typowe formaty rastrowe. Wartość domyślna to „png” (Portable Network Graphics). |
---|
tuple getRawPixel (liczba całkowita x, liczba całkowita y)
Zwraca pojedynczy piksel w lokalizacji obrazu (x,y) jako kropkę z liczby całkowitej, w postaci (a,r,g,b).
Argumenty
x | Pozycja piksela w poziomie zaczynająca się od 0 po lewej stronie ekranu. |
---|---|
Y | Położenie piksela w pionie, począwszy od 0 u góry ekranu w orientacji, w jakiej był w momencie zrobienia zrzutu ekranu. |
Zwroty
- Kropka liczb całkowitych reprezentujących piksel w postaci (a,r,g,b), gdzie a oznacza wartość kanału alfa, a r, g i b to odpowiednio wartości czerwone, zielone i niebieskie.
tuple getRawPixelInt (integer x, liczba całkowita y)
Zwraca pojedynczy piksel w lokalizacji obrazu (x,y) jako liczbę całkowitą. Użyj tej metody, aby oszczędzać pamięć.
Argumenty
x | Pozycja piksela w poziomie zaczynająca się od 0 po lewej stronie ekranu. |
---|---|
Y | Położenie piksela w pionie, począwszy od 0 u góry ekranu w orientacji, w jakiej był w momencie zrobienia zrzutu ekranu. |
Zwroty
- Wartości a, r, g i b piksela w postaci 8-bitowych wartości połączonych w 32-bitową liczbę całkowitą: 8 bitów jako 8 bitów po lewej stronie, r w prawo i tak dalej.
MonkeyImage
getSubImage
(tuple rect)
Tworzy nowy obiekt MonkeyImage
z prostokątnego zaznaczenia bieżącego obrazu.
Argumenty
prostokąt |
Kropka (x, y, w, h) określająca wybór. x i y określają położenie piksela w lewym górnym rogu zaznaczenia, w odniesieniu do 0. W określ szerokość obszaru, a h – wysokość w jednostkach wyrażonych w pikselach.
Orientacja obrazu jest taka sama jak orientacja ekranu w momencie zrobienia zrzutu ekranu. |
---|
Zwroty
-
Nowy obiekt
MonkeyImage
zawierający zaznaczenie.
boolean
sameAs
(
MonkeyImage
otherImage,
float percent
)
Porównuje ten obiekt MonkeyImage
z innym i zwraca wynik porównania. Argument percent
określa różnicę procentową, która jest dozwolona, gdy dwa obrazy mają być „równe”.
Argumenty
inna |
Kolejny obiekt MonkeyImage do porównania z tym.
|
---|---|
procent |
Liczba zmiennoprzecinkowa z zakresu od 0,0 do 1,0 włącznie, wskazująca odsetek pikseli, które muszą być takie same, aby metoda zwróciła wartość true . Wartość domyślna to 1.0, co oznacza, że wszystkie piksele muszą pasować.
|
Zwroty
-
Wartość logiczna
true
, jeśli obrazy pasują, lub wartość logicznafalse
w przeciwnym razie.
void writeToFile (nazwa pliku ciągu znaków, format string)
Zapisuje bieżący obraz w pliku określonym przez filename
w formacie określonym przez format
.
Argumenty
ścieżka | Pełna nazwa i rozszerzenie pliku wyjściowego. |
---|---|
format | Format wyjściowy pliku. Jeśli nie podasz formatu, metoda próbuje odgadnąć format na podstawie rozszerzenia nazwy pliku. Jeśli nie podano rozszerzenia i nie określono formatu, używany jest domyślny format „png” (Portable Network Graphics). |