package com.ifpdos.factorytest.draw;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.Path;
import android.graphics.Rect;
import android.text.TextPaint;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.view.View;
import androidx.core.app.NotificationCompat;
import androidx.core.internal.view.SupportMenu;
import androidx.core.view.ViewCompat;
import com.ifpdos.factorytest.udi.TestResultBody;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;
import kotlin.Metadata;
import kotlin.Unit;
import kotlin.jvm.functions.Function1;
import kotlin.jvm.internal.DefaultConstructorMarker;
import kotlin.jvm.internal.Intrinsics;
import kotlin.text.StringsKt;

/* JADX INFO: compiled from: BoardView.kt */
/* JADX INFO: loaded from: classes.dex */
@Metadata(d1 = {"\u0000|\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\b\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0010\u0007\n\u0002\b\u0005\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0010\u0002\n\u0002\b\u0003\n\u0002\u0010%\n\u0002\u0018\u0002\n\u0002\u0010\u000b\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0002\b\u0007\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0002\b\u000e\n\u0002\u0018\u0002\n\u0002\b\u0013\u0018\u00002\u00020\u0001B%\b\u0007\u0012\u0006\u0010\u0002\u001a\u00020\u0003\u0012\n\b\u0002\u0010\u0004\u001a\u0004\u0018\u00010\u0005\u0012\b\b\u0002\u0010\u0006\u001a\u00020\u0007¢\u0006\u0002\u0010\bJ\u0018\u00104\u001a\u00020\r2\u0006\u00105\u001a\u00020$2\u0006\u00106\u001a\u00020$H\u0002J\u0010\u00107\u001a\u00020\u00152\u0006\u00105\u001a\u00020$H\u0002J\u0018\u00108\u001a\u00020\u00152\u0006\u00109\u001a\u00020\u00072\u0006\u0010:\u001a\u00020\u0007H\u0002J\u0010\u0010;\u001a\u00020\u00152\u0006\u00105\u001a\u00020$H\u0002J\u0010\u0010<\u001a\u00020\u00152\u0006\u00105\u001a\u00020$H\u0002J\u0010\u0010=\u001a\u00020\u00152\u0006\u0010>\u001a\u00020?H\u0002J\u0010\u0010@\u001a\u00020\u00152\u0006\u0010>\u001a\u00020?H\u0002J\u0010\u0010A\u001a\u00020\u00152\u0006\u00105\u001a\u00020$H\u0002J\b\u0010B\u001a\u00020\u001bH\u0002J\u0010\u0010C\u001a\u00020\u001b2\u0006\u00105\u001a\u00020$H\u0002J\b\u0010D\u001a\u00020\u0015H\u0002J\b\u0010E\u001a\u00020\u0015H\u0002J\b\u0010F\u001a\u00020\u0015H\u0002J\u0010\u0010G\u001a\u00020\u00152\u0006\u0010>\u001a\u00020?H\u0014J\u0018\u0010H\u001a\u00020\u00152\u0006\u0010I\u001a\u00020\u00072\u0006\u0010J\u001a\u00020\u0007H\u0014J\u0010\u0010K\u001a\u00020\u001b2\u0006\u00105\u001a\u00020$H\u0016J\u0006\u0010L\u001a\u00020\u0015J\b\u0010M\u001a\u00020\u0015H\u0002J\u001e\u0010N\u001a\u00020\u00152\u0016\u0010O\u001a\u0012\u0012\b\u0012\u00060\nj\u0002`\u0014\u0012\u0004\u0012\u00020\u00150\u0013J\u0014\u0010P\u001a\u00020\u00152\n\u0010Q\u001a\u00060\nj\u0002`\u0014H\u0002R\u000e\u0010\t\u001a\u00020\nX\u0082\u0004¢\u0006\u0002\n\u0000R\u000e\u0010\u000b\u001a\u00020\nX\u0082\u0004¢\u0006\u0002\n\u0000R\u000e\u0010\f\u001a\u00020\rX\u0082\u0004¢\u0006\u0002\n\u0000R\u000e\u0010\u000e\u001a\u00020\nX\u0082\u0004¢\u0006\u0002\n\u0000R\u000e\u0010\u000f\u001a\u00020\nX\u0082\u0004¢\u0006\u0002\n\u0000R\u000e\u0010\u0010\u001a\u00020\nX\u0082\u0004¢\u0006\u0002\n\u0000R\u000e\u0010\u0011\u001a\u00020\nX\u0082\u0004¢\u0006\u0002\n\u0000R\u001e\u0010\u0012\u001a\u0012\u0012\b\u0012\u00060\nj\u0002`\u0014\u0012\u0004\u0012\u00020\u00150\u0013X\u0082.¢\u0006\u0002\n\u0000R\u000e\u0010\u0016\u001a\u00020\u0007X\u0082D¢\u0006\u0002\n\u0000R\u000e\u0010\u0017\u001a\u00020\u0007X\u0082D¢\u0006\u0002\n\u0000R\u001a\u0010\u0018\u001a\u000e\u0012\u0004\u0012\u00020\u001a\u0012\u0004\u0012\u00020\u001b0\u0019X\u0082\u0004¢\u0006\u0002\n\u0000R\u000e\u0010\u001c\u001a\u00020\u001dX\u0082\u0004¢\u0006\u0002\n\u0000R\u000e\u0010\u001e\u001a\u00020\u001bX\u0082\u000e¢\u0006\u0002\n\u0000R\u000e\u0010\u001f\u001a\u00020 X\u0082\u0004¢\u0006\u0002\n\u0000R\u000e\u0010!\u001a\u00020\u0007X\u0082\u000e¢\u0006\u0002\n\u0000R\u000e\u0010\"\u001a\u00020 X\u0082\u0004¢\u0006\u0002\n\u0000R\u000e\u0010#\u001a\u00020$X\u0082.¢\u0006\u0002\n\u0000R\u0011\u0010%\u001a\u00020\r¢\u0006\b\n\u0000\u001a\u0004\b&\u0010'R\u000e\u0010(\u001a\u00020\u001dX\u0082\u0004¢\u0006\u0002\n\u0000R\u000e\u0010)\u001a\u00020 X\u0082\u0004¢\u0006\u0002\n\u0000R\u000e\u0010*\u001a\u00020\u0007X\u0082\u000e¢\u0006\u0002\n\u0000R\u001a\u0010+\u001a\u000e\u0012\u0004\u0012\u00020,\u0012\u0004\u0012\u00020\u001b0\u0019X\u0082\u0004¢\u0006\u0002\n\u0000R\u000e\u0010-\u001a\u00020\u0007X\u0082\u000e¢\u0006\u0002\n\u0000R\u000e\u0010.\u001a\u00020 X\u0082\u0004¢\u0006\u0002\n\u0000R\u000e\u0010/\u001a\u000200X\u0082\u0004¢\u0006\u0002\n\u0000R\u0012\u00101\u001a\u00060\nj\u0002`\u0014X\u0082\u000e¢\u0006\u0002\n\u0000R\u000e\u00102\u001a\u00020\u001aX\u0082.¢\u0006\u0002\n\u0000R\u000e\u00103\u001a\u00020\u0007X\u0082\u000e¢\u0006\u0002\n\u0000¨\u0006R"}, d2 = {"Lcom/ifpdos/factorytest/draw/BoardView;", "Landroid/view/View;", "context", "Landroid/content/Context;", "attrs", "Landroid/util/AttributeSet;", "defStyleAttr", "", "(Landroid/content/Context;Landroid/util/AttributeSet;I)V", "BROKEN_LINE_RESULT", "Lcom/ifpdos/factorytest/udi/TestResultBody;", "LEAPFROG_TEST_RESULT", "MAX_VALID_DISTANCE", "", "NO_START_RESULT", "OFFSET_RESULT", "PASS_RESULT", "UNTOUCHABLE_RESULT", "mCallback", "Lkotlin/Function1;", "Lcom/ifpdos/factorytest/draw/TouchTestResult;", "", "mColumn", "mDiagonalColumn", "mDiagonalRectMap", "", "Lcom/ifpdos/factorytest/draw/DiagonalRect;", "", "mDiagonalRectPath", "Landroid/graphics/Path;", "mEventValid", "mFillPaint", "Landroid/graphics/Paint;", "mHeightSize", "mInitFillPaint", "mLastEvent", "Landroid/view/MotionEvent;", "mOffset", "getMOffset", "()F", "mPath", "mPenPaint", "mRectHeight", "mRectMap", "Landroid/graphics/Rect;", "mRectWidth", "mStrokePaint", "mTextPaint", "Landroid/text/TextPaint;", "mTouchTestResult", "mUpTargetRect", "mWidthSize", "calculateDistance", NotificationCompat.CATEGORY_EVENT, "lastEvent", "checkEventValid", "checkTouchRect", "x", "y", "checkUpEvent", "drawPath", "drawRect", "canvas", "Landroid/graphics/Canvas;", "drawTips", "handleTouchEvent", "isAllRectSelect", "isUpInTarget", "measureBackDiagonalRect", "measureDiagonalRect", "measureRect", "onDraw", "onMeasure", "widthMeasureSpec", "heightMeasureSpec", "onTouchEvent", "reset", "resetRectMap", "setTestResult", "callback", "setTouchTestRes", "testResult", "app_generalRelease"}, k = 1, mv = {1, 8, 0}, xi = 48)
public final class BoardView extends View {
    private final TestResultBody BROKEN_LINE_RESULT;
    private final TestResultBody LEAPFROG_TEST_RESULT;
    private final float MAX_VALID_DISTANCE;
    private final TestResultBody NO_START_RESULT;
    private final TestResultBody OFFSET_RESULT;
    private final TestResultBody PASS_RESULT;
    private final TestResultBody UNTOUCHABLE_RESULT;
    private Function1<? super TestResultBody, Unit> mCallback;
    private final int mColumn;
    private final int mDiagonalColumn;
    private final Map<DiagonalRect, Boolean> mDiagonalRectMap;
    private final Path mDiagonalRectPath;
    private boolean mEventValid;
    private final Paint mFillPaint;
    private int mHeightSize;
    private final Paint mInitFillPaint;
    private MotionEvent mLastEvent;
    private final float mOffset;
    private final Path mPath;
    private final Paint mPenPaint;
    private int mRectHeight;
    private final Map<Rect, Boolean> mRectMap;
    private int mRectWidth;
    private final Paint mStrokePaint;
    private final TextPaint mTextPaint;
    private TestResultBody mTouchTestResult;
    private DiagonalRect mUpTargetRect;
    private int mWidthSize;

