diff --git a/generator/include/shapes/sphere.hpp b/generator/include/shapes/sphere.hpp index 5b0fb5b..6795163 100644 --- a/generator/include/shapes/sphere.hpp +++ b/generator/include/shapes/sphere.hpp @@ -1,11 +1,11 @@ #ifndef SOLAR_SYSTEM_SPHERE_HPP #define SOLAR_SYSTEM_SPHERE_HPP - -#include #include +#include + #include "../utils.hpp" bool generateSphere(float radius, int slices, int stacks, const char* filepath); -#endif //SOLAR_SYSTEM_SPHERE_HPP \ No newline at end of file +#endif // SOLAR_SYSTEM_SPHERE_HPP \ No newline at end of file diff --git a/generator/src/shapes/sphere.cpp b/generator/src/shapes/sphere.cpp index 2ab9258..76dba4e 100644 --- a/generator/src/shapes/sphere.cpp +++ b/generator/src/shapes/sphere.cpp @@ -1,61 +1,66 @@ +#include #include #include #include -#include #include "utils.hpp" std::vector sphereTriangles(float radius, int slices, int stacks) { - std::vector points; - - for (int i = 0; i < slices; ++i) { - float theta1 = static_cast(i) * static_cast(M_PI) / static_cast(slices); - float theta2 = static_cast(i + 1) * static_cast(M_PI) / static_cast(slices); - - for (int j = 0; j < stacks; ++j) { - float phi1 = static_cast(j) * 2.0f * static_cast(M_PI) / static_cast(stacks); - float phi2 = static_cast(j + 1) * 2.0f * static_cast(M_PI) / static_cast(stacks); - - // Vertices - float x1 = radius * std::sin(theta1) * std::cos(phi1); - float y1 = radius * std::sin(theta1) * std::sin(phi1); - float z1 = radius * std::cos(theta1); - - float x2 = radius * std::sin(theta1) * std::cos(phi2); - float y2 = radius * std::sin(theta1) * std::sin(phi2); - float z2 = radius * std::cos(theta1); - - float x3 = radius * std::sin(theta2) * std::cos(phi1); - float y3 = radius * std::sin(theta2) * std::sin(phi1); - float z3 = radius * std::cos(theta2); - - float x4 = radius * std::sin(theta2) * std::cos(phi2); - float y4 = radius * std::sin(theta2) * std::sin(phi2); - float z4 = radius * std::cos(theta2); - - // Push vertices in counter-clockwise order - points.push_back(Point(x1, y1, z1)); - points.push_back(Point(x2, y2, z2)); - points.push_back(Point(x4, y4, z4)); - - points.push_back(Point(x1, y1, z1)); - points.push_back(Point(x4, y4, z4)); - points.push_back(Point(x3, y3, z3)); - } + std::vector points; + + for (int i = 0; i < slices; ++i) { + float theta1 = static_cast(i) * static_cast(M_PI) / + static_cast(slices); + float theta2 = static_cast(i + 1) * static_cast(M_PI) / + static_cast(slices); + + for (int j = 0; j < stacks; ++j) { + float phi1 = static_cast(j) * 2.0f * static_cast(M_PI) / + static_cast(stacks); + float phi2 = static_cast(j + 1) * 2.0f * static_cast(M_PI) / + static_cast(stacks); + + // Vertices + float x1 = radius * std::sin(theta1) * std::cos(phi1); + float y1 = radius * std::sin(theta1) * std::sin(phi1); + float z1 = radius * std::cos(theta1); + + float x2 = radius * std::sin(theta1) * std::cos(phi2); + float y2 = radius * std::sin(theta1) * std::sin(phi2); + float z2 = radius * std::cos(theta1); + + float x3 = radius * std::sin(theta2) * std::cos(phi1); + float y3 = radius * std::sin(theta2) * std::sin(phi1); + float z3 = radius * std::cos(theta2); + + float x4 = radius * std::sin(theta2) * std::cos(phi2); + float y4 = radius * std::sin(theta2) * std::sin(phi2); + float z4 = radius * std::cos(theta2); + + // Push vertices in counter-clockwise order + points.push_back(Point(x1, y1, z1)); + points.push_back(Point(x2, y2, z2)); + points.push_back(Point(x4, y4, z4)); + + points.push_back(Point(x1, y1, z1)); + points.push_back(Point(x4, y4, z4)); + points.push_back(Point(x3, y3, z3)); } + } - return points; + return points; } -bool generateSphere(float radius, int slices, int stacks, const char* filepath) { - std::vector triangles = sphereTriangles(radius, slices, stacks); +bool generateSphere(float radius, int slices, int stacks, + const char* filepath) { + std::vector triangles = sphereTriangles(radius, slices, stacks); - if (triangles.empty()) { - std::cerr << "Error: Empty vector of triangles.\n"; - return false; - } + if (triangles.empty()) { + std::cerr << "Error: Empty vector of triangles.\n"; + return false; + } - saveToFile(triangles, filepath); + saveToFile(triangles, filepath); - return true; + return true; } \ No newline at end of file diff --git a/models/sphere.3d b/models/sphere.3d new file mode 100644 index 0000000..d70e36d --- /dev/null +++ b/models/sphere.3d @@ -0,0 +1,600 @@ +0 0 1 +0 0 1 +0.25 0.181636 0.951057 +0 0 1 +0.25 0.181636 0.951057 +0.309017 0 0.951057 +0 0 1 +0 0 1 +0.0954915 0.293893 0.951057 +0 0 1 +0.0954915 0.293893 0.951057 +0.25 0.181636 0.951057 +0 0 1 +-0 0 1 +-0.0954915 0.293893 0.951057 +0 0 1 +-0.0954915 0.293893 0.951057 +0.0954915 0.293893 0.951057 +-0 0 1 +-0 0 1 +-0.25 0.181636 0.951057 +-0 0 1 +-0.25 0.181636 0.951057 +-0.0954915 0.293893 0.951057 +-0 0 1 +-0 -0 1 +-0.309017 -2.70151e-08 0.951057 +-0 0 1 +-0.309017 -2.70151e-08 0.951057 +-0.25 0.181636 0.951057 +-0 -0 1 +-0 -0 1 +-0.25 -0.181636 0.951057 +-0 -0 1 +-0.25 -0.181636 0.951057 +-0.309017 -2.70151e-08 0.951057 +-0 -0 1 +-0 -0 1 +-0.0954914 -0.293893 0.951057 +-0 -0 1 +-0.0954914 -0.293893 0.951057 +-0.25 -0.181636 0.951057 +-0 -0 1 +0 -0 1 +0.0954915 -0.293893 0.951057 +-0 -0 1 +0.0954915 -0.293893 0.951057 +-0.0954914 -0.293893 0.951057 +0 -0 1 +0 -0 1 +0.25 -0.181636 0.951057 +0 -0 1 +0.25 -0.181636 0.951057 +0.0954915 -0.293893 0.951057 +0 -0 1 +0 0 1 +0.309017 5.40302e-08 0.951057 +0 -0 1 +0.309017 5.40302e-08 0.951057 +0.25 -0.181636 0.951057 +0.309017 0 0.951057 +0.25 0.181636 0.951057 +0.475528 0.345491 0.809017 +0.309017 0 0.951057 +0.475528 0.345491 0.809017 +0.587785 0 0.809017 +0.25 0.181636 0.951057 +0.0954915 0.293893 0.951057 +0.181636 0.559017 0.809017 +0.25 0.181636 0.951057 +0.181636 0.559017 0.809017 +0.475528 0.345491 0.809017 +0.0954915 0.293893 0.951057 +-0.0954915 0.293893 0.951057 +-0.181636 0.559017 0.809017 +0.0954915 0.293893 0.951057 +-0.181636 0.559017 0.809017 +0.181636 0.559017 0.809017 +-0.0954915 0.293893 0.951057 +-0.25 0.181636 0.951057 +-0.475528 0.345491 0.809017 +-0.0954915 0.293893 0.951057 +-0.475528 0.345491 0.809017 +-0.181636 0.559017 0.809017 +-0.25 0.181636 0.951057 +-0.309017 -2.70151e-08 0.951057 +-0.587785 -5.13858e-08 0.809017 +-0.25 0.181636 0.951057 +-0.587785 -5.13858e-08 0.809017 +-0.475528 0.345491 0.809017 +-0.309017 -2.70151e-08 0.951057 +-0.25 -0.181636 0.951057 +-0.475528 -0.345492 0.809017 +-0.309017 -2.70151e-08 0.951057 +-0.475528 -0.345492 0.809017 +-0.587785 -5.13858e-08 0.809017 +-0.25 -0.181636 0.951057 +-0.0954914 -0.293893 0.951057 +-0.181635 -0.559017 0.809017 +-0.25 -0.181636 0.951057 +-0.181635 -0.559017 0.809017 +-0.475528 -0.345492 0.809017 +-0.0954914 -0.293893 0.951057 +0.0954915 -0.293893 0.951057 +0.181636 -0.559017 0.809017 +-0.0954914 -0.293893 0.951057 +0.181636 -0.559017 0.809017 +-0.181635 -0.559017 0.809017 +0.0954915 -0.293893 0.951057 +0.25 -0.181636 0.951057 +0.475528 -0.345492 0.809017 +0.0954915 -0.293893 0.951057 +0.475528 -0.345492 0.809017 +0.181636 -0.559017 0.809017 +0.25 -0.181636 0.951057 +0.309017 5.40302e-08 0.951057 +0.587785 1.02772e-07 0.809017 +0.25 -0.181636 0.951057 +0.587785 1.02772e-07 0.809017 +0.475528 -0.345492 0.809017 +0.587785 0 0.809017 +0.475528 0.345491 0.809017 +0.654509 0.475528 0.587785 +0.587785 0 0.809017 +0.654509 0.475528 0.587785 +0.809017 0 0.587785 +0.475528 0.345491 0.809017 +0.181636 0.559017 0.809017 +0.25 0.769421 0.587785 +0.475528 0.345491 0.809017 +0.25 0.769421 0.587785 +0.654509 0.475528 0.587785 +0.181636 0.559017 0.809017 +-0.181636 0.559017 0.809017 +-0.25 0.769421 0.587785 +0.181636 0.559017 0.809017 +-0.25 0.769421 0.587785 +0.25 0.769421 0.587785 +-0.181636 0.559017 0.809017 +-0.475528 0.345491 0.809017 +-0.654509 0.475528 0.587785 +-0.181636 0.559017 0.809017 +-0.654509 0.475528 0.587785 +-0.25 0.769421 0.587785 +-0.475528 0.345491 0.809017 +-0.587785 -5.13858e-08 0.809017 +-0.809017 -7.07265e-08 0.587785 +-0.475528 0.345491 0.809017 +-0.809017 -7.07265e-08 0.587785 +-0.654509 0.475528 0.587785 +-0.587785 -5.13858e-08 0.809017 +-0.475528 -0.345492 0.809017 +-0.654508 -0.475528 0.587785 +-0.587785 -5.13858e-08 0.809017 +-0.654508 -0.475528 0.587785 +-0.809017 -7.07265e-08 0.587785 +-0.475528 -0.345492 0.809017 +-0.181635 -0.559017 0.809017 +-0.25 -0.769421 0.587785 +-0.475528 -0.345492 0.809017 +-0.25 -0.769421 0.587785 +-0.654508 -0.475528 0.587785 +-0.181635 -0.559017 0.809017 +0.181636 -0.559017 0.809017 +0.25 -0.769421 0.587785 +-0.181635 -0.559017 0.809017 +0.25 -0.769421 0.587785 +-0.25 -0.769421 0.587785 +0.181636 -0.559017 0.809017 +0.475528 -0.345492 0.809017 +0.654508 -0.475528 0.587785 +0.181636 -0.559017 0.809017 +0.654508 -0.475528 0.587785 +0.25 -0.769421 0.587785 +0.475528 -0.345492 0.809017 +0.587785 1.02772e-07 0.809017 +0.809017 1.41453e-07 0.587785 +0.475528 -0.345492 0.809017 +0.809017 1.41453e-07 0.587785 +0.654508 -0.475528 0.587785 +0.809017 0 0.587785 +0.654509 0.475528 0.587785 +0.769421 0.559017 0.309017 +0.809017 0 0.587785 +0.769421 0.559017 0.309017 +0.951057 0 0.309017 +0.654509 0.475528 0.587785 +0.25 0.769421 0.587785 +0.293893 0.904509 0.309017 +0.654509 0.475528 0.587785 +0.293893 0.904509 0.309017 +0.769421 0.559017 0.309017 +0.25 0.769421 0.587785 +-0.25 0.769421 0.587785 +-0.293893 0.904508 0.309017 +0.25 0.769421 0.587785 +-0.293893 0.904508 0.309017 +0.293893 0.904509 0.309017 +-0.25 0.769421 0.587785 +-0.654509 0.475528 0.587785 +-0.769421 0.559017 0.309017 +-0.25 0.769421 0.587785 +-0.769421 0.559017 0.309017 +-0.293893 0.904508 0.309017 +-0.654509 0.475528 0.587785 +-0.809017 -7.07265e-08 0.587785 +-0.951057 -8.3144e-08 0.309017 +-0.654509 0.475528 0.587785 +-0.951057 -8.3144e-08 0.309017 +-0.769421 0.559017 0.309017 +-0.809017 -7.07265e-08 0.587785 +-0.654508 -0.475528 0.587785 +-0.769421 -0.559017 0.309017 +-0.809017 -7.07265e-08 0.587785 +-0.769421 -0.559017 0.309017 +-0.951057 -8.3144e-08 0.309017 +-0.654508 -0.475528 0.587785 +-0.25 -0.769421 0.587785 +-0.293892 -0.904509 0.309017 +-0.654508 -0.475528 0.587785 +-0.293892 -0.904509 0.309017 +-0.769421 -0.559017 0.309017 +-0.25 -0.769421 0.587785 +0.25 -0.769421 0.587785 +0.293893 -0.904508 0.309017 +-0.25 -0.769421 0.587785 +0.293893 -0.904508 0.309017 +-0.293892 -0.904509 0.309017 +0.25 -0.769421 0.587785 +0.654508 -0.475528 0.587785 +0.769421 -0.559017 0.309017 +0.25 -0.769421 0.587785 +0.769421 -0.559017 0.309017 +0.293893 -0.904508 0.309017 +0.654508 -0.475528 0.587785 +0.809017 1.41453e-07 0.587785 +0.951057 1.66288e-07 0.309017 +0.654508 -0.475528 0.587785 +0.951057 1.66288e-07 0.309017 +0.769421 -0.559017 0.309017 +0.951057 0 0.309017 +0.769421 0.559017 0.309017 +0.809017 0.587785 -4.37114e-08 +0.951057 0 0.309017 +0.809017 0.587785 -4.37114e-08 +1 0 -4.37114e-08 +0.769421 0.559017 0.309017 +0.293893 0.904509 0.309017 +0.309017 0.951057 -4.37114e-08 +0.769421 0.559017 0.309017 +0.309017 0.951057 -4.37114e-08 +0.809017 0.587785 -4.37114e-08 +0.293893 0.904509 0.309017 +-0.293893 0.904508 0.309017 +-0.309017 0.951056 -4.37114e-08 +0.293893 0.904509 0.309017 +-0.309017 0.951056 -4.37114e-08 +0.309017 0.951057 -4.37114e-08 +-0.293893 0.904508 0.309017 +-0.769421 0.559017 0.309017 +-0.809017 0.587785 -4.37114e-08 +-0.293893 0.904508 0.309017 +-0.809017 0.587785 -4.37114e-08 +-0.309017 0.951056 -4.37114e-08 +-0.769421 0.559017 0.309017 +-0.951057 -8.3144e-08 0.309017 +-1 -8.74228e-08 -4.37114e-08 +-0.769421 0.559017 0.309017 +-1 -8.74228e-08 -4.37114e-08 +-0.809017 0.587785 -4.37114e-08 +-0.951057 -8.3144e-08 0.309017 +-0.769421 -0.559017 0.309017 +-0.809017 -0.587785 -4.37114e-08 +-0.951057 -8.3144e-08 0.309017 +-0.809017 -0.587785 -4.37114e-08 +-1 -8.74228e-08 -4.37114e-08 +-0.769421 -0.559017 0.309017 +-0.293892 -0.904509 0.309017 +-0.309017 -0.951057 -4.37114e-08 +-0.769421 -0.559017 0.309017 +-0.309017 -0.951057 -4.37114e-08 +-0.809017 -0.587785 -4.37114e-08 +-0.293892 -0.904509 0.309017 +0.293893 -0.904508 0.309017 +0.309017 -0.951056 -4.37114e-08 +-0.293892 -0.904509 0.309017 +0.309017 -0.951056 -4.37114e-08 +-0.309017 -0.951057 -4.37114e-08 +0.293893 -0.904508 0.309017 +0.769421 -0.559017 0.309017 +0.809017 -0.587785 -4.37114e-08 +0.293893 -0.904508 0.309017 +0.809017 -0.587785 -4.37114e-08 +0.309017 -0.951056 -4.37114e-08 +0.769421 -0.559017 0.309017 +0.951057 1.66288e-07 0.309017 +1 1.74846e-07 -4.37114e-08 +0.769421 -0.559017 0.309017 +1 1.74846e-07 -4.37114e-08 +0.809017 -0.587785 -4.37114e-08 +1 0 -4.37114e-08 +0.809017 0.587785 -4.37114e-08 +0.769421 0.559017 -0.309017 +1 0 -4.37114e-08 +0.769421 0.559017 -0.309017 +0.951056 0 -0.309017 +0.809017 0.587785 -4.37114e-08 +0.309017 0.951057 -4.37114e-08 +0.293893 0.904508 -0.309017 +0.809017 0.587785 -4.37114e-08 +0.293893 0.904508 -0.309017 +0.769421 0.559017 -0.309017 +0.309017 0.951057 -4.37114e-08 +-0.309017 0.951056 -4.37114e-08 +-0.293893 0.904508 -0.309017 +0.309017 0.951057 -4.37114e-08 +-0.293893 0.904508 -0.309017 +0.293893 0.904508 -0.309017 +-0.309017 0.951056 -4.37114e-08 +-0.809017 0.587785 -4.37114e-08 +-0.769421 0.559017 -0.309017 +-0.309017 0.951056 -4.37114e-08 +-0.769421 0.559017 -0.309017 +-0.293893 0.904508 -0.309017 +-0.809017 0.587785 -4.37114e-08 +-1 -8.74228e-08 -4.37114e-08 +-0.951056 -8.3144e-08 -0.309017 +-0.809017 0.587785 -4.37114e-08 +-0.951056 -8.3144e-08 -0.309017 +-0.769421 0.559017 -0.309017 +-1 -8.74228e-08 -4.37114e-08 +-0.809017 -0.587785 -4.37114e-08 +-0.769421 -0.559017 -0.309017 +-1 -8.74228e-08 -4.37114e-08 +-0.769421 -0.559017 -0.309017 +-0.951056 -8.3144e-08 -0.309017 +-0.809017 -0.587785 -4.37114e-08 +-0.309017 -0.951057 -4.37114e-08 +-0.293892 -0.904509 -0.309017 +-0.809017 -0.587785 -4.37114e-08 +-0.293892 -0.904509 -0.309017 +-0.769421 -0.559017 -0.309017 +-0.309017 -0.951057 -4.37114e-08 +0.309017 -0.951056 -4.37114e-08 +0.293893 -0.904508 -0.309017 +-0.309017 -0.951057 -4.37114e-08 +0.293893 -0.904508 -0.309017 +-0.293892 -0.904509 -0.309017 +0.309017 -0.951056 -4.37114e-08 +0.809017 -0.587785 -4.37114e-08 +0.769421 -0.559017 -0.309017 +0.309017 -0.951056 -4.37114e-08 +0.769421 -0.559017 -0.309017 +0.293893 -0.904508 -0.309017 +0.809017 -0.587785 -4.37114e-08 +1 1.74846e-07 -4.37114e-08 +0.951056 1.66288e-07 -0.309017 +0.809017 -0.587785 -4.37114e-08 +0.951056 1.66288e-07 -0.309017 +0.769421 -0.559017 -0.309017 +0.951056 0 -0.309017 +0.769421 0.559017 -0.309017 +0.654508 0.475528 -0.587785 +0.951056 0 -0.309017 +0.654508 0.475528 -0.587785 +0.809017 0 -0.587785 +0.769421 0.559017 -0.309017 +0.293893 0.904508 -0.309017 +0.25 0.769421 -0.587785 +0.769421 0.559017 -0.309017 +0.25 0.769421 -0.587785 +0.654508 0.475528 -0.587785 +0.293893 0.904508 -0.309017 +-0.293893 0.904508 -0.309017 +-0.25 0.769421 -0.587785 +0.293893 0.904508 -0.309017 +-0.25 0.769421 -0.587785 +0.25 0.769421 -0.587785 +-0.293893 0.904508 -0.309017 +-0.769421 0.559017 -0.309017 +-0.654508 0.475528 -0.587785 +-0.293893 0.904508 -0.309017 +-0.654508 0.475528 -0.587785 +-0.25 0.769421 -0.587785 +-0.769421 0.559017 -0.309017 +-0.951056 -8.3144e-08 -0.309017 +-0.809017 -7.07265e-08 -0.587785 +-0.769421 0.559017 -0.309017 +-0.809017 -7.07265e-08 -0.587785 +-0.654508 0.475528 -0.587785 +-0.951056 -8.3144e-08 -0.309017 +-0.769421 -0.559017 -0.309017 +-0.654508 -0.475528 -0.587785 +-0.951056 -8.3144e-08 -0.309017 +-0.654508 -0.475528 -0.587785 +-0.809017 -7.07265e-08 -0.587785 +-0.769421 -0.559017 -0.309017 +-0.293892 -0.904509 -0.309017 +-0.25 -0.769421 -0.587785 +-0.769421 -0.559017 -0.309017 +-0.25 -0.769421 -0.587785 +-0.654508 -0.475528 -0.587785 +-0.293892 -0.904509 -0.309017 +0.293893 -0.904508 -0.309017 +0.25 -0.769421 -0.587785 +-0.293892 -0.904509 -0.309017 +0.25 -0.769421 -0.587785 +-0.25 -0.769421 -0.587785 +0.293893 -0.904508 -0.309017 +0.769421 -0.559017 -0.309017 +0.654508 -0.475528 -0.587785 +0.293893 -0.904508 -0.309017 +0.654508 -0.475528 -0.587785 +0.25 -0.769421 -0.587785 +0.769421 -0.559017 -0.309017 +0.951056 1.66288e-07 -0.309017 +0.809017 1.41453e-07 -0.587785 +0.769421 -0.559017 -0.309017 +0.809017 1.41453e-07 -0.587785 +0.654508 -0.475528 -0.587785 +0.809017 0 -0.587785 +0.654508 0.475528 -0.587785 +0.475528 0.345491 -0.809017 +0.809017 0 -0.587785 +0.475528 0.345491 -0.809017 +0.587785 0 -0.809017 +0.654508 0.475528 -0.587785 +0.25 0.769421 -0.587785 +0.181636 0.559017 -0.809017 +0.654508 0.475528 -0.587785 +0.181636 0.559017 -0.809017 +0.475528 0.345491 -0.809017 +0.25 0.769421 -0.587785 +-0.25 0.769421 -0.587785 +-0.181636 0.559017 -0.809017 +0.25 0.769421 -0.587785 +-0.181636 0.559017 -0.809017 +0.181636 0.559017 -0.809017 +-0.25 0.769421 -0.587785 +-0.654508 0.475528 -0.587785 +-0.475528 0.345491 -0.809017 +-0.25 0.769421 -0.587785 +-0.475528 0.345491 -0.809017 +-0.181636 0.559017 -0.809017 +-0.654508 0.475528 -0.587785 +-0.809017 -7.07265e-08 -0.587785 +-0.587785 -5.13858e-08 -0.809017 +-0.654508 0.475528 -0.587785 +-0.587785 -5.13858e-08 -0.809017 +-0.475528 0.345491 -0.809017 +-0.809017 -7.07265e-08 -0.587785 +-0.654508 -0.475528 -0.587785 +-0.475528 -0.345492 -0.809017 +-0.809017 -7.07265e-08 -0.587785 +-0.475528 -0.345492 -0.809017 +-0.587785 -5.13858e-08 -0.809017 +-0.654508 -0.475528 -0.587785 +-0.25 -0.769421 -0.587785 +-0.181635 -0.559017 -0.809017 +-0.654508 -0.475528 -0.587785 +-0.181635 -0.559017 -0.809017 +-0.475528 -0.345492 -0.809017 +-0.25 -0.769421 -0.587785 +0.25 -0.769421 -0.587785 +0.181636 -0.559017 -0.809017 +-0.25 -0.769421 -0.587785 +0.181636 -0.559017 -0.809017 +-0.181635 -0.559017 -0.809017 +0.25 -0.769421 -0.587785 +0.654508 -0.475528 -0.587785 +0.475528 -0.345491 -0.809017 +0.25 -0.769421 -0.587785 +0.475528 -0.345491 -0.809017 +0.181636 -0.559017 -0.809017 +0.654508 -0.475528 -0.587785 +0.809017 1.41453e-07 -0.587785 +0.587785 1.02772e-07 -0.809017 +0.654508 -0.475528 -0.587785 +0.587785 1.02772e-07 -0.809017 +0.475528 -0.345491 -0.809017 +0.587785 0 -0.809017 +0.475528 0.345491 -0.809017 +0.25 0.181636 -0.951056 +0.587785 0 -0.809017 +0.25 0.181636 -0.951056 +0.309017 0 -0.951056 +0.475528 0.345491 -0.809017 +0.181636 0.559017 -0.809017 +0.0954915 0.293893 -0.951056 +0.475528 0.345491 -0.809017 +0.0954915 0.293893 -0.951056 +0.25 0.181636 -0.951056 +0.181636 0.559017 -0.809017 +-0.181636 0.559017 -0.809017 +-0.0954915 0.293893 -0.951056 +0.181636 0.559017 -0.809017 +-0.0954915 0.293893 -0.951056 +0.0954915 0.293893 -0.951056 +-0.181636 0.559017 -0.809017 +-0.475528 0.345491 -0.809017 +-0.25 0.181636 -0.951056 +-0.181636 0.559017 -0.809017 +-0.25 0.181636 -0.951056 +-0.0954915 0.293893 -0.951056 +-0.475528 0.345491 -0.809017 +-0.587785 -5.13858e-08 -0.809017 +-0.309017 -2.70151e-08 -0.951056 +-0.475528 0.345491 -0.809017 +-0.309017 -2.70151e-08 -0.951056 +-0.25 0.181636 -0.951056 +-0.587785 -5.13858e-08 -0.809017 +-0.475528 -0.345492 -0.809017 +-0.25 -0.181636 -0.951056 +-0.587785 -5.13858e-08 -0.809017 +-0.25 -0.181636 -0.951056 +-0.309017 -2.70151e-08 -0.951056 +-0.475528 -0.345492 -0.809017 +-0.181635 -0.559017 -0.809017 +-0.0954914 -0.293893 -0.951056 +-0.475528 -0.345492 -0.809017 +-0.0954914 -0.293893 -0.951056 +-0.25 -0.181636 -0.951056 +-0.181635 -0.559017 -0.809017 +0.181636 -0.559017 -0.809017 +0.0954916 -0.293893 -0.951056 +-0.181635 -0.559017 -0.809017 +0.0954916 -0.293893 -0.951056 +-0.0954914 -0.293893 -0.951056 +0.181636 -0.559017 -0.809017 +0.475528 -0.345491 -0.809017 +0.25 -0.181636 -0.951056 +0.181636 -0.559017 -0.809017 +0.25 -0.181636 -0.951056 +0.0954916 -0.293893 -0.951056 +0.475528 -0.345491 -0.809017 +0.587785 1.02772e-07 -0.809017 +0.309017 5.40303e-08 -0.951056 +0.475528 -0.345491 -0.809017 +0.309017 5.40303e-08 -0.951056 +0.25 -0.181636 -0.951056 +0.309017 0 -0.951056 +0.25 0.181636 -0.951056 +-7.07265e-08 -5.13858e-08 -1 +0.309017 0 -0.951056 +-7.07265e-08 -5.13858e-08 -1 +-8.74228e-08 -0 -1 +0.25 0.181636 -0.951056 +0.0954915 0.293893 -0.951056 +-2.70151e-08 -8.3144e-08 -1 +0.25 0.181636 -0.951056 +-2.70151e-08 -8.3144e-08 -1 +-7.07265e-08 -5.13858e-08 -1 +0.0954915 0.293893 -0.951056 +-0.0954915 0.293893 -0.951056 +2.70151e-08 -8.3144e-08 -1 +0.0954915 0.293893 -0.951056 +2.70151e-08 -8.3144e-08 -1 +-2.70151e-08 -8.3144e-08 -1 +-0.0954915 0.293893 -0.951056 +-0.25 0.181636 -0.951056 +7.07265e-08 -5.13858e-08 -1 +-0.0954915 0.293893 -0.951056 +7.07265e-08 -5.13858e-08 -1 +2.70151e-08 -8.3144e-08 -1 +-0.25 0.181636 -0.951056 +-0.309017 -2.70151e-08 -0.951056 +8.74228e-08 7.64274e-15 -1 +-0.25 0.181636 -0.951056 +8.74228e-08 7.64274e-15 -1 +7.07265e-08 -5.13858e-08 -1 +-0.309017 -2.70151e-08 -0.951056 +-0.25 -0.181636 -0.951056 +7.07265e-08 5.13858e-08 -1 +-0.309017 -2.70151e-08 -0.951056 +7.07265e-08 5.13858e-08 -1 +8.74228e-08 7.64274e-15 -1 +-0.25 -0.181636 -0.951056 +-0.0954914 -0.293893 -0.951056 +2.70151e-08 8.3144e-08 -1 +-0.25 -0.181636 -0.951056 +2.70151e-08 8.3144e-08 -1 +7.07265e-08 5.13858e-08 -1 +-0.0954914 -0.293893 -0.951056 +0.0954916 -0.293893 -0.951056 +-2.70151e-08 8.3144e-08 -1 +-0.0954914 -0.293893 -0.951056 +-2.70151e-08 8.3144e-08 -1 +2.70151e-08 8.3144e-08 -1 +0.0954916 -0.293893 -0.951056 +0.25 -0.181636 -0.951056 +-7.07265e-08 5.13858e-08 -1 +0.0954916 -0.293893 -0.951056 +-7.07265e-08 5.13858e-08 -1 +-2.70151e-08 8.3144e-08 -1 +0.25 -0.181636 -0.951056 +0.309017 5.40303e-08 -0.951056 +-8.74228e-08 -1.52855e-14 -1 +0.25 -0.181636 -0.951056 +-8.74228e-08 -1.52855e-14 -1 +-7.07265e-08 5.13858e-08 -1