Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

PixelSearch


Gość Eieo

Rekomendowane odpowiedzi

Opublikowano

Mam 2 kwadraty ułożone poziomo obok siebie o wymiarach np. 50x50 px, które zawierają żółte pixele. W odległości np. 50 px od nich na lewo jest 1 kwadrat, który też zawiera żółte pixele, tak jak na rysunku. Czy jest możliwe napisanie w AutoIT programu, który by wykrywał te 2 żółte kwadraty poziomo obok siebie, i gdy dodatkowo wykryje trzeci żółty kwadrat na lewo w odległości np. 50 px od nich, to wykona dowoloną podaną przeze mnie czynność, np. przesunie myszką w jakieś miejsce? Nie mogę do tego użyć ImageSearch, bo między tymi trzema kwadratami pojawia się kwadrat o losowym kolorze i zrobienie tylu zdjęć zajęłoby mnóstwo czasu. Poza tym najpierw wolałbym użyć do tego PixelSearch, tylko nie wiem w ogóle jak to napisać o ile da się tak zrobić. Jest jeszcze jeden problem, nie mogę określić współrzędnych, bo taka sytuacja dzieje się w losowym miejscu.

 

1616914172697351161191.jpg

Opublikowano

Da rade, potrzebna ci będzie znajomość:

Normalnie: Pixelsearch i sumujesz wtedy wartość pixeli.

Normalnie inaczej:

pętli for (w sumie to obojętnie, ale najłatwiej w tej to zrobić).

pixelsearch

I jedziesz (pętlą for przenosisz szukanie pixeli o 1 kratkę - robisz iteracje).

8LTfBGw.jpg

Opublikowano

A jak można "pętlą for przenosić szukanie pixeli o 1 kratkę" w praktyce? Znam te pętle ale nie wiem jak to miałoby wyglądać.

Opublikowano

Z tego co pamiętam to w image search możesz sprecyzować kolor, który nie będzie brany pod uwagę (alfę) więc jeden obrazek mógłby starczyć.

Opublikowano

@Eieo

o jeden pixel np.

While 1
For $poz=0 To $poz=200 Step+1
$Pixel=Pixelsearch($poz, 0, 20, 300, 0xFF0000, 10)
Next
WEnd
Cytat

That is not dead which can eternal lie. And with strange aeons even death may die.

 

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...