public static function cross(Vector3D $value1, Vector3D $value2) : Vector3D {
        return new Vector3D(
            ($value1->getY() * $value2->getZ()) - ($value1->getZ() * $value2->getY()),
            -(($value1->getX() * $value2->getZ()) - ($value1->getZ() * $value2->getX())),
            ($value1->getX() * $value2->getY()) - ($value1->getY() * $value2->getX())
        );
    }