package javalabs.lab4.third;

public class Point3D extends Point {
    private double _z;

    // Конструктор
    public Point3D(double x, double y, double z) {
        super(x, y);
        _z = z;
    }

    public double getZ() { return _z; }
    public void setZ(double z) { _z = z; }

    @Override
    public double vectorLengthFromOrigin() {
        // Вычисляем sqrt(x^2 + y^2 + z^2)
        return Math.sqrt(getX() * getX() + getY() * getY() + _z * _z);
    }

    @Override
    public String toString() {
        return String.format("(%.2f, %.2f, %.2f)", getX(), getY(), _z);
    }

    @Override
    public void display() {
        System.out.println("--- 3D Точка (наследник Point) ---");
        System.out.println("Тип: " + this.getClass().getSimpleName());
        System.out.println("Координаты: " + toString());
        System.out.println("Длина вектора от (0,0,0): " + String.format("%.2f", vectorLengthFromOrigin()));
        System.out.println("------------------------------------");
    }
}