forked from a1k0n/arduboy3d
-
Notifications
You must be signed in to change notification settings - Fork 0
/
teapot.h
24 lines (18 loc) · 10.5 KB
/
teapot.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
static const uint16_t mesh_NVERTS = 137;
static const uint16_t mesh_NFACES = 240;
static const int8_t mesh_vertices[] PROGMEM = { // xyz vertex
45, 0, 31, 30, -38, 31, 30, -38, 35, 45, 0, 35, -8, -53, 31, -8, -53, 35, 32, -41, 31, 49, 0, 31, -8, -57, 31, -46, -38, 31, -46, -38, 35, -61, 0, 31, -62, 0, 35, -49, -41, 31, -65, 0, 31, -46, 38, 31, -46, 38, 35, -8, 53, 31, -8, 53, 35, -49, 41, 31, -8, 57, 31, 30, 38, 31, 30, 38, 35, 32, 41, 31, 42, -50, 2, 62, 0, 2, -8, -70, 2, 46, -54, -26, 68, 0, -26, -8, -76, -26, -58, -50, 2, -78, 0, 2, -62, -54, -26, -84, 0, -26, -58, 50, 2, -8, 70, 2, -62, 54, -26, -8, 76, -26, 42, 50, 2, 46, 54, -26, 39, -47, -45, 58, 0, -45, -8, -67, -45, 32, -41, -54, 49, 0, -54, -8, -57, -54, -55, -47, -45, -75, 0, -45, -49, -41, -54, -65, 0, -54, -55, 47, -45, -8, 67, -45, -49, 41, -54, -8, 57, -54, 39, 47, -45, 32, 41, -54, -69, 0, 17, -67, -9, 21, -104, -9, 20, -100, 0, 16, -65, 0, 26, -108, 0, 24, -117, -9, 9, -111, 0, 9, -122, 0, 9, -67, 9, 21, -104, 9, 20, -117, 9, 9, -108, -9, -12, -105, 0, -9, -112, 0, -16, -82, -9, -31, -80, 0, -37, -108, 9, -12, -82, 9, -31, 57, 0, -6, 57, -19, -21, 88, -13, 2, 83, 0, 9, 57, 0, -37, 94, 0, -5, 106, -7, 31, 95, 0, 31, 117, 0, 31, 57, 19, -21, 88, 13, 2, 106, 7, 31, 111, -6, 34, 99, 0, 34, 122, 0, 34, 106, -4, 31, 98, 0, 31, 114, 0, 31, 111, 6, 34, 106, 4, 31, 1, -9, 53, 4, 0, 53, -8, 0, 60, -8, -12, 53, -3, -5, 43, -1, 0, 43, -8, -8, 43, -17, -9, 53, -21, 0, 53, -14, -5, 43, -16, 0, 43, -17, 9, 53, -8, 12, 53, -14, 5, 43, -8, 8, 43, 1, 9, 53, -3, 5, 43, 14, -22, 37, 23, 0, 37, -8, -31, 37, 27, -35, 31, 41, 0, 31, -8, -49, 31, -30, -22, 37, -40, 0, 37, -43, -35, 31, -58, 0, 31, -30, 22, 37, -8, 31, 37, -43, 35, 31, -8, 49, 31, 14, 22, 37, 27, 35, 31, 27, 35, -58, 41, 0, -58, -8, 0, -60, -8, 49, -58, -43, 35, -58, -57, 0, -58, -43, -35, -58, -8, -49, -58, 27, -35, -58
};
static const float mesh_normal_scale = 7.622044e-03;
static const int8_t mesh_normals[] PROGMEM = { // xyz face normal
-99, -66, -41, -100, 66, -39, -82, 55, 78, -77, -51, 86, -102, 62, -42, -103, -61, -40, 100, -66, 39, -77, -68, 73, 101, 67, 36, 77, 51, -86, 103, 61, 40, -71, 68, 79, 67, -44, -98, 104, -61, 37, 71, -68, -79, 60, 67, -88, -64, 65, -87, -60, -64, -90, 69, 65, 83, 64, -65, 87, -5, -52, 115, -5, 53, 115, 69, 47, 94, -65, 50, -96, 4, -52, -115, 76, -43, 91, -69, -47, -94, 5, 52, -115, -5, -55, 114, 4, -55, -114, -4, 55, 114, 3, 56, -113, -115, 47, 24, -107, -43, -52, -115, -47, 24, -107, 43, -52, -115, -47, 24, -107, 43, -52, -108, 44, 48, -115, 47, 24, -83, -34, -89, -107, -43, -52, -108, -44, 48, -83, 34, -89, -108, -44, 48, -83, 34, -89, -86, 35, 85, -86, -35, 85, -108, 44, 48, -54, -22, -112, -83, -34, -89, 117, -48, 3, 117, 48, 3, -54, 22, -112, -86, -35, 85, -54, 22, -112, -86, 35, 85, 117, 48, 3, 117, -48, 3, -54, -22, -112, -37, 15, 120, -37, -15, 120, -47, -115, 24, -47, 115, 24, -37, -15, 120, -43, -107, -52, -43, 107, -52, -44, -108, 48, -44, 108, 48, -37, 15, 120, -34, -83, -89, -34, 83, -89, -4, -1, -127, -4, 1, -126, -35, -86, 85, -35, 86, 85, 48, 117, 3, 48, -117, 3, -22, 54, -112, -22, -54, -112, -29, 12, 123, -29, -12, 123, -15, 37, 120, -15, -37, 120, -47, -115, 24, -43, 107, -52, -44, -108, 48, -47, 115, 24, -34, 83, -89, -43, -107, -52, -29, -12, 123, -35, -86, 85, -44, 108, 48, -34, -83, -89, -22, 54, -112, 48, 117, 3, -35, 86, 85, 48, -117, 3, -29, 12, 123, -15, -37, 120, -1, -4, -126, -22, -54, -112, -1, 4, -127, -108, -44, -48, -12, -29, 123, -12, 29, 123, -108, 44, -48, -108, 44, -48, -15, 37, 120, -12, -29, 123, -108, -44, -48, -57, -23, 110, -57, 23, 110, -44, -108, -48, -44, 108, -48, -23, -57, 110, -23, 57, 110, -44, 108, -48, -12, 29, 123, -44, -108, -48, 44, 108, -48, 12, -29, 123, 23, -57, 110, 44, -108, -48, 23, 57, 110, 44, -108, -48, 44, 108, -48, 57, -23, 110, 57, 23, 110, 108, 44, -48, 12, 29, 123, 15, -37, 120, 108, -44, -48, 108, -44, -48, 12, 29, 123, 12, -29, 123, 108, 44, -48, 1, -4, -127, 1, 4, -126, 22, 54, -112, 15, 37, 120, 29, -12, 123, -48, 117, 3, 35, -86, 85, -48, -117, 3, 35, 86, 85, 44, -108, 48, 34, 83, -89, 22, -54, -112, 29, 12, 123, 43, 107, -52, 34, -83, -89, 47, -115, 24, 44, 108, 48, 47, 115, 24, 43, -107, -52, 15, 37, 120, 15, -37, 120, 29, 12, 123, 29, -12, 123, 22, 54, -112, 22, -54, -112, -48, 117, 3, -48, -117, 3, 35, -86, 85, 35, 86, 85, 4, -1, -126, 4, 1, -127, 34, -83, -89, 34, 83, -89, 37, -15, 120, 44, -108, 48, 44, 108, 48, 43, 107, -52, 43, -107, -52, 37, 15, 120, 47, -115, 24, 47, 115, 24, 37, 15, 120, 37, -15, 120, 54, 22, -112, -117, 48, 3, -117, -48, 3, 86, -35, 85, 54, -22, -112, 86, 35, 85, 54, -22, -112, -117, -48, 3, -117, 48, 3, 83, 34, -89, 54, 22, -112, 108, -44, 48, 86, 35, 85, 86, -35, 85, 83, -34, -89, 108, 44, 48, 83, -34, -89, 108, 44, 48, 107, 43, -52, 83, 34, -89, 115, -47, 24, 108, -44, 48, 107, -43, -52, 115, 47, 24, 107, -43, -52, 115, 47, 24, 107, 43, -52, 115, -47, 24, -49, 75, 90, -51, -74, 89, 71, 67, -80, 69, -68, -81, -50, -70, 92, -53, 70, 91, 70, -71, -78, 68, 71, -79, -95, 67, 49, -84, -70, 63, -64, -103, 33, 98, 66, -45, -60, 97, 55, 89, -69, -57, -43, 69, 96, 60, 108, -27, -41, -76, 92, 56, -111, -24, -37, -60, 105, 66, -106, -18, 57, -101, -51, 54, 106, -43, -35, 64, 103, 63, 102, -40, -35, 63, 103, 59, 95, -59, 54, -106, -43, -35, -64, 103, -35, -63, 104, 50, -80, -83, -35, 63, 104, 46, 88, -77
};
static const uint8_t mesh_faces[] PROGMEM = { // x-sorted vertex index
62, 64, 70, 64, 67, 73, 67, 64, 61, 64, 62, 58, 73, 70, 64, 70, 68, 62, 63, 62, 68, 58, 61, 64, 67, 63, 69, 63, 67, 66, 69, 73, 67, 61, 66, 67, 62, 63, 59, 68, 69, 63, 59, 58, 62, 66, 59, 63, 70, 73, 74, 68, 70, 72, 73, 69, 33, 69, 68, 71, 61, 58, 57, 66, 61, 60, 33, 74, 73, 74, 72, 70, 58, 59, 56, 71, 33, 69, 72, 71, 68, 59, 66, 65, 57, 60, 61, 56, 57, 58, 60, 65, 66, 65, 56, 59, 36, 33, 31, 32, 33, 47, 30, 31, 33, 50, 47, 33, 33, 32, 30, 33, 36, 50, 34, 31, 14, 31, 34, 36, 46, 47, 49, 47, 46, 32, 13, 14, 31, 52, 49, 47, 31, 30, 13, 47, 50, 52, 19, 14, 12, 10, 12, 14, 14, 19, 34, 48, 49, 133, 49, 48, 46, 16, 12, 11, 9, 11, 12, 132, 133, 49, 14, 13, 10, 49, 52, 132, 12, 16, 19, 12, 10, 9, 11, 15, 16, 133, 134, 48, 124, 121, 119, 121, 120, 118, 26, 30, 32, 37, 36, 34, 118, 119, 121, 29, 32, 46, 51, 50, 36, 8, 13, 30, 35, 34, 19, 119, 122, 124, 42, 46, 48, 53, 52, 50, 134, 133, 130, 133, 132, 130, 5, 10, 13, 20, 19, 16, 4, 9, 10, 18, 16, 15, 131, 132, 52, 45, 48, 134, 122, 119, 105, 119, 118, 104, 125, 124, 122, 114, 118, 120, 32, 29, 26, 36, 37, 51, 30, 26, 8, 34, 35, 37, 50, 51, 53, 46, 42, 29, 104, 105, 119, 13, 8, 5, 19, 20, 35, 48, 45, 42, 52, 53, 131, 10, 5, 4, 16, 18, 20, 15, 17, 18, 105, 108, 122, 120, 117, 114, 135, 134, 130, 134, 135, 45, 132, 131, 130, 102, 103, 105, 101, 104, 118, 123, 122, 108, 103, 106, 108, 108, 105, 103, 122, 123, 125, 118, 114, 101, 105, 104, 102, 103, 102, 97, 106, 103, 97, 98, 102, 104, 109, 108, 106, 102, 98, 97, 107, 106, 97, 106, 107, 109, 108, 109, 123, 104, 101, 98, 111, 109, 107, 99, 101, 114, 98, 95, 97, 95, 98, 101, 110, 107, 97, 101, 99, 95, 107, 110, 111, 95, 96, 97, 96, 110, 97, 100, 111, 110, 126, 123, 109, 112, 114, 117, 99, 100, 96, 96, 95, 99, 109, 111, 126, 114, 112, 99, 110, 96, 100, 136, 135, 130, 131, 128, 130, 128, 131, 53, 127, 125, 123, 100, 99, 112, 1, 4, 5, 2, 5, 8, 22, 18, 17, 23, 20, 18, 6, 8, 26, 55, 53, 51, 43, 45, 135, 111, 100, 113, 54, 51, 37, 40, 42, 45, 24, 26, 29, 38, 35, 20, 39, 37, 35, 27, 29, 42, 123, 126, 127, 117, 115, 112, 113, 126, 111, 112, 113, 100, 53, 55, 128, 135, 136, 43, 5, 2, 1, 17, 21, 22, 8, 6, 2, 18, 22, 23, 129, 136, 130, 128, 129, 130, 45, 43, 40, 51, 54, 55, 113, 112, 115, 26, 24, 6, 20, 23, 38, 37, 39, 54, 42, 40, 27, 126, 113, 116, 29, 27, 24, 35, 38, 39, 116, 127, 126, 115, 116, 113, 129, 128, 55, 0, 1, 2, 3, 22, 21, 3, 2, 6, 44, 43, 136, 7, 23, 22, 136, 129, 44, 21, 0, 3, 2, 3, 0, 44, 55, 54, 55, 44, 129, 7, 6, 24, 22, 3, 7, 6, 7, 3, 41, 40, 43, 25, 38, 23, 43, 44, 41, 23, 7, 25, 41, 54, 39, 54, 41, 44, 25, 24, 27, 24, 25, 7, 28, 27, 40, 28, 39, 38, 40, 41, 28, 38, 25, 28, 39, 28, 41, 27, 28, 25, 84, 75, 78, 75, 76, 77, 79, 84, 85, 76, 79, 80, 77, 78, 75, 78, 85, 84, 80, 77, 76, 85, 80, 79, 85, 78, 82, 78, 77, 81, 81, 82, 78, 80, 85, 86, 82, 86, 85, 77, 80, 83, 86, 82, 88, 90, 91, 88, 87, 88, 82, 93, 88, 91, 82, 81, 87, 83, 81, 77, 91, 94, 93, 88, 87, 90, 88, 93, 86, 86, 83, 80, 92, 90, 87, 83, 86, 93, 89, 87, 81, 89, 93, 94, 94, 92, 89, 81, 83, 89, 87, 89, 92, 93, 89, 83
};
static const uint8_t mesh_ysort_faces[] PROGMEM = { // y-sorted face index
84, 155, 152, 89, 176, 65, 86, 62, 151, 174, 146, 93, 171, 70, 91, 143, 67, 148, 168, 95, 142, 101, 164, 79, 74, 162, 76, 161, 99, 157, 36, 200, 131, 41, 202, 44, 191, 83, 50, 194, 137, 100, 54, 183, 57, 181, 59, 184, 109, 135, 61, 170, 33, 207, 34, 201, 40, 204, 121, 42, 49, 193, 196, 47, 188, 52, 104, 179, 166, 186, 72, 209, 214, 123, 81, 141, 113, 119, 64, 159, 125, 115, 122, 217, 227, 211, 3, 5, 6, 14, 19, 20, 26, 29, 110, 133, 212, 221, 226, 234, 229, 232, 127, 103, 111, 0, 7, 12, 13, 17, 24, 25, 28, 218, 237, 224, 238, 90, 132, 223, 236, 107, 149, 225, 239, 222, 231, 2, 4, 8, 15, 18, 21, 23, 31, 128, 136, 112, 228, 235, 230, 233, 215, 216, 106, 129, 1, 9, 10, 11, 16, 22, 27, 30, 208, 219, 220, 116, 124, 114, 80, 175, 120, 126, 98, 158, 117, 210, 213, 167, 53, 73, 60, 134, 187, 51, 192, 43, 46, 190, 197, 118, 35, 199, 38, 205, 32, 206, 69, 178, 105, 130, 55, 180, 58, 182, 56, 185, 138, 102, 45, 189, 156, 48, 195, 37, 198, 108, 39, 203, 82, 140, 78, 163, 77, 165, 160, 75, 139, 97, 144, 71, 94, 172, 96, 145, 169, 68, 147, 92, 66, 88, 177, 153, 173, 63, 150, 87, 85, 154
};
static const uint8_t mesh_zsort_faces[] PROGMEM = { // z-sorted face index
72, 73, 100, 102, 137, 138, 166, 167, 53, 59, 78, 101, 139, 161, 180, 186, 49, 55, 79, 94, 148, 160, 184, 190, 43, 50, 71, 93, 147, 168, 189, 196, 40, 45, 70, 88, 151, 169, 194, 199, 35, 41, 66, 89, 150, 174, 198, 204, 33, 37, 65, 85, 155, 173, 202, 206, 23, 26, 22, 25, 17, 211, 16, 210, 19, 32, 36, 63, 84, 154, 176, 203, 207, 18, 215, 209, 214, 34, 87, 152, 205, 39, 62, 177, 200, 4, 5, 208, 10, 13, 213, 0, 212, 1, 6, 8, 221, 219, 12, 44, 68, 171, 195, 38, 86, 153, 201, 3, 9, 2, 217, 216, 14, 15, 7, 11, 24, 31, 27, 231, 29, 42, 92, 146, 197, 227, 48, 67, 172, 191, 220, 20, 30, 21, 28, 218, 222, 223, 226, 228, 232, 233, 236, 237, 46, 52, 54, 58, 75, 76, 91, 97, 142, 145, 163, 164, 181, 185, 187, 193, 224, 225, 229, 230, 234, 235, 238, 239, 60, 61, 82, 99, 140, 157, 178, 179, 47, 51, 56, 57, 74, 77, 95, 96, 143, 144, 162, 165, 182, 183, 188, 192, 64, 69, 83, 108, 131, 156, 170, 175, 80, 81, 105, 109, 130, 135, 158, 159, 90, 98, 104, 118, 121, 134, 141, 149, 107, 110, 114, 119, 120, 125, 129, 132, 103, 106, 113, 117, 123, 126, 133, 136, 111, 112, 115, 116, 122, 124, 127, 128
};