Robot movement simulation [How to convert Java code to Python]

I am trying to solve this leetcode problem. Even though I solved it, I would like to see how I could translate my Java code to Python, since I am learning the language and its OOP components. How would the translated code look like?
This is the solution:

class Solution {
    public boolean judgeCircle(String moves) {
        Robot robot = new Robot(0, 0);
        
        for (int i = 0; i < moves.length(); i++) {
            char direction = moves.charAt(i);
            robot.move(direction);
        }
        
        return robot.isAtOrigin();
    }
}

class Robot {
    public static final char UP = 'U';
    public static final char DOWN = 'D';
    public static final char LEFT = 'L';
    public static final char RIGHT = 'R';

    private final Point ORIGIN = new Point(0, 0);

    private Point position;

    public Robot(int x, int y) {
        this.position = new Point(x, y);
    }

    public void move(char direction) {
        switch(direction) {
            case RIGHT:
                position.x++;
                break;
            case LEFT:
                position.x--;
                break;
            case UP:
                position.y++;
                break;
            case DOWN:
                position.y--;
                break;
            default:
        }
    }

    public boolean isAtOrigin() {
        return position.equals(ORIGIN);
    }
}

class Point {
    public int x;
    public int y;

    public Point(int x, int y) {
        this.x = x;
        this.y = y;
    }

    public boolean equals(Object o) {
        if (!(o instanceof Point)) {
            return false;
        }

        Point other = (Point) o;
        return (this.x == other.x) && (this.y == other.y);
    }
}