use super::*;
pub const FACE_WIDTH: usize = 80;
pub const FACE_HEIGHT: usize = 80;
pub const FACE_OFFSET_X: usize = CAT_WIDTH / 2 - FACE_WIDTH / 2 - 1;
pub const FACE_OFFSET_Y: usize = CAT_HEIGHT / 2 - FACE_HEIGHT / 2;
pub fn draw_second(
buffer: &mut Image,
length: i64,
width: i64,
offset: i64,
fraction_of_a_circle: f64,
) {
let width = width as f64;
let length = length as f64;
let offset = offset as f64;
let angle: f64;
let cos_angle: f64;
let sin_angle: f64;
let ms: f64;
let mc: f64;
let ws: f64;
let wc: f64;
let mid: f64;
let mut _x: i64;
let mut _y: i64;
angle = 2. * PI * fraction_of_a_circle;
cos_angle = f64::cos(angle);
sin_angle = f64::sin(angle);
mid = (length + offset) / 2.;
mc = mid * cos_angle;
ms = mid * sin_angle;
wc = width * cos_angle;
ws = width * sin_angle;
let center_point = ((FACE_WIDTH / 2) as i64, (FACE_HEIGHT / 2) as i64);
{
let x0 = center_point.0 + (length * sin_angle) as i64;
let y0 = center_point.1 - (length * cos_angle) as i64;
let x1 = center_point.0 + (ms - wc) as i64;
let y1 = center_point.1 - (mc + ws) as i64;
buffer.plot_line_width((x0, y0), (x1, y1), 1.0);
}
{
let x0 = center_point.0 + (ms - wc) as i64;
let y0 = center_point.1 - (mc + ws) as i64;
let x1 = center_point.0 + (offset * sin_angle) as i64;
let y1 = center_point.1 - (offset * cos_angle) as i64;
buffer.plot_line_width((x0, y0), (x1, y1), 1.0);
}
{
let x0 = center_point.0 + (offset * sin_angle) as i64;
let y0 = center_point.1 - (offset * cos_angle) as i64;
let x1 = center_point.0 + (ms + wc) as i64;
let y1 = center_point.1 - (mc - ws) as i64;
buffer.plot_line_width((x0, y0), (x1, y1), 1.0);
}
{
let x0 = center_point.0 + (ms + wc) as i64;
let y0 = center_point.1 - (mc - ws) as i64;
let x1 = center_point.0 + (length * sin_angle) as i64;
let y1 = center_point.1 - (length * cos_angle) as i64;
buffer.plot_line_width((x0, y0), (x1, y1), 1.0);
}
}