private Point ySearchFirstPoint(Point startPoint) {
        Point currPoint = new Point(startPoint.x, startPoint.y);

        while (startPoint.dF * currPoint.dF > 0) {
            if (currPoint.y <= yNull) {
                currPoint.setY(currPoint.y + 1);
            } else {
                break;
            }
        }
        Point preCurrPoint = new Point(currPoint.x, currPoint.y - 1);

        if (abs(preCurrPoint.dF) < abs(currPoint.dF)) {
            return preCurrPoint;
        } else {
            return currPoint;
        }

    }