#pragma once #include "geometry/geometry.hpp" namespace queen { constexpr vec3 vertices[] = { { 0.000000f, -0.817631f, -0.500000f }, { 0.570827f, -0.535257f, -0.500000f }, { 0.604407f, -0.622259f, -0.500000f }, { 0.601354f, -0.817631f, -0.500000f }, { 0.500616f, -0.480309f, -0.500000f }, { 0.436509f, -0.457414f, -0.500000f }, { 0.671566f, 0.113438f, -0.500000f }, { 0.729567f, 0.137859f, -0.500000f }, { 0.769252f, 0.185176f, -0.500000f }, { 0.801050f, 0.252306f, -0.500000f }, { 0.800167f, 0.322970f, -0.500000f }, { 0.775435f, 0.383035f, -0.500000f }, { 0.725970f, 0.435149f, -0.500000f }, { 0.657073f, 0.463415f, -0.500000f }, { 0.579342f, 0.465181f, -0.500000f }, { 0.516628f, 0.435149f, -0.500000f }, { 0.468930f, 0.382151f, -0.500000f }, { 0.445081f, 0.321204f, -0.500000f }, { 0.444198f, 0.268206f, -0.500000f }, { 0.462747f, 0.220507f, -0.500000f }, { 0.337318f, 0.085363f, -0.500000f }, { 0.323186f, 0.436916f, -0.500000f }, { 0.365584f, 0.470481f, -0.500000f }, { 0.403566f, 0.520829f, -0.500000f }, { 0.424765f, 0.591493f, -0.500000f }, { 0.413282f, 0.672757f, -0.500000f }, { 0.368234f, 0.741654f, -0.500000f }, { 0.296687f, 0.776103f, -0.500000f }, { 0.252522f, 0.786702f, -0.500000f }, { 0.186274f, 0.777869f, -0.500000f }, { 0.115610f, 0.745187f, -0.500000f }, { 0.067912f, 0.690423f, -0.500000f }, { 0.052013f, 0.629475f, -0.500000f }, { 0.051129f, 0.560578f, -0.500000f }, { 0.072329f, 0.511113f, -0.500000f }, { 0.105894f, 0.477548f, -0.500000f }, { 0.000000f, 0.197542f, -0.500000f }, { -0.570827f, -0.535257f, -0.500000f }, { -0.604407f, -0.622259f, -0.500000f }, { -0.601354f, -0.817631f, -0.500000f }, { -0.500616f, -0.480309f, -0.500000f }, { -0.436509f, -0.457414f, -0.500000f }, { -0.671566f, 0.113438f, -0.500000f }, { -0.729567f, 0.137859f, -0.500000f }, { -0.769252f, 0.185176f, -0.500000f }, { -0.801050f, 0.252306f, -0.500000f }, { -0.800167f, 0.322970f, -0.500000f }, { -0.775435f, 0.383035f, -0.500000f }, { -0.725970f, 0.435149f, -0.500000f }, { -0.657073f, 0.463415f, -0.500000f }, { -0.579342f, 0.465181f, -0.500000f }, { -0.516628f, 0.435149f, -0.500000f }, { -0.468930f, 0.382151f, -0.500000f }, { -0.445081f, 0.321204f, -0.500000f }, { -0.444198f, 0.268206f, -0.500000f }, { -0.462747f, 0.220507f, -0.500000f }, { -0.337318f, 0.085363f, -0.500000f }, { -0.323186f, 0.436916f, -0.500000f }, { -0.365584f, 0.470481f, -0.500000f }, { -0.403566f, 0.520829f, -0.500000f }, { -0.424765f, 0.591493f, -0.500000f }, { -0.413282f, 0.672757f, -0.500000f }, { -0.368234f, 0.741654f, -0.500000f }, { -0.296687f, 0.776103f, -0.500000f }, { -0.252522f, 0.786702f, -0.500000f }, { -0.186274f, 0.777869f, -0.500000f }, { -0.115610f, 0.745187f, -0.500000f }, { -0.067912f, 0.690423f, -0.500000f }, { -0.052013f, 0.629475f, -0.500000f }, { -0.051129f, 0.560578f, -0.500000f }, { -0.072329f, 0.511113f, -0.500000f }, { -0.105894f, 0.477548f, -0.500000f }, { 0.462390f, -0.549696f, -1.500000f }, { 0.332972f, -0.503475f, -1.500000f }, { 0.505640f, -0.583544f, -1.500000f }, { 0.525978f, -0.636236f, -1.500000f }, { 0.524365f, -0.739429f, -1.500000f }, { 0.000000f, -0.739429f, -1.500000f }, { 0.611523f, 0.173007f, -1.500000f }, { 0.681798f, 0.202596f, -1.500000f }, { 0.702879f, 0.227731f, -1.500000f }, { 0.722629f, 0.269426f, -1.500000f }, { 0.722159f, 0.307031f, -1.500000f }, { 0.708676f, 0.339775f, -1.500000f }, { 0.680786f, 0.369160f, -1.500000f }, { 0.640803f, 0.385563f, -1.500000f }, { 0.596256f, 0.386576f, -1.500000f }, { 0.564385f, 0.371313f, -1.500000f }, { 0.536571f, 0.340409f, -1.500000f }, { 0.523037f, 0.305821f, -1.500000f }, { 0.522644f, 0.282247f, -1.500000f }, { 0.553382f, 0.203206f, -1.500000f }, { 0.266733f, -0.105648f, -1.500000f }, { 0.243449f, 0.473532f, -1.500000f }, { 0.309188f, 0.525576f, -1.500000f }, { 0.332692f, 0.556731f, -1.500000f }, { 0.344933f, 0.597535f, -1.500000f }, { 0.338289f, 0.644553f, -1.500000f }, { 0.314695f, 0.680638f, -1.500000f }, { 0.270300f, 0.702013f, -1.500000f }, { 0.248427f, 0.707263f, -1.500000f }, { 0.208351f, 0.701920f, -1.500000f }, { 0.163605f, 0.681225f, -1.500000f }, { 0.138945f, 0.652911f, -1.500000f }, { 0.130085f, 0.618950f, -1.500000f }, { 0.129537f, 0.576148f, -1.500000f }, { 0.138274f, 0.555761f, -1.500000f }, { 0.196906f, 0.497129f, -1.500000f }, { 0.000000f, -0.023532f, -1.500000f }, { -0.462390f, -0.549696f, -1.500000f }, { -0.332971f, -0.503475f, -1.500000f }, { -0.505640f, -0.583544f, -1.500000f }, { -0.525978f, -0.636236f, -1.500000f }, { -0.524365f, -0.739429f, -1.500000f }, { -0.611523f, 0.173007f, -1.500000f }, { -0.681798f, 0.202596f, -1.500000f }, { -0.702879f, 0.227731f, -1.500000f }, { -0.722629f, 0.269426f, -1.500000f }, { -0.722159f, 0.307031f, -1.500000f }, { -0.708676f, 0.339775f, -1.500000f }, { -0.680786f, 0.369160f, -1.500000f }, { -0.640803f, 0.385563f, -1.500000f }, { -0.596256f, 0.386576f, -1.500000f }, { -0.564385f, 0.371313f, -1.500000f }, { -0.536571f, 0.340409f, -1.500000f }, { -0.523037f, 0.305821f, -1.500000f }, { -0.522644f, 0.282247f, -1.500000f }, { -0.553382f, 0.203206f, -1.500000f }, { -0.266733f, -0.105648f, -1.500000f }, { -0.243449f, 0.473532f, -1.500000f }, { -0.309188f, 0.525576f, -1.500000f }, { -0.332692f, 0.556731f, -1.500000f }, { -0.344933f, 0.597535f, -1.500000f }, { -0.338289f, 0.644553f, -1.500000f }, { -0.314695f, 0.680638f, -1.500000f }, { -0.270300f, 0.702013f, -1.500000f }, { -0.248427f, 0.707263f, -1.500000f }, { -0.208351f, 0.701920f, -1.500000f }, { -0.163605f, 0.681225f, -1.500000f }, { -0.138945f, 0.652911f, -1.500000f }, { -0.130085f, 0.618950f, -1.500000f }, { -0.129537f, 0.576148f, -1.500000f }, { -0.138274f, 0.555761f, -1.500000f }, { -0.196906f, 0.497129f, -1.500000f }, }; constexpr face_v faces[] = { {{139}, {135}, {129}}, {{ 24}, { 36}, { 41}}, {{ 74}, { 72}, { 73}}, {{ 78}, { 79}, { 80}}, {{ 75}, { 74}, { 73}}, {{ 78}, { 80}, { 81}}, {{ 76}, { 75}, { 73}}, {{ 78}, { 81}, { 82}}, {{ 77}, { 76}, { 73}}, {{ 78}, { 82}, { 83}}, {{ 77}, { 73}, { 78}}, {{112}, {113}, { 77}}, {{109}, {111}, {112}}, {{110}, {109}, {112}}, {{ 77}, { 78}, { 83}}, {{ 83}, { 84}, { 85}}, {{ 85}, { 86}, { 87}}, {{ 87}, { 88}, { 89}}, {{ 89}, { 90}, { 91}}, {{ 87}, { 89}, { 91}}, {{ 83}, { 85}, { 87}}, {{110}, {112}, { 77}}, {{116}, {115}, {114}}, {{114}, {110}, { 77}}, {{ 83}, { 87}, { 91}}, {{ 83}, { 91}, { 92}}, {{117}, {116}, {114}}, {{119}, {118}, {117}}, {{121}, {120}, {119}}, {{123}, {122}, {121}}, {{125}, {124}, {123}}, {{127}, {126}, {125}}, {{127}, {125}, {123}}, {{123}, {121}, {119}}, {{119}, {117}, {114}}, {{ 77}, { 83}, { 92}}, {{ 93}, { 94}, { 95}}, {{ 77}, { 92}, { 93}}, {{119}, {114}, { 77}}, {{127}, {123}, {119}}, {{128}, {127}, {119}}, {{ 93}, { 95}, { 96}}, {{ 96}, { 97}, { 98}}, {{ 98}, { 99}, {100}}, {{100}, {101}, {102}}, {{102}, {103}, {104}}, {{104}, {105}, {106}}, {{104}, {106}, {107}}, {{100}, {102}, {104}}, {{ 96}, { 98}, {100}}, {{ 93}, { 96}, {100}}, {{100}, {104}, {107}}, {{ 93}, {100}, {107}}, {{128}, {119}, { 77}}, {{131}, {130}, {129}}, {{129}, {128}, { 77}}, {{ 77}, { 93}, {107}}, {{ 77}, {107}, {108}}, {{132}, {131}, {129}}, {{129}, { 77}, {108}}, {{143}, {142}, {141}}, {{129}, {108}, {143}}, {{133}, {132}, {129}}, {{135}, {134}, {133}}, {{137}, {136}, {135}}, {{139}, {138}, {137}}, {{141}, {140}, {139}}, {{129}, {143}, {141}}, {{135}, {133}, {129}}, {{139}, {137}, {135}}, {{129}, {141}, {139}}, {{ 1}, { 4}, { 5}}, {{ 6}, { 7}, { 8}}, {{ 2}, { 1}, { 5}}, {{ 6}, { 8}, { 9}}, {{ 3}, { 2}, { 5}}, {{ 6}, { 9}, { 10}}, {{ 0}, { 3}, { 5}}, {{ 6}, { 10}, { 11}}, {{ 0}, { 5}, { 6}}, {{ 38}, { 39}, { 0}}, {{ 40}, { 37}, { 38}}, {{ 41}, { 40}, { 38}}, {{ 38}, { 0}, { 6}}, {{ 6}, { 11}, { 12}}, {{ 12}, { 13}, { 14}}, {{ 14}, { 15}, { 16}}, {{ 16}, { 17}, { 18}}, {{ 16}, { 18}, { 19}}, {{ 12}, { 14}, { 16}}, {{ 41}, { 38}, { 6}}, {{ 44}, { 43}, { 42}}, {{ 6}, { 12}, { 16}}, {{ 6}, { 16}, { 19}}, {{ 45}, { 44}, { 42}}, {{ 47}, { 46}, { 45}}, {{ 49}, { 48}, { 47}}, {{ 51}, { 50}, { 49}}, {{ 53}, { 52}, { 51}}, {{ 55}, { 54}, { 53}}, {{ 55}, { 53}, { 51}}, {{ 51}, { 49}, { 47}}, {{ 47}, { 45}, { 42}}, {{ 6}, { 19}, { 20}}, {{ 21}, { 22}, { 23}}, {{ 41}, { 6}, { 20}}, {{ 21}, { 23}, { 24}}, {{ 41}, { 20}, { 21}}, {{ 47}, { 42}, { 41}}, {{ 55}, { 51}, { 47}}, {{ 56}, { 55}, { 47}}, {{ 41}, { 21}, { 24}}, {{ 24}, { 25}, { 26}}, {{ 26}, { 27}, { 28}}, {{ 28}, { 29}, { 30}}, {{ 30}, { 31}, { 32}}, {{ 32}, { 33}, { 34}}, {{ 32}, { 34}, { 35}}, {{ 28}, { 30}, { 32}}, {{ 24}, { 26}, { 28}}, {{ 56}, { 47}, { 41}}, {{ 59}, { 58}, { 57}}, {{ 60}, { 59}, { 57}}, {{ 62}, { 61}, { 60}}, {{ 64}, { 63}, { 62}}, {{ 66}, { 65}, { 64}}, {{ 68}, { 67}, { 66}}, {{ 70}, { 69}, { 68}}, {{ 71}, { 70}, { 68}}, {{ 68}, { 66}, { 64}}, {{ 64}, { 62}, { 60}}, {{ 64}, { 60}, { 57}}, {{ 71}, { 68}, { 64}}, {{ 36}, { 71}, { 64}}, {{ 64}, { 57}, { 56}}, {{ 24}, { 28}, { 32}}, {{ 24}, { 32}, { 35}}, {{ 36}, { 64}, { 56}}, {{ 24}, { 35}, { 36}}, {{ 36}, { 56}, { 41}}, }; constexpr uint32_t num_faces = (sizeof (faces)) / (sizeof (face_v)); }