sikuli-driver team mailing list archive
-
sikuli-driver team
-
Mailing list archive
-
Message #22361
[Bug 1251163] Re: [request] add feature to get pixel color of a captured image
I try to launch your code with some modification :
from java.awt import Color
from java.awt import Robot
def findItemsOfColor():
area = Region(0,0,600,400)
area.highlight(1)
wait(1)
x = area.x
y = area.y
i=0
while i==0:
x = x+1
p = Location(x,y)
aColor = Color(0x6969FF)
if Robot().getPixelColor(p.x, p.y) == aColor:
print "FOUND ITEM!!!"
click(x+4,y+4)
wait(1)
if x > area.x + area.w:
print "Searched row"
x = area.x
y = y + 1
if y > area.y + area.h:
i = 1
break
findItemsOfColor()
---
It's working but it's very slow. It's probably because you ask the color of each pixel directly without using a buffered image.
Try the code I release in #1. It should be faster. The function Robot().createScreenCapture() return a BufferedImage object.
Regards.
--
You received this bug notification because you are a member of Sikuli
Drivers, which is subscribed to Sikuli.
https://bugs.launchpad.net/bugs/1251163
Title:
[request] add feature to get pixel color of a captured image
Status in Sikuli:
In Progress
Bug description:
Hi! I'm trying to find colored pixels in a region with this code, but no luck :(
Can someone tell me whats wrong?
def findItemsOfColor():
area = Region(playground.x + 75,playground.y + 90,600,400)
area.highlight(1)
wait(1)
x = area.x
y = area.y
i=0
while i==0:
x = x+1
p = Location(x,y)
aColor = Color(0x6969FF)
if myRobot.getPixelColor(p.x, p.y) == aColor:
print "FOUND ITEM!!!"
click(x+4,y+4)
wait(1)
if x > area.x + area.w:
print "Searched row"
x = area.x
y = y + 1
if y > area.y + area.h:
i = 1
break
To manage notifications about this bug go to:
https://bugs.launchpad.net/sikuli/+bug/1251163/+subscriptions
References