INNER CODE UNIT · Rust
find_color
autopilot-rs/autopy · src/bitmap.rs:177
fn find_color(
&self,
color: u32,
tolerance: Option<f64>,
rect: Option<((f64, f64), (f64, f64))>,
start_point: Option<(f64, f64)>,
) -> PyResult<Option<(f64, f64)>> {
let split_color = hex_to_rgb(color);
let rgb = Rgba([split_color.0, split_color.1, split_color.2, 255]);
let rect: Option<Rect> =
rect.map(|r| Rect::new(Point::new((r.0).0, (r.0).1), Size::new((r.1).0, (r.1).1)));
let start_point: Option<Point> = start_point.map(|p| Point::new(p.0, p.1));
if let Some(point) = self.bitmap.find_color(rgb, tolerance, rect, start_point) {
Ok(Some((point.x, point.y)))
} else {
Ok(None)
}
}