    /* JADX WARN: 'this' call moved to the top of the method (can break code semantics) */
    public BoardView(Context context) {
        this(context, null, 0, 6, null);
        Intrinsics.checkNotNullParameter(context, "context");
    }

    /* JADX WARN: 'this' call moved to the top of the method (can break code semantics) */
    public BoardView(Context context, AttributeSet attributeSet) {
        this(context, attributeSet, 0, 4, null);
        Intrinsics.checkNotNullParameter(context, "context");
    }

    public /* synthetic */ BoardView(Context context, AttributeSet attributeSet, int i, int i2, DefaultConstructorMarker defaultConstructorMarker) {
        this(context, (i2 & 2) != 0 ? null : attributeSet, (i2 & 4) != 0 ? 0 : i);
    }

    /* JADX WARN: 'super' call moved to the top of the method (can break code semantics) */
    public BoardView(Context context, AttributeSet attributeSet, int i) {
        super(context, attributeSet, i);
        Intrinsics.checkNotNullParameter(context, "context");
        this.MAX_VALID_DISTANCE = BoardViewKt.getDp(66);
        this.LEAPFROG_TEST_RESULT = new TestResultBody(false, "leap frog");
        this.BROKEN_LINE_RESULT = new TestResultBody(false, "broken line");
        this.OFFSET_RESULT = new TestResultBody(false, "off set");
        this.UNTOUCHABLE_RESULT = new TestResultBody(false, "untouchable");
        TestResultBody testResultBody = new TestResultBody(false, "no start");
        this.NO_START_RESULT = testResultBody;
        this.PASS_RESULT = new TestResultBody(true, "pass");
        this.mPath = new Path();
        this.mDiagonalRectPath = new Path();
        TextPaint textPaint = new TextPaint();
        textPaint.setColor(SupportMenu.CATEGORY_MASK);
        textPaint.setTextSize(BoardViewKt.getSp(16));
        this.mTextPaint = textPaint;
        Paint paint = new Paint();
        paint.setAntiAlias(true);
        paint.setColor(ViewCompat.MEASURED_STATE_MASK);
        paint.setStrokeWidth(BoardViewKt.getDp(1));
        paint.setStyle(Paint.Style.STROKE);
        this.mStrokePaint = paint;
        Paint paint2 = new Paint();
        paint2.setAntiAlias(true);
        paint2.setColor(-1);
        paint2.setStyle(Paint.Style.FILL_AND_STROKE);
        this.mInitFillPaint = paint2;
        Paint paint3 = new Paint();
        paint3.setAntiAlias(true);
        paint3.setColor(-16711936);
        paint3.setStrokeWidth(BoardViewKt.getDp(1));
        paint3.setStyle(Paint.Style.FILL_AND_STROKE);
        this.mFillPaint = paint3;
        Paint paint4 = new Paint();
        paint4.setAntiAlias(true);
        paint4.setColor(SupportMenu.CATEGORY_MASK);
        paint4.setStrokeWidth(BoardViewKt.getDp(3));
        paint4.setStyle(Paint.Style.STROKE);
        this.mPenPaint = paint4;
        this.mColumn = 24;
        this.mDiagonalColumn = 20;
        this.mOffset = BoardViewKt.getDp(40) / ((float) Math.sqrt(2.0f));
        this.mRectMap = new LinkedHashMap();
        this.mDiagonalRectMap = new LinkedHashMap();
        this.mEventValid = true;
        this.mTouchTestResult = testResultBody;
    }

