@Override
    public boolean equals(Object o)
    {
        if (o == null)
            return false;
        if (o == this)
            return true;
        if (o.getClass() != this.getClass())
            return false;
        
        Vector3D other = (Vector3D)o;        
        return x == other.x && y == other.y && z == other.z;
    }