commit 3c4b4e6ffc9fae8bf1d3e0cfd2ec234eda69713f
parent fdc4721ec6cf37bd8b66bba09e665f6f2b6fe81a
Author: n0tr1v <n0tr1v@protonmail.com>
Date: Wed, 29 Mar 2023 22:50:58 -0700
simplify code
Diffstat:
1 file changed, 6 insertions(+), 9 deletions(-)
diff --git a/src/lechatphp/mod.rs b/src/lechatphp/mod.rs
@@ -354,7 +354,6 @@ fn solve_difficulty3(img: &DynamicImage) -> Result<String, CaptchaErr> {
fn get_letter_in_direction(letter: &Letter, angle: f64, letters_map: &HashMap<char, Letter>) -> Option<Letter> {
- let mut angle = angle;
let mut min_angle = f64::MAX;
let mut out: Option<Letter> = None;
// Visit every other letters
@@ -363,13 +362,7 @@ fn get_letter_in_direction(letter: &Letter, angle: f64, letters_map: &HashMap<ch
continue;
}
// Find the angle between the two letters
- let mut t = get_angle(&other_letter.center(), &letter.center());
- if t < 0.0 {
- t += 2.0 * std::f64::consts::PI;
- }
- if angle < 0.0 {
- angle += 2.0 * std::f64::consts::PI;
- }
+ let t = get_angle(&other_letter.center(), &letter.center());
let angle_diff = (angle - t).abs();
if angle_diff < min_angle {
// Keep track of the letter with the smaller angle difference
@@ -381,7 +374,11 @@ fn get_letter_in_direction(letter: &Letter, angle: f64, letters_map: &HashMap<ch
}
fn get_angle(p1: &Point, p2: &Point) -> f64 {
- (p1.y as f64 - p2.y as f64).atan2(p1.x as f64 - p2.x as f64)
+ let mut angle = (p1.y as f64 - p2.y as f64).atan2(p1.x as f64 - p2.x as f64);
+ if angle < 0.0 {
+ angle += 2.0 * std::f64::consts::PI;
+ }
+ angle
}
#[derive(Debug)]