    public final float getMOffset() {
        return this.mOffset;
    }

    public final void reset() {
        this.mEventValid = true;
        setTouchTestRes(this.NO_START_RESULT);
        this.mPath.reset();
        resetRectMap();
        invalidate();
    }

    @Override // android.view.View
    public boolean onTouchEvent(MotionEvent event) {
        Intrinsics.checkNotNullParameter(event, "event");
        if (!this.mEventValid) {
            return super.onTouchEvent(event);
        }
        drawPath(event);
        handleTouchEvent(event);
        invalidate();
        this.mLastEvent = event;
        return true;
    }

    @Override // android.view.View
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
        super.onMeasure(widthMeasureSpec, heightMeasureSpec);
        this.mWidthSize = View.MeasureSpec.getSize(widthMeasureSpec);
        this.mHeightSize = View.MeasureSpec.getSize(heightMeasureSpec);
        this.mRectMap.clear();
        this.mDiagonalRectMap.clear();
        measureRect();
        measureDiagonalRect();
        measureBackDiagonalRect();
    }

    @Override // android.view.View
    protected void onDraw(Canvas canvas) {
        Intrinsics.checkNotNullParameter(canvas, "canvas");
        super.onDraw(canvas);
        drawRect(canvas);
        drawTips(canvas);
        canvas.drawPath(this.mPath, this.mPenPaint);
    }

    private final void drawTips(Canvas canvas) {
        for (Rect rect : this.mRectMap.keySet()) {
            if ((rect.top == 0 && rect.right != this.mWidthSize) || (rect.top == this.mRectHeight && rect.left == 0)) {
                if (rect.top == 0 && rect.left == 0) {
                    canvas.drawText("起点", rect.left, rect.centerY(), this.mTextPaint);
                }
                canvas.drawLine(rect.centerX(), rect.centerY(), rect.right, rect.centerY(), this.mStrokePaint);
                canvas.drawLine(rect.right, rect.centerY(), (rect.width() / 4) + rect.centerX(), (rect.height() / 4.0f) + rect.top, this.mStrokePaint);
                canvas.drawLine(rect.right, rect.centerY(), (rect.width() / 4) + rect.centerX(), rect.bottom - (rect.height() / 4.0f), this.mStrokePaint);
            } else if (rect.right == this.mWidthSize && rect.bottom != this.mHeightSize) {
                canvas.drawLine(rect.centerX(), rect.centerY(), rect.centerX(), rect.bottom, this.mStrokePaint);
                canvas.drawLine(rect.centerX(), rect.bottom, rect.centerX() - (rect.height() / 4.0f), rect.bottom - (rect.width() / 4.0f), this.mStrokePaint);
                canvas.drawLine(rect.centerX(), rect.bottom, (rect.height() / 4.0f) + rect.centerX(), rect.bottom - (rect.width() / 4.0f), this.mStrokePaint);
            } else if ((rect.bottom == this.mHeightSize && rect.left != 0) || (rect.top == this.mRectHeight && rect.right == this.mWidthSize - this.mRectWidth)) {
                canvas.drawLine(rect.centerX(), rect.centerY(), rect.left, rect.centerY(), this.mStrokePaint);
                canvas.drawLine(rect.left, rect.centerY(), rect.centerX() - (rect.width() / 4), (rect.height() / 4.0f) + rect.top, this.mStrokePaint);
                canvas.drawLine(rect.left, rect.centerY(), rect.centerX() - (rect.width() / 4), rect.bottom - (rect.height() / 4.0f), this.mStrokePaint);
            } else if ((rect.left == 0 && rect.top != this.mRectHeight) || (rect.right == this.mWidthSize - this.mRectWidth && rect.top != this.mRectHeight && rect.bottom != this.mHeightSize)) {
                canvas.drawLine(rect.centerX(), rect.centerY(), rect.centerX(), rect.top, this.mStrokePaint);
                canvas.drawLine(rect.centerX(), rect.top, rect.centerX() - (rect.height() / 4.0f), (rect.width() / 4.0f) + rect.top, this.mStrokePaint);
                canvas.drawLine(rect.centerX(), rect.top, (rect.height() / 4.0f) + rect.centerX(), (rect.width() / 4.0f) + rect.top, this.mStrokePaint);
            }
        }
        Set<DiagonalRect> setKeySet = this.mDiagonalRectMap.keySet();
        ArrayList<DiagonalRect> arrayList = new ArrayList();
        for (Object obj : setKeySet) {
            DiagonalRect diagonalRect = (DiagonalRect) obj;
            diagonalRect.getLeftBottomY();
            diagonalRect.getLeftTopY();
            diagonalRect.getRightTopX();
            diagonalRect.getLeftTopX();
            float f = 2;
            float leftTopX = (diagonalRect.getLeftTopX() + diagonalRect.getRightTopX()) / f;
            float leftTopY = (diagonalRect.getLeftTopY() + diagonalRect.getRightBottomY()) / f;
            float leftBottomX = diagonalRect.getLeftBottomX();
            DiagonalRect diagonalRect2 = this.mUpTargetRect;
            DiagonalRect diagonalRect3 = null;
            if (diagonalRect2 == null) {
                Intrinsics.throwUninitializedPropertyAccessException("mUpTargetRect");
                diagonalRect2 = null;
            }
            if (leftBottomX == diagonalRect2.getLeftBottomX()) {
                float leftBottomY = diagonalRect.getLeftBottomY();
                DiagonalRect diagonalRect4 = this.mUpTargetRect;
                if (diagonalRect4 == null) {
                    Intrinsics.throwUninitializedPropertyAccessException("mUpTargetRect");
                    diagonalRect4 = null;
                }
                if (leftBottomY == diagonalRect4.getLeftBottomY()) {
                    canvas.drawText("终点", leftTopX, leftTopY, this.mTextPaint);
                }
            }
            float leftBottomX2 = diagonalRect.getLeftBottomX();
            DiagonalRect diagonalRect5 = this.mUpTargetRect;
            if (diagonalRect5 == null) {
                Intrinsics.throwUninitializedPropertyAccessException("mUpTargetRect");
                diagonalRect5 = null;
            }
            if (leftBottomX2 == diagonalRect5.getLeftBottomX()) {
                float leftBottomY2 = diagonalRect.getLeftBottomY();
                DiagonalRect diagonalRect6 = this.mUpTargetRect;
                if (diagonalRect6 == null) {
                    Intrinsics.throwUninitializedPropertyAccessException("mUpTargetRect");
                } else {
                    diagonalRect3 = diagonalRect6;
                }
                if (leftBottomY2 == diagonalRect3.getLeftBottomY()) {
                }
            }
            if (((int) diagonalRect.getRightTopX()) != this.mWidthSize) {
                arrayList.add(obj);
            }
        }
        for (DiagonalRect diagonalRect7 : arrayList) {
            if (diagonalRect7.getLeftTopY() < diagonalRect7.getRightTopY()) {
                float leftBottomY3 = diagonalRect7.getLeftBottomY() - diagonalRect7.getLeftTopY();
                float rightTopX = diagonalRect7.getRightTopX() - diagonalRect7.getLeftTopX();
                float f2 = 2;
                float leftTopX2 = (diagonalRect7.getLeftTopX() + diagonalRect7.getRightTopX()) / f2;
                float leftTopY2 = (diagonalRect7.getLeftTopY() + diagonalRect7.getRightBottomY()) / f2;
                float f3 = leftBottomY3 / f2;
                canvas.drawLine(leftTopX2, leftTopY2, diagonalRect7.getRightBottomX(), diagonalRect7.getRightTopY() + f3, this.mStrokePaint);
                if (((int) diagonalRect7.getLeftTopX()) == this.mRectWidth) {
                    float f4 = 4;
                    canvas.drawLine(diagonalRect7.getRightBottomX(), diagonalRect7.getRightTopY() + f3, (rightTopX / f4) + leftTopX2, leftTopY2 - (leftBottomY3 / f4), this.mStrokePaint);
                } else {
                    canvas.drawLine(diagonalRect7.getRightBottomX(), diagonalRect7.getRightTopY() + f3, leftTopX2 + (rightTopX / 4), leftTopY2, this.mStrokePaint);
                }
                float f5 = 4;
                canvas.drawLine(diagonalRect7.getRightBottomX(), diagonalRect7.getRightTopY() + f3, leftTopX2 + (rightTopX / f5), leftTopY2 + (leftBottomY3 / f5), this.mStrokePaint);
            } else {
                float leftBottomY4 = diagonalRect7.getLeftBottomY() - diagonalRect7.getLeftTopY();
                float rightTopX2 = diagonalRect7.getRightTopX() - diagonalRect7.getLeftTopX();
                float f6 = 2;
                float leftTopX3 = (diagonalRect7.getLeftTopX() + diagonalRect7.getRightTopX()) / f6;
                float rightTopY = (diagonalRect7.getRightTopY() + diagonalRect7.getLeftBottomY()) / f6;
                float f7 = leftBottomY4 / f6;
                canvas.drawLine(leftTopX3, rightTopY, diagonalRect7.getLeftBottomX(), diagonalRect7.getLeftTopY() + f7, this.mStrokePaint);
                if (((int) diagonalRect7.getRightTopY()) == this.mRectHeight) {
                    float f8 = 4;
                    canvas.drawLine(diagonalRect7.getLeftBottomX(), diagonalRect7.getLeftTopY() + f7, leftTopX3 - (rightTopX2 / f8), rightTopY - (leftBottomY4 / f8), this.mStrokePaint);
                } else {
                    canvas.drawLine(diagonalRect7.getLeftBottomX(), diagonalRect7.getLeftTopY() + f7, leftTopX3 - (rightTopX2 / 4), rightTopY, this.mStrokePaint);
                }
                float f9 = 4;
                canvas.drawLine(diagonalRect7.getLeftBottomX(), diagonalRect7.getLeftTopY() + f7, leftTopX3 - (rightTopX2 / f9), rightTopY + (leftBottomY4 / f9), this.mStrokePaint);
            }
        }
    }

    private final void drawRect(Canvas canvas) {
        Iterator<T> it = this.mDiagonalRectMap.entrySet().iterator();
        while (it.hasNext()) {
            Map.Entry entry = (Map.Entry) it.next();
            DiagonalRect diagonalRect = (DiagonalRect) entry.getKey();
            Path path = this.mDiagonalRectPath;
            path.reset();
            path.moveTo(diagonalRect.getLeftTopX(), diagonalRect.getLeftTopY());
            path.lineTo(diagonalRect.getRightTopX(), diagonalRect.getRightTopY());
            path.lineTo(diagonalRect.getRightBottomX(), diagonalRect.getRightBottomY());
            path.lineTo(diagonalRect.getLeftBottomX(), diagonalRect.getLeftBottomY());
            path.close();
            if (((Boolean) entry.getValue()).booleanValue()) {
                canvas.drawPath(this.mDiagonalRectPath, this.mFillPaint);
            } else {
                canvas.drawPath(this.mDiagonalRectPath, this.mInitFillPaint);
                canvas.drawPath(this.mDiagonalRectPath, this.mStrokePaint);
            }
        }
        Iterator<T> it2 = this.mRectMap.entrySet().iterator();
        while (it2.hasNext()) {
            Map.Entry entry2 = (Map.Entry) it2.next();
            if (((Boolean) entry2.getValue()).booleanValue()) {
                canvas.drawRect((Rect) entry2.getKey(), this.mFillPaint);
            } else {
                canvas.drawRect((Rect) entry2.getKey(), this.mInitFillPaint);
                canvas.drawRect((Rect) entry2.getKey(), this.mStrokePaint);
            }
        }
    }

    private final void drawPath(MotionEvent event) {
        int action = event.getAction();
        if (action == 0) {
            this.mPath.reset();
            this.mPath.moveTo(event.getX(), event.getY());
        } else {
            if (action != 2) {
                return;
            }
            this.mPath.lineTo(event.getX(), event.getY());
        }
    }

    private final void measureRect() {
        int i = this.mWidthSize;
        int i2 = this.mHeightSize;
        int i3 = this.mColumn;
        int i4 = (int) ((((double) i3) * 0.66d) / ((double) (i / i2)));
        this.mRectHeight = i2 / i4;
        this.mRectWidth = i / i3;
        int i5 = 0;
        while (i5 < i3) {
            Map<Rect, Boolean> map = this.mRectMap;
            int i6 = this.mRectWidth;
            int i7 = i6 * i5;
            i5++;
            map.put(new Rect(i7, 0, i6 * i5, this.mRectHeight), false);
        }
        int i8 = this.mColumn;
        int i9 = 0;
        while (i9 < i8) {
            Map<Rect, Boolean> map2 = this.mRectMap;
            int i10 = this.mRectWidth;
            int i11 = this.mHeightSize;
            i9++;
            map2.put(new Rect(i10 * i9, i11 - this.mRectHeight, i10 * i9, i11), false);
        }
        int i12 = 0;
        while (i12 < i4) {
            Map<Rect, Boolean> map3 = this.mRectMap;
            int i13 = this.mRectHeight;
            i12++;
            map3.put(new Rect(0, i13 * i12, this.mRectWidth, i13 * i12), false);
        }
        int i14 = 0;
        while (i14 < i4) {
            Map<Rect, Boolean> map4 = this.mRectMap;
            int i15 = this.mWidthSize;
            int i16 = i15 - this.mRectWidth;
            int i17 = this.mRectHeight;
            int i18 = i17 * i14;
            i14++;
            map4.put(new Rect(i16, i18, i15, i17 * i14), false);
        }
        int i19 = i4 - 2;
        for (int i20 = 0; i20 < i19; i20++) {
            if (i20 == i4 - 3) {
                Map<Rect, Boolean> map5 = this.mRectMap;
                int i21 = this.mWidthSize;
                int i22 = this.mRectWidth;
                int i23 = this.mRectHeight;
                map5.put(new Rect(i21 - (i22 * 2), i23 * i20, i21 - i22, i23 * (i20 + 2)), false);
            } else {
                Map<Rect, Boolean> map6 = this.mRectMap;
                int i24 = this.mWidthSize;
                int i25 = this.mRectWidth;
                int i26 = this.mRectHeight;
                map6.put(new Rect(i24 - (i25 * 2), i26 * i20, i24 - i25, i26 * (i20 + 1)), false);
            }
        }
    }

    /* JADX WARN: Removed duplicated region for block: B:13:0x006c  */
    /* JADX WARN: Removed duplicated region for block: B:18:0x0082 A[SYNTHETIC] */
    /*
        Code decompiled incorrectly, please refer to instructions dump.
        To view partially-correct add '--show-bad-code' argument
    */
    private final void measureDiagonalRect() {
        /*
            r25 = this;
            r0 = r25
            int r1 = r0.mRectHeight
            int r2 = r0.mRectWidth
            int r3 = r0.mWidthSize
            int r4 = r2 * 3
            int r3 = r3 - r4
            float r3 = (float) r3
            int r4 = r0.mHeightSize
            int r5 = r1 * 2
            int r4 = r4 - r5
            float r4 = (float) r4
            int r5 = r0.mDiagonalColumn
            float r6 = (float) r5
            float r6 = r3 / r6
            float r4 = r4 / r3
            r3 = 0
            r7 = r3
        L1a:
            if (r7 >= r5) goto L84
            float r8 = (float) r7
            float r8 = r8 * r6
            float r9 = r8 * r4
            float r10 = r0.mOffset
            float r11 = r9 - r10
            float r12 = (float) r1
            float r11 = r11 + r12
            int r13 = r7 + 1
            float r14 = (float) r13
            float r14 = r14 * r6
            float r15 = r14 * r4
            float r16 = r15 - r10
            float r16 = r16 + r12
            float r9 = r9 + r10
            float r9 = r9 + r12
            float r15 = r15 + r10
            float r15 = r15 + r12
            if (r7 != 0) goto L3b
            int r7 = r0.mRectHeight
            float r11 = (float) r7
            float r9 = r9 + r10
            goto L55
        L3b:
            int r10 = r0.mDiagonalColumn
            int r10 = r10 + (-1)
            if (r7 != r10) goto L55
            int r7 = r0.mHeightSize
            int r10 = r0.mRectHeight
            int r12 = r10 * 2
            int r12 = r7 - r12
            float r12 = (float) r12
            int r7 = r7 - r10
            float r15 = (float) r7
            r24 = r9
            r18 = r11
            r20 = r12
            r22 = r15
            goto L5d
        L55:
            r24 = r9
            r18 = r11
            r22 = r15
            r20 = r16
        L5d:
            float r7 = (float) r2
            float r21 = r14 + r7
            int r9 = r0.mWidthSize
            int r10 = r0.mRectWidth
            int r10 = r10 * 2
            int r9 = r9 - r10
            float r9 = (float) r9
            int r9 = (r21 > r9 ? 1 : (r21 == r9 ? 0 : -1))
            if (r9 > 0) goto L82
            com.ifpdos.factorytest.draw.DiagonalRect r9 = new com.ifpdos.factorytest.draw.DiagonalRect
            float r23 = r8 + r7
            r16 = r9
            r17 = r23
            r19 = r21
            r16.<init>(r17, r18, r19, r20, r21, r22, r23, r24)
            java.util.Map<com.ifpdos.factorytest.draw.DiagonalRect, java.lang.Boolean> r7 = r0.mDiagonalRectMap
            java.lang.Boolean r8 = java.lang.Boolean.valueOf(r3)
            r7.put(r9, r8)
        L82:
            r7 = r13
            goto L1a
        L84:
            return
        */
        throw new UnsupportedOperationException("Method not decompiled: com.ifpdos.factorytest.draw.BoardView.measureDiagonalRect():void");
    }

    /* JADX WARN: Removed duplicated region for block: B:13:0x0083  */
    /* JADX WARN: Removed duplicated region for block: B:18:0x0085 A[SYNTHETIC] */
    /*
        Code decompiled incorrectly, please refer to instructions dump.
        To view partially-correct add '--show-bad-code' argument
    */
    private final void measureBackDiagonalRect() {
        /*
            r27 = this;
            r0 = r27
            int r1 = r0.mRectHeight
            int r2 = r0.mRectWidth
            int r3 = r0.mWidthSize
            int r2 = r2 * 3
            int r3 = r3 - r2
            float r2 = (float) r3
            int r3 = r0.mHeightSize
            int r4 = r1 * 2
            int r3 = r3 - r4
            float r3 = (float) r3
            int r5 = r0.mDiagonalColumn
            float r6 = (float) r5
            float r6 = r2 / r6
            float r3 = r3 / r2
            r7 = 0
        L19:
            if (r7 >= r5) goto L89
            float r8 = -r6
            float r9 = (float) r7
            float r10 = r8 * r9
            float r10 = r10 * r3
            float r11 = r0.mOffset
            float r12 = r10 - r11
            int r13 = r0.mHeightSize
            float r14 = (float) r13
            float r12 = r12 + r14
            float r14 = (float) r1
            float r12 = r12 - r14
            int r15 = r7 + 1
            float r2 = (float) r15
            float r8 = r8 * r2
            float r8 = r8 * r3
            float r16 = r8 - r11
            r17 = r3
            float r3 = (float) r13
            float r16 = r16 + r3
            float r16 = r16 - r14
            float r10 = r10 + r11
            float r3 = (float) r13
            float r10 = r10 + r3
            float r10 = r10 - r14
            float r8 = r8 + r11
            float r3 = (float) r13
            float r8 = r8 + r3
            float r8 = r8 - r14
            if (r7 != 0) goto L48
            int r3 = r13 - r4
            float r12 = (float) r3
            int r13 = r13 - r1
            float r10 = (float) r13
            goto L58
        L48:
            int r3 = r0.mDiagonalColumn
            int r3 = r3 + (-1)
            if (r7 != r3) goto L58
            float r8 = (float) r4
            r24 = r8
            r26 = r10
            r20 = r12
            r22 = r14
            goto L60
        L58:
            r24 = r8
            r26 = r10
            r20 = r12
            r22 = r16
        L60:
            com.ifpdos.factorytest.draw.DiagonalRect r3 = new com.ifpdos.factorytest.draw.DiagonalRect
            float r9 = r9 * r6
            int r8 = r0.mRectWidth
            float r10 = (float) r8
            float r19 = r9 + r10
            float r2 = r2 * r6
            float r10 = (float) r8
            float r21 = r2 + r10
            float r10 = (float) r8
            float r23 = r2 + r10
            float r2 = (float) r8
            float r25 = r9 + r2
            r18 = r3
            r18.<init>(r19, r20, r21, r22, r23, r24, r25, r26)
            java.util.Map<com.ifpdos.factorytest.draw.DiagonalRect, java.lang.Boolean> r2 = r0.mDiagonalRectMap
            r8 = 0
            java.lang.Boolean r9 = java.lang.Boolean.valueOf(r8)
            r2.put(r3, r9)
            if (r7 != 0) goto L85
            r0.mUpTargetRect = r3
        L85:
            r7 = r15
            r3 = r17
            goto L19
        L89:
            return
        */
        throw new UnsupportedOperationException("Method not decompiled: com.ifpdos.factorytest.draw.BoardView.measureBackDiagonalRect():void");
    }

    private final void handleTouchEvent(MotionEvent event) {
        checkEventValid(event);
        int action = event.getAction();
        if (action == 0) {
            checkTouchRect((int) event.getX(), (int) event.getY());
            return;
        }
        if (action != 1) {
            if (action != 2) {
                return;
            }
            checkTouchRect((int) event.getX(), (int) event.getY());
        } else {
            Function1<? super TestResultBody, Unit> function1 = this.mCallback;
            if (function1 == null) {
                Intrinsics.throwUninitializedPropertyAccessException("mCallback");
                function1 = null;
            }
            function1.invoke(this.mTouchTestResult);
            this.mEventValid = false;
        }
    }

    private final void checkEventValid(MotionEvent event) {
        MotionEvent motionEvent = this.mLastEvent;
        if (motionEvent != null) {
            if (motionEvent == null) {
                Intrinsics.throwUninitializedPropertyAccessException("mLastEvent");
                motionEvent = null;
            }
            if (calculateDistance(event, motionEvent) > this.MAX_VALID_DISTANCE) {
                setTouchTestRes(this.LEAPFROG_TEST_RESULT);
            }
        }
        if (event.getAction() == 1) {
            checkUpEvent(event);
        }
    }

    private final void checkUpEvent(MotionEvent event) {
        if (!isAllRectSelect()) {
            if (isUpInTarget(event)) {
                setTouchTestRes(this.UNTOUCHABLE_RESULT);
                return;
            } else {
                setTouchTestRes(this.BROKEN_LINE_RESULT);
                return;
            }
        }
        setTouchTestRes(this.PASS_RESULT);
    }

    private final boolean isUpInTarget(MotionEvent event) {
        float x = event.getX();
        float y = event.getY();
        DiagonalRect diagonalRect = this.mUpTargetRect;
        DiagonalRect diagonalRect2 = null;
        if (diagonalRect == null) {
            Intrinsics.throwUninitializedPropertyAccessException("mUpTargetRect");
            diagonalRect = null;
        }
        if (diagonalRect.getLeftBottomX() < x) {
            DiagonalRect diagonalRect3 = this.mUpTargetRect;
            if (diagonalRect3 == null) {
                Intrinsics.throwUninitializedPropertyAccessException("mUpTargetRect");
                diagonalRect3 = null;
            }
            if (diagonalRect3.getRightBottomX() > x) {
                DiagonalRect diagonalRect4 = this.mUpTargetRect;
                if (diagonalRect4 == null) {
                    Intrinsics.throwUninitializedPropertyAccessException("mUpTargetRect");
                    diagonalRect4 = null;
                }
                if (diagonalRect4.getLeftTopY() < y) {
                    DiagonalRect diagonalRect5 = this.mUpTargetRect;
                    if (diagonalRect5 == null) {
                        Intrinsics.throwUninitializedPropertyAccessException("mUpTargetRect");
                        diagonalRect5 = null;
                    }
                    if (diagonalRect5.getRightBottomY() <= y) {
                    }
                    return true;
                }
                DiagonalRect diagonalRect6 = this.mUpTargetRect;
                if (diagonalRect6 == null) {
                    Intrinsics.throwUninitializedPropertyAccessException("mUpTargetRect");
                    diagonalRect6 = null;
                }
                if (diagonalRect6.getLeftBottomY() > y) {
                    DiagonalRect diagonalRect7 = this.mUpTargetRect;
                    if (diagonalRect7 == null) {
                        Intrinsics.throwUninitializedPropertyAccessException("mUpTargetRect");
                    } else {
                        diagonalRect2 = diagonalRect7;
                    }
                    if (diagonalRect2.getRightTopY() < y) {
                        return true;
                    }
                }
            }
        }
        return false;
    }

    /* JADX WARN: Removed duplicated region for block: B:14:0x0033  */
    /*
        Code decompiled incorrectly, please refer to instructions dump.
        To view partially-correct add '--show-bad-code' argument
    */
    private final boolean isAllRectSelect() {
        /*
            r2 = this;
            java.util.Map<android.graphics.Rect, java.lang.Boolean> r0 = r2.mRectMap
            boolean r1 = r0.isEmpty()
            if (r1 == 0) goto L9
            goto L2a
        L9:
            java.util.Set r0 = r0.entrySet()
            java.util.Iterator r0 = r0.iterator()
        L11:
            boolean r1 = r0.hasNext()
            if (r1 == 0) goto L2a
            java.lang.Object r1 = r0.next()
            java.util.Map$Entry r1 = (java.util.Map.Entry) r1
            java.lang.Object r1 = r1.getValue()
            java.lang.Boolean r1 = (java.lang.Boolean) r1
            boolean r1 = r1.booleanValue()
            if (r1 != 0) goto L11
            goto L53
        L2a:
            java.util.Map<com.ifpdos.factorytest.draw.DiagonalRect, java.lang.Boolean> r2 = r2.mDiagonalRectMap
            boolean r0 = r2.isEmpty()
            if (r0 == 0) goto L33
            goto L55
        L33:
            java.util.Set r2 = r2.entrySet()
            java.util.Iterator r2 = r2.iterator()
        L3b:
            boolean r0 = r2.hasNext()
            if (r0 == 0) goto L55
            java.lang.Object r0 = r2.next()
            java.util.Map$Entry r0 = (java.util.Map.Entry) r0
            java.lang.Object r0 = r0.getValue()
            java.lang.Boolean r0 = (java.lang.Boolean) r0
            boolean r0 = r0.booleanValue()
            if (r0 != 0) goto L3b
        L53:
            r2 = 0
            goto L56
        L55:
            r2 = 1
        L56:
            return r2
        */
        throw new UnsupportedOperationException("Method not decompiled: com.ifpdos.factorytest.draw.BoardView.isAllRectSelect():boolean");
    }

    private final void checkTouchRect(int x, int y) {
        Set<Map.Entry<Rect, Boolean>> setEntrySet = this.mRectMap.entrySet();
        ArrayList arrayList = new ArrayList();
        for (Object obj : setEntrySet) {
            if (((Rect) ((Map.Entry) obj).getKey()).contains(x, y)) {
                arrayList.add(obj);
            }
        }
        Iterator it = arrayList.iterator();
        boolean z = false;
        while (it.hasNext()) {
            ((Map.Entry) it.next()).setValue(true);
            z = true;
        }
        Set<Map.Entry<DiagonalRect, Boolean>> setEntrySet2 = this.mDiagonalRectMap.entrySet();
        ArrayList arrayList2 = new ArrayList();
        for (Object obj2 : setEntrySet2) {
            DiagonalRect diagonalRect = (DiagonalRect) ((Map.Entry) obj2).getKey();
            float f = x;
            if (diagonalRect.getLeftBottomX() <= f && diagonalRect.getRightBottomX() >= f) {
                float f2 = y;
                if ((diagonalRect.getLeftTopY() <= f2 && diagonalRect.getRightBottomY() >= f2) || (diagonalRect.getLeftBottomY() >= f2 && diagonalRect.getRightTopY() <= f2)) {
                    arrayList2.add(obj2);
                }
            }
        }
        Iterator it2 = arrayList2.iterator();
        while (it2.hasNext()) {
            ((Map.Entry) it2.next()).setValue(true);
            z = true;
        }
        if (z) {
            return;
        }
        setTouchTestRes(this.OFFSET_RESULT);
    }

    private final void resetRectMap() {
        Iterator<T> it = this.mRectMap.entrySet().iterator();
        while (it.hasNext()) {
            ((Map.Entry) it.next()).setValue(false);
        }
        Iterator<T> it2 = this.mDiagonalRectMap.entrySet().iterator();
        while (it2.hasNext()) {
            ((Map.Entry) it2.next()).setValue(false);
        }
    }

    private final void setTouchTestRes(TestResultBody testResult) {
        if (Intrinsics.areEqual(this.mTouchTestResult, this.NO_START_RESULT)) {
            this.mTouchTestResult = testResult;
            return;
        }
        if (!(Intrinsics.areEqual(testResult, this.NO_START_RESULT) ? true : Intrinsics.areEqual(testResult, this.PASS_RESULT))) {
            if (StringsKt.contains$default((CharSequence) this.mTouchTestResult.getMessage(), (CharSequence) testResult.getMessage(), false, 2, (Object) null)) {
                testResult = this.mTouchTestResult;
            } else {
                testResult = TestResultBody.copy$default(testResult, false, this.mTouchTestResult.getMessage() + "|" + testResult.getMessage(), 1, null);
            }
        }
        this.mTouchTestResult = testResult;
    }

    private final float calculateDistance(MotionEvent event, MotionEvent lastEvent) {
        double d = 2;
        return (float) Math.sqrt(((float) Math.pow(lastEvent.getX() - event.getX(), d)) + ((float) Math.pow(lastEvent.getY() - event.getY(), d)));
    }

    public final void setTestResult(Function1<? super TestResultBody, Unit> callback) {
        Intrinsics.checkNotNullParameter(callback, "callback");
        this.mCallback = callback;
    }
}
