Example of using "Canvas" form "Graphics" library to display 3D graphics.

Dependencies:   BSP_DISCO_F746NG Graphics mbed

Models/Pikachu.cpp

Committer:
karpent
Date:
2016-11-11
Revision:
3:aca7fe2d44b3

File content as of revision 3:aca7fe2d44b3:

//
// Pikachu.cpp - example of usage graphics commands to create 3D graphics.
//
// This example is based on code written by
// Fabio de Albuquerque Dela Antonio (fabio914 at gmail.com)
// See : https://github.com/fabio914/arduinogl/blob/master/examples
//

#include "Pikachu.h"

const float model[3708] = { -5.539738f, -3.768954f, 0.000000f, -4.307949f, -3.812735f, 0.000000f, -1.438539f, -1.200866f, 0.000000f, -1.438539f, -1.200866f, 0.000000f, -4.038570f, -1.214379f, 0.000000f, -5.539738f, -3.768954f, 0.000000f, -4.307949f, -3.812735f, 0.000000f, -4.144053f, -4.801568f, -0.000000f, -1.438539f, -1.200866f, 0.000000f, -4.144053f, -4.801568f, -0.000000f, -3.012833f, -4.785862f, -0.000000f, -1.438539f, -1.200866f, 0.000000f, -3.012833f, -4.785862f, -0.000000f, -2.848938f, -5.774698f, -0.000000f, -0.794038f, -4.081137f, -0.000000f, -0.794038f, -4.081137f, -0.000000f, -1.438539f, -1.200866f, 0.000000f, -3.012833f, -4.785862f, -0.000000f, -4.038570f, -1.214379f, 0.000000f, -1.438539f, -1.200866f, 0.000000f, 0.212833f, 5.974901f, 0.000000f, 0.212833f, 5.974901f, 0.000000f, -1.438539f, -1.200866f, 0.000000f, 2.833840f, -1.001984f, 0.000000f, -1.438539f, -1.200866f, 0.000000f, -0.794038f, -4.081137f, -0.000000f, 2.833840f, -1.001984f, 0.000000f, -4.144053f, -4.801568f, -0.000000f, -4.307949f, -3.812735f, 0.000000f, -3.771819f, -3.505237f, 1.297074f, -3.771819f, -3.505237f, 1.297074f, -2.964740f, -4.217257f, 1.438483f, -4.144053f, -4.801568f, -0.000000f, -3.012833f, -4.785862f, -0.000000f, -4.144053f, -4.801568f, -0.000000f, -2.964740f, -4.217257f, 1.438483f, -2.848938f, -5.774698f, -0.000000f, -3.012833f, -4.785862f, -0.000000f, -2.964740f, -4.217257f, 1.438483f, -2.964740f, -4.217257f, 1.438483f, -2.224502f, -4.870309f, 1.568181f, -2.848938f, -5.774698f, -0.000000f, -4.307949f, -3.812735f, 0.000000f, -5.539738f, -3.768954f, 0.000000f, -3.771819f, -3.505237f, 1.297074f, -3.771819f, -3.505237f, 1.297074f, -5.539738f, -3.768954f, 0.000000f, -4.605422f, -2.769094f, 1.151340f, -0.794038f, -4.081137f, -0.000000f, -2.848938f, -5.774698f, -0.000000f, -2.224502f, -4.870309f, 1.568181f, -2.224502f, -4.870309f, 1.568181f, -0.095399f, -3.493686f, 3.396854f, -0.794038f, -4.081137f, -0.000000f, 2.833840f, -1.001984f, 0.000000f, -0.794038f, -4.081137f, -0.000000f, -0.095399f, -3.493686f, 3.396854f, -4.038570f, -1.214379f, 0.000000f, 0.212833f, 5.974901f, 0.000000f, -2.797724f, -0.015615f, 3.409093f, -4.038570f, -1.214379f, 0.000000f, -2.797724f, -0.015615f, 3.409093f, -4.605422f, -2.769094f, 1.151340f, -4.605422f, -2.769094f, 1.151340f, -5.539738f, -3.768954f, 0.000000f, -4.038570f, -1.214379f, 0.000000f, -2.964740f, -4.217257f, 1.438483f, -3.771819f, -3.505237f, 1.297074f, -2.797724f, -0.015615f, 3.409093f, -2.224502f, -4.870309f, 1.568181f, -2.964740f, -4.217257f, 1.438483f, -2.797724f, -0.015615f, 3.409093f, -3.771819f, -3.505237f, 1.297074f, -4.605422f, -2.769094f, 1.151340f, -2.797724f, -0.015615f, 3.409093f, -0.095399f, -3.493686f, 3.396854f, -2.224502f, -4.870309f, 1.568181f, -2.797724f, -0.015615f, 3.409093f, -0.095399f, -3.493686f, 3.396854f, -2.797724f, -0.015615f, 3.409093f, -4.924707f, -1.414091f, 6.819679f, -4.924707f, -1.414091f, 6.819679f, -1.064041f, -6.094393f, 6.538823f, -0.095399f, -3.493686f, 3.396854f, -2.797724f, -0.015615f, 3.409093f, 0.212833f, 5.974901f, 0.000000f, -2.806269f, 9.701880f, 6.911485f, -2.806269f, 9.701880f, 6.911485f, -4.924707f, -1.414091f, 6.819679f, -2.797724f, -0.015615f, 3.409093f, -0.095399f, -3.493686f, 3.396854f, -1.064041f, -6.094393f, 6.538823f, 7.318575f, -8.181732f, 7.251115f, 7.318575f, -8.181732f, 7.251115f, 7.332893f, -4.468502f, 3.035453f, -0.095399f, -3.493686f, 3.396854f, 7.332893f, -4.468502f, 3.035453f, 2.833840f, -1.001984f, 0.000000f, -0.095399f, -3.493686f, 3.396854f, 2.833840f, -1.001984f, 0.000000f, 7.332893f, -4.468502f, 3.035453f, 7.347628f, -0.345043f, 0.000000f, -2.806269f, 9.701880f, 6.911485f, 0.212833f, 5.974901f, 0.000000f, 4.992514f, 8.669660f, 0.000000f, 4.992514f, 8.669660f, 0.000000f, 7.404200f, 15.154014f, 6.717684f, -2.806269f, 9.701880f, 6.911485f, 7.390337f, 11.355589f, 25.343040f, -1.156504f, 6.769886f, 25.503311f, -2.806269f, 9.701880f, 6.911485f, -2.806269f, 9.701880f, 6.911485f, 7.404200f, 15.154014f, 6.717684f, 7.390337f, 11.355589f, 25.343040f, -1.156504f, 6.769886f, 25.503311f, 7.390337f, 11.355589f, 25.343040f, 7.392986f, 12.969517f, 30.596918f, 7.392986f, 12.969517f, 30.596918f, -2.378038f, 7.609754f, 29.987549f, -1.156504f, 6.769886f, 25.503311f, -2.378038f, 7.609754f, 29.987549f, 7.392986f, 12.969517f, 30.596918f, 7.389394f, 10.209548f, 43.675125f, 7.389394f, 10.209548f, 43.675125f, -1.112535f, 5.337115f, 44.135113f, -2.378038f, 7.609754f, 29.987549f, 4.992514f, 8.669660f, 0.000000f, 6.560344f, 24.639845f, 0.000000f, 5.476238f, 27.080624f, 3.887028f, 5.476238f, 27.080624f, 3.887028f, 4.129376f, 20.061457f, 5.779599f, 4.992514f, 8.669660f, 0.000000f, 4.129376f, 20.061457f, 5.779599f, 5.476238f, 27.080624f, 3.887028f, 6.155193f, 24.991884f, 8.632037f, 6.155193f, 24.991884f, 8.632037f, 4.831220f, 17.723888f, 10.245268f, 4.129376f, 20.061457f, 5.779599f, 4.831220f, 17.723888f, 10.245268f, 6.155193f, 24.991884f, 8.632037f, 5.734873f, 29.086515f, 14.934714f, 5.734873f, 29.086515f, 14.934714f, 4.065323f, 20.013741f, 17.045088f, 4.831220f, 17.723888f, 10.245268f, 4.065323f, 20.013741f, 17.045088f, 5.734873f, 29.086515f, 14.934714f, 6.355259f, 28.509245f, 21.455393f, 6.355259f, 28.509245f, 21.455393f, 4.143809f, 15.594004f, 24.428383f, 4.065323f, 20.013741f, 17.045088f, 4.143809f, 15.594004f, 24.428383f, 6.355259f, 28.509245f, 21.455393f, 6.044722f, 36.033566f, 32.743652f, 6.044722f, 36.033566f, 32.743652f, 3.680145f, 27.997072f, 42.629868f, 4.143809f, 15.594004f, 24.428383f, 7.404200f, 15.154014f, 6.717684f, 4.992514f, 8.669660f, 0.000000f, 7.395069f, 12.652242f, 3.473820f, 4.992514f, 8.669660f, 0.000000f, 4.129376f, 20.061457f, 5.779599f, 7.395069f, 12.652242f, 3.473820f, -1.156504f, 6.769886f, 25.503311f, -3.251845f, -0.057658f, 19.269463f, -4.924707f, -1.414091f, 6.819679f, -4.924707f, -1.414091f, 6.819679f, -2.806269f, 9.701880f, 6.911485f, -1.156504f, 6.769886f, 25.503311f, -1.156504f, 6.769886f, 25.503311f, -2.155961f, 2.247481f, 25.289112f, -3.251845f, -0.057658f, 19.269463f, -3.251845f, -0.057658f, 19.269463f, -2.155961f, 2.247481f, 25.289112f, -4.784894f, -4.558351f, 21.355616f, -4.784894f, -4.558351f, 21.355616f, -4.747807f, -4.044468f, 15.678835f, -3.251845f, -0.057658f, 19.269463f, -4.747807f, -4.044468f, 15.678835f, -4.784894f, -4.558351f, 21.355616f, 1.405830f, -8.681398f, 17.677410f, 1.405830f, -8.681398f, 17.677410f, -0.400345f, -7.063436f, 13.588383f, -4.747807f, -4.044468f, 15.678835f, -0.400345f, -7.063436f, 13.588383f, 1.405830f, -8.681398f, 17.677410f, 4.569384f, -8.806929f, 17.070992f, -0.400345f, -7.063436f, 13.588383f, 4.569384f, -8.806929f, 17.070992f, 4.459775f, -8.170643f, 15.255916f, -0.400345f, -7.063436f, 13.588383f, 4.459775f, -8.170643f, 15.255916f, 4.120597f, -7.750196f, 14.155172f, -0.400345f, -7.063436f, 13.588383f, 4.120597f, -7.750196f, 14.155172f, 3.805834f, -7.357590f, 13.126703f, -1.112535f, 5.337115f, 44.135113f, 7.389394f, 10.209548f, 43.675125f, 7.342481f, -1.755349f, 46.878002f, 7.342481f, -1.755349f, 46.878002f, 0.265503f, -0.751631f, 45.553356f, -1.112535f, 5.337115f, 44.135113f, 1.080373f, -8.575625f, 31.963448f, 7.308156f, -11.159800f, 32.688374f, 7.312078f, -10.085270f, 28.536547f, 7.312078f, -10.085270f, 28.536547f, -0.296664f, -7.294125f, 28.770905f, 1.080373f, -8.575625f, 31.963448f, -0.296664f, -7.294125f, 28.770905f, 7.312078f, -10.085270f, 28.536547f, 7.327550f, -5.846064f, 24.956141f, 7.327550f, -5.846064f, 24.956141f, 1.895971f, -4.169862f, 25.367369f, -0.296664f, -7.294125f, 28.770905f, 1.251503f, -5.247501f, 37.201290f, 3.653726f, -6.376678f, 37.277554f, 3.668271f, -5.650332f, 34.978966f, 3.668271f, -5.650332f, 34.978966f, 1.256280f, -4.414838f, 34.583401f, 1.251503f, -5.247501f, 37.201290f, 4.129376f, 20.061457f, 5.779599f, 4.831220f, 17.723888f, 10.245268f, 7.411455f, 17.763485f, 10.409961f, 7.411455f, 17.763485f, 10.409961f, 7.421850f, 19.989561f, 5.611809f, 4.129376f, 20.061457f, 5.779599f, 7.422492f, 20.165249f, 17.050919f, 7.411455f, 17.763485f, 10.409961f, 4.831220f, 17.723888f, 10.245268f, 4.831220f, 17.723888f, 10.245268f, 4.065323f, 20.013741f, 17.045088f, 7.422492f, 20.165249f, 17.050919f, 4.065323f, 20.013741f, 17.045088f, 4.143809f, 15.594004f, 24.428383f, 7.402476f, 15.512046f, 24.353392f, 7.402476f, 15.512046f, 24.353392f, 7.422492f, 20.165249f, 17.050919f, 4.065323f, 20.013741f, 17.045088f, 4.143809f, 15.594004f, 24.428383f, 3.680145f, 27.997072f, 42.629868f, 7.451022f, 27.981888f, 42.640167f, 7.451022f, 27.981888f, 42.640167f, 7.402476f, 15.512046f, 24.353392f, 4.143809f, 15.594004f, 24.428383f, 4.129376f, 20.061457f, 5.779599f, 7.421850f, 19.989561f, 5.611809f, 7.395069f, 12.652242f, 3.473820f, 4.459775f, -8.170643f, 15.255916f, 4.881968f, -7.958671f, 14.516864f, 4.120597f, -7.750196f, 14.155172f, 4.459775f, -8.170643f, 15.255916f, 4.569384f, -8.806929f, 17.070992f, 5.154751f, -8.509578f, 16.012430f, 4.120597f, -7.750196f, 14.155172f, 4.509461f, -7.648806f, 13.743653f, 3.805834f, -7.357590f, 13.126703f, 1.405830f, -8.681398f, 17.677410f, -4.784894f, -4.558351f, 21.355616f, -0.802266f, -3.523405f, 21.358763f, -0.802266f, -3.523405f, 21.358763f, 1.079479f, -4.688925f, 20.261789f, 1.405830f, -8.681398f, 17.677410f, -4.747807f, -4.044468f, 15.678835f, -0.400345f, -7.063436f, 13.588383f, -0.405376f, -5.446152f, 12.146640f, -0.405376f, -5.446152f, 12.146640f, -2.666151f, -2.447883f, 13.083079f, -4.747807f, -4.044468f, 15.678835f, 4.569384f, -8.806929f, 17.070992f, 1.405830f, -8.681398f, 17.677410f, 1.079479f, -4.688925f, 20.261789f, 1.079479f, -4.688925f, 20.261789f, 4.887557f, -5.936971f, 18.927929f, 4.569384f, -8.806929f, 17.070992f, -0.400345f, -7.063436f, 13.588383f, 3.805834f, -7.357590f, 13.126703f, 3.708996f, -6.551171f, 12.173764f, 3.708996f, -6.551171f, 12.173764f, -0.405376f, -5.446152f, 12.146640f, -0.400345f, -7.063436f, 13.588383f, 5.154751f, -8.509578f, 16.012430f, 4.569384f, -8.806929f, 17.070992f, 4.887557f, -5.936971f, 18.927929f, 4.887557f, -5.936971f, 18.927929f, 5.991712f, -6.647191f, 16.045710f, 5.154751f, -8.509578f, 16.012430f, 3.805834f, -7.357590f, 13.126703f, 4.509461f, -7.648806f, 13.743653f, 5.477915f, -6.819143f, 13.787570f, 5.477915f, -6.819143f, 13.787570f, 3.708996f, -6.551171f, 12.173764f, 3.805834f, -7.357590f, 13.126703f, 4.459775f, -8.170643f, 15.255916f, 5.154751f, -8.509578f, 16.012430f, 5.991712f, -6.647191f, 16.045710f, 5.991712f, -6.647191f, 16.045710f, 5.360450f, -6.560156f, 15.408227f, 4.459775f, -8.170643f, 15.255916f, 4.120597f, -7.750196f, 14.155172f, 4.881968f, -7.958671f, 14.516864f, 5.890128f, -6.807933f, 14.691280f, 5.890128f, -6.807933f, 14.691280f, 5.070531f, -6.644487f, 14.224989f, 4.120597f, -7.750196f, 14.155172f, 4.509461f, -7.648806f, 13.743653f, 4.120597f, -7.750196f, 14.155172f, 5.070531f, -6.644487f, 14.224989f, 5.070531f, -6.644487f, 14.224989f, 5.477915f, -6.819143f, 13.787570f, 4.509461f, -7.648806f, 13.743653f, 4.881968f, -7.958671f, 14.516864f, 4.459775f, -8.170643f, 15.255916f, 5.360450f, -6.560156f, 15.408227f, 5.360450f, -6.560156f, 15.408227f, 5.890128f, -6.807933f, 14.691280f, 4.881968f, -7.958671f, 14.516864f, -4.784894f, -4.558351f, 21.355616f, -2.155961f, 2.247481f, 25.289112f, -0.802266f, -3.523405f, 21.358763f, -4.747807f, -4.044468f, 15.678835f, -2.666151f, -2.447883f, 13.083079f, -3.251845f, -0.057658f, 19.269463f, 5.991712f, -6.647191f, 16.045710f, 4.887557f, -5.936971f, 18.927929f, 7.324408f, -6.706909f, 18.302906f, 7.324408f, -6.706909f, 18.302906f, 7.323162f, -7.048462f, 15.838820f, 5.991712f, -6.647191f, 16.045710f, 3.708996f, -6.551171f, 12.173764f, 5.477915f, -6.819143f, 13.787570f, 7.321928f, -7.386584f, 13.399504f, 7.321928f, -7.386584f, 13.399504f, 7.321089f, -7.616257f, 11.742564f, 3.708996f, -6.551171f, 12.173764f, 5.360450f, -6.560156f, 15.408227f, 5.991712f, -6.647191f, 16.045710f, 7.323162f, -7.048462f, 15.838820f, 7.323162f, -7.048462f, 15.838820f, 7.322854f, -7.132998f, 15.228947f, 5.360450f, -6.560156f, 15.408227f, 5.070531f, -6.644487f, 14.224989f, 5.890128f, -6.807933f, 14.691280f, 7.322489f, -7.232655f, 14.509995f, 7.322489f, -7.232655f, 14.509995f, 7.322289f, -7.287514f, 14.114231f, 5.070531f, -6.644487f, 14.224989f, 5.477915f, -6.819143f, 13.787570f, 5.070531f, -6.644487f, 14.224989f, 7.322289f, -7.287514f, 14.114231f, 7.322289f, -7.287514f, 14.114231f, 7.321928f, -7.386584f, 13.399504f, 5.477915f, -6.819143f, 13.787570f, 5.890128f, -6.807933f, 14.691280f, 5.360450f, -6.560156f, 15.408227f, 7.322854f, -7.132998f, 15.228947f, 7.322854f, -7.132998f, 15.228947f, 7.322489f, -7.232655f, 14.509995f, 5.890128f, -6.807933f, 14.691280f, 3.708996f, -6.551171f, 12.173764f, 7.321089f, -7.616257f, 11.742564f, 7.318575f, -8.181732f, 7.251115f, -1.064041f, -6.094393f, 6.538823f, -0.405376f, -5.446152f, 12.146640f, 3.708996f, -6.551171f, 12.173764f, 3.708996f, -6.551171f, 12.173764f, 7.318575f, -8.181732f, 7.251115f, -1.064041f, -6.094393f, 6.538823f, 4.887557f, -5.936971f, 18.927929f, 1.079479f, -4.688925f, 20.261789f, 1.895971f, -4.169862f, 25.367369f, 7.324408f, -6.706909f, 18.302906f, 4.887557f, -5.936971f, 18.927929f, 1.895971f, -4.169862f, 25.367369f, 1.895971f, -4.169862f, 25.367369f, 7.327550f, -5.846064f, 24.956141f, 7.324408f, -6.706909f, 18.302906f, -2.666151f, -2.447883f, 13.083079f, -0.405376f, -5.446152f, 12.146640f, -1.064041f, -6.094393f, 6.538823f, -1.064041f, -6.094393f, 6.538823f, -4.924707f, -1.414091f, 6.819679f, -2.666151f, -2.447883f, 13.083079f, -3.251845f, -0.057658f, 19.269463f, -2.666151f, -2.447883f, 13.083079f, -4.924707f, -1.414091f, 6.819679f, 1.895971f, -4.169862f, 25.367369f, 1.079479f, -4.688925f, 20.261789f, -0.802266f, -3.523405f, 21.358763f, -0.802266f, -3.523405f, 21.358763f, -2.155961f, 2.247481f, 25.289112f, 1.895971f, -4.169862f, 25.367369f, 7.347628f, -0.345043f, 0.000000f, 4.992514f, 8.669660f, 0.000000f, 0.212833f, 5.974901f, 0.000000f, 0.212833f, 5.974901f, 0.000000f, 2.833840f, -1.001984f, 0.000000f, 7.347628f, -0.345043f, 0.000000f, 5.476238f, 27.080624f, 3.887028f, 6.560344f, 24.639845f, 0.000000f, 7.438875f, 24.654293f, 0.000000f, 7.438875f, 24.654293f, 0.000000f, 7.448072f, 27.173620f, 4.010532f, 5.476238f, 27.080624f, 3.887028f, -1.112535f, 5.337115f, 44.135113f, 0.265503f, -0.751631f, 45.553356f, -2.306926f, 0.087779f, 49.248196f, -2.306926f, 0.087779f, 49.248196f, -2.891684f, 6.301509f, 47.072754f, -1.112535f, 5.337115f, 44.135113f, -5.250957f, 5.681880f, 43.694244f, -5.527353f, -0.421932f, 43.762058f, -2.655676f, -1.320220f, 40.688511f, -2.655676f, -1.320220f, 40.688511f, -1.801986f, 4.293036f, 39.759407f, -5.250957f, 5.681880f, 43.694244f, -1.112535f, 5.337115f, 44.135113f, -2.891684f, 6.301509f, 47.072754f, -5.250957f, 5.681880f, 43.694244f, -5.250957f, 5.681880f, 43.694244f, -1.801986f, 4.293036f, 39.759407f, -1.112535f, 5.337115f, 44.135113f, -5.527353f, -0.421932f, 43.762058f, -2.306926f, 0.087779f, 49.248196f, 0.265503f, -0.751631f, 45.553356f, 0.265503f, -0.751631f, 45.553356f, -2.655676f, -1.320220f, 40.688511f, -5.527353f, -0.421932f, 43.762058f, 1.895971f, -4.169862f, 25.367369f, -2.155961f, 2.247481f, 25.289112f, -4.095365f, -1.711470f, 29.019276f, -4.095365f, -1.711470f, 29.019276f, -0.296664f, -7.294125f, 28.770905f, 1.895971f, -4.169862f, 25.367369f, -3.737267f, -1.586870f, 31.882002f, -2.378038f, 7.609754f, 29.987549f, -1.801986f, 4.293036f, 39.759407f, -1.801986f, 4.293036f, 39.759407f, -2.655676f, -1.320220f, 40.688511f, -3.737267f, -1.586870f, 31.882002f, -1.801986f, 4.293036f, 39.759407f, -2.378038f, 7.609754f, 29.987549f, -1.112535f, 5.337115f, 44.135113f, 0.114188f, -5.271675f, 40.927006f, -2.655676f, -1.320220f, 40.688511f, 0.265503f, -0.751631f, 45.553356f, -2.378038f, 7.609754f, 29.987549f, -4.095365f, -1.711470f, 29.019276f, -2.155961f, 2.247481f, 25.289112f, -2.155961f, 2.247481f, 25.289112f, -1.156504f, 6.769886f, 25.503311f, -2.378038f, 7.609754f, 29.987549f, -4.095365f, -1.711470f, 29.019276f, -2.378038f, 7.609754f, 29.987549f, -3.737267f, -1.586870f, 31.882002f, 0.265503f, -0.751631f, 45.553356f, 7.342481f, -1.755349f, 46.878002f, 7.320009f, -7.912378f, 40.945305f, 7.320009f, -7.912378f, 40.945305f, 0.114188f, -5.271675f, 40.927006f, 0.265503f, -0.751631f, 45.553356f, 7.314791f, -9.341828f, 33.737534f, 7.308156f, -11.159800f, 32.688374f, 1.080373f, -8.575625f, 31.963448f, 1.080373f, -8.575625f, 31.963448f, -0.047018f, -6.856034f, 32.473053f, 7.314791f, -9.341828f, 33.737534f, -2.655676f, -1.320220f, 40.688511f, 0.114188f, -5.271675f, 40.927006f, -0.047018f, -6.856034f, 32.473053f, -0.047018f, -6.856034f, 32.473053f, -3.737267f, -1.586870f, 31.882002f, -2.655676f, -1.320220f, 40.688511f, -2.891684f, 6.301509f, 47.072754f, -2.306926f, 0.087779f, 49.248196f, -5.861135f, 1.639917f, 53.478088f, -5.861135f, 1.639917f, 53.478088f, -6.854596f, 5.761014f, 52.715530f, -2.891684f, 6.301509f, 47.072754f, -5.527353f, -0.421932f, 43.762058f, -5.250957f, 5.681880f, 43.694244f, -8.320417f, 5.422955f, 48.878498f, -8.320417f, 5.422955f, 48.878498f, -8.509175f, 1.068752f, 48.895195f, -5.527353f, -0.421932f, 43.762058f, -2.306926f, 0.087779f, 49.248196f, -5.527353f, -0.421932f, 43.762058f, -8.509175f, 1.068752f, 48.895195f, -8.509175f, 1.068752f, 48.895195f, -5.861135f, 1.639917f, 53.478088f, -2.306926f, 0.087779f, 49.248196f, -5.250957f, 5.681880f, 43.694244f, -2.891684f, 6.301509f, 47.072754f, -6.854596f, 5.761014f, 52.715530f, -6.854596f, 5.761014f, 52.715530f, -8.320417f, 5.422955f, 48.878498f, -5.250957f, 5.681880f, 43.694244f, -5.861135f, 1.639917f, 53.478088f, -8.980489f, 3.165865f, 55.744457f, -9.483842f, 4.570985f, 55.744457f, -9.483842f, 4.570985f, 55.744457f, -6.854596f, 5.761014f, 52.715530f, -5.861135f, 1.639917f, 53.478088f, -8.320417f, 5.422955f, 48.878498f, -10.229669f, 4.314857f, 55.744457f, -10.231610f, 3.514750f, 55.744457f, -10.231610f, 3.514750f, 55.744457f, -8.509175f, 1.068752f, 48.895195f, -8.320417f, 5.422955f, 48.878498f, -8.509175f, 1.068752f, 48.895195f, -10.231610f, 3.514750f, 55.744457f, -8.980489f, 3.165865f, 55.744457f, -8.980489f, 3.165865f, 55.744457f, -5.861135f, 1.639917f, 53.478088f, -8.509175f, 1.068752f, 48.895195f, -6.854596f, 5.761014f, 52.715530f, -9.483842f, 4.570985f, 55.744457f, -10.229669f, 4.314857f, 55.744457f, -10.229669f, 4.314857f, 55.744457f, -8.320417f, 5.422955f, 48.878498f, -6.854596f, 5.761014f, 52.715530f, 0.114188f, -5.271675f, 40.927006f, 0.283189f, -5.667732f, 39.128136f, 0.220241f, -6.632166f, 34.222805f, 0.220241f, -6.632166f, 34.222805f, -0.047018f, -6.856034f, 32.473053f, 0.114188f, -5.271675f, 40.927006f, 7.314791f, -9.341828f, 33.737534f, 4.032390f, -7.922213f, 34.709949f, 3.894432f, -6.999287f, 38.999115f, 3.894432f, -6.999287f, 38.999115f, 7.320009f, -7.912378f, 40.945305f, 7.314791f, -9.341828f, 33.737534f, 0.114188f, -5.271675f, 40.927006f, 7.320009f, -7.912378f, 40.945305f, 3.894432f, -6.999287f, 38.999115f, 3.894432f, -6.999287f, 38.999115f, 0.283189f, -5.667732f, 39.128136f, 0.114188f, -5.271675f, 40.927006f, 7.314791f, -9.341828f, 33.737534f, -0.047018f, -6.856034f, 32.473053f, 0.220241f, -6.632166f, 34.222805f, 0.220241f, -6.632166f, 34.222805f, 4.032390f, -7.922213f, 34.709949f, 7.314791f, -9.341828f, 33.737534f, 0.220241f, -6.632166f, 34.222805f, 0.283189f, -5.667732f, 39.128136f, 1.251503f, -5.247501f, 37.201290f, 1.251503f, -5.247501f, 37.201290f, 1.256280f, -4.414838f, 34.583401f, 0.220241f, -6.632166f, 34.222805f, 0.283189f, -5.667732f, 39.128136f, 3.894432f, -6.999287f, 38.999115f, 3.653726f, -6.376678f, 37.277554f, 3.653726f, -6.376678f, 37.277554f, 1.251503f, -5.247501f, 37.201290f, 0.283189f, -5.667732f, 39.128136f, 3.894432f, -6.999287f, 38.999115f, 4.032390f, -7.922213f, 34.709949f, 3.668271f, -5.650332f, 34.978966f, 3.668271f, -5.650332f, 34.978966f, 3.653726f, -6.376678f, 37.277554f, 3.894432f, -6.999287f, 38.999115f, 4.032390f, -7.922213f, 34.709949f, 0.220241f, -6.632166f, 34.222805f, 1.256280f, -4.414838f, 34.583401f, 1.256280f, -4.414838f, 34.583401f, 3.668271f, -5.650332f, 34.978966f, 4.032390f, -7.922213f, 34.709949f, 5.734873f, 29.086515f, 14.934714f, 6.155193f, 24.991884f, 8.632037f, 7.438042f, 25.047373f, 8.677461f, 7.438042f, 25.047373f, 8.677461f, 7.455090f, 29.096563f, 14.903179f, 5.734873f, 29.086515f, 14.934714f, 6.355259f, 28.509245f, 21.455393f, 5.734873f, 29.086515f, 14.934714f, 7.455090f, 29.096563f, 14.903179f, 7.455090f, 29.096563f, 14.903179f, 7.449881f, 28.499632f, 21.485111f, 6.355259f, 28.509245f, 21.455393f, 6.044722f, 36.033566f, 32.743652f, 6.355259f, 28.509245f, 21.455393f, 7.449881f, 28.499632f, 21.485111f, 7.449881f, 28.499632f, 21.485111f, 7.480425f, 36.037731f, 32.738682f, 6.044722f, 36.033566f, 32.743652f, 7.451022f, 27.981888f, 42.640167f, 3.680145f, 27.997072f, 42.629868f, 6.044722f, 36.033566f, 32.743652f, 6.044722f, 36.033566f, 32.743652f, 7.480425f, 36.037731f, 32.738682f, 7.451022f, 27.981888f, 42.640167f, 6.155193f, 24.991884f, 8.632037f, 5.476238f, 27.080624f, 3.887028f, 7.448072f, 27.173620f, 4.010532f, 7.448072f, 27.173620f, 4.010532f, 7.438042f, 25.047373f, 8.677461f, 6.155193f, 24.991884f, 8.632037f, 7.438875f, 24.654293f, 0.000000f, 6.560344f, 24.639845f, 0.000000f, 4.992514f, 8.669660f, 0.000000f, 4.992514f, 8.669660f, 0.000000f, 7.347628f, -0.345043f, 0.000000f, 7.438875f, 24.654293f, 0.000000f, -0.296664f, -7.294125f, 28.770905f, -4.095365f, -1.711470f, 29.019276f, -0.047018f, -6.856034f, 32.473053f, -0.047018f, -6.856034f, 32.473053f, 1.080373f, -8.575625f, 31.963448f, -0.296664f, -7.294125f, 28.770905f, -3.737267f, -1.586870f, 31.882002f, -0.047018f, -6.856034f, 32.473053f, -4.095365f, -1.711470f, 29.019276f, -10.229669f, 4.314857f, 55.744457f, -9.483842f, 4.570985f, 55.744457f, -8.980489f, 3.165865f, 55.744457f, -8.980489f, 3.165865f, 55.744457f, -10.231610f, 3.514750f, 55.744457f, -10.229669f, 4.314857f, 55.744457f, 20.209656f, -3.862938f, -0.000000f, 18.727179f, -1.297473f, 0.000000f, 16.127314f, -1.264982f, 0.000000f, 16.127314f, -1.264982f, 0.000000f, 18.977581f, -3.897727f, -0.000000f, 20.209656f, -3.862938f, -0.000000f, 18.977581f, -3.897727f, -0.000000f, 16.127314f, -1.264982f, 0.000000f, 18.806473f, -4.885337f, 0.000000f, 18.806473f, -4.885337f, 0.000000f, 16.127314f, -1.264982f, 0.000000f, 17.675398f, -4.861373f, 0.000000f, 17.675398f, -4.861373f, 0.000000f, 16.127314f, -1.264982f, 0.000000f, 15.461807f, -4.140471f, 0.000000f, 15.461807f, -4.140471f, 0.000000f, 17.504288f, -5.848987f, 0.000000f, 17.675398f, -4.861373f, 0.000000f, 18.727179f, -1.297473f, 0.000000f, 14.528370f, 5.922650f, 0.000000f, 16.127314f, -1.264982f, 0.000000f, 14.528370f, 5.922650f, 0.000000f, 11.856124f, -1.032645f, 0.000000f, 16.127314f, -1.264982f, 0.000000f, 16.127314f, -1.264982f, 0.000000f, 11.856124f, -1.032645f, 0.000000f, 15.461807f, -4.140471f, 0.000000f, 18.806473f, -4.885337f, 0.000000f, 17.631454f, -4.292431f, 1.438478f, 18.443754f, -3.586349f, 1.297154f, 18.443754f, -3.586349f, 1.297154f, 18.977581f, -3.897727f, -0.000000f, 18.806473f, -4.885337f, 0.000000f, 17.675398f, -4.861373f, 0.000000f, 17.631454f, -4.292431f, 1.438478f, 18.806473f, -4.885337f, 0.000000f, 17.504288f, -5.848987f, 0.000000f, 16.886425f, -4.940037f, 1.568099f, 17.631454f, -4.292431f, 1.438478f, 17.631454f, -4.292431f, 1.438478f, 17.675398f, -4.861373f, 0.000000f, 17.504288f, -5.848987f, 0.000000f, 18.977581f, -3.897727f, -0.000000f, 18.443754f, -3.586349f, 1.297154f, 20.209656f, -3.862938f, -0.000000f, 18.443754f, -3.586349f, 1.297154f, 19.282759f, -2.856338f, 1.151509f, 20.209656f, -3.862938f, -0.000000f, 15.461807f, -4.140471f, 0.000000f, 14.767524f, -3.547750f, 3.397244f, 16.886425f, -4.940037f, 1.568099f, 16.886425f, -4.940037f, 1.568099f, 17.504288f, -5.848987f, 0.000000f, 15.461807f, -4.140471f, 0.000000f, 11.856124f, -1.032645f, 0.000000f, 14.767524f, -3.547750f, 3.397244f, 15.461807f, -4.140471f, 0.000000f, 18.727179f, -1.297473f, 0.000000f, 17.495457f, -0.090444f, 3.409453f, 14.528370f, 5.922650f, 0.000000f, 18.727179f, -1.297473f, 0.000000f, 20.209656f, -3.862938f, -0.000000f, 19.282759f, -2.856338f, 1.151509f, 19.282759f, -2.856338f, 1.151509f, 17.495457f, -0.090444f, 3.409453f, 18.727179f, -1.297473f, 0.000000f, 17.631454f, -4.292431f, 1.438478f, 17.495457f, -0.090444f, 3.409453f, 18.443754f, -3.586349f, 1.297154f, 16.886425f, -4.940037f, 1.568099f, 17.495457f, -0.090444f, 3.409453f, 17.631454f, -4.292431f, 1.438478f, 18.443754f, -3.586349f, 1.297154f, 17.495457f, -0.090444f, 3.409453f, 19.282759f, -2.856338f, 1.151509f, 14.767524f, -3.547750f, 3.397244f, 17.495457f, -0.090444f, 3.409453f, 16.886425f, -4.940037f, 1.568099f, 14.767524f, -3.547750f, 3.397244f, 15.717390f, -6.157343f, 6.537314f, 19.611834f, -1.503649f, 6.819679f, 19.611834f, -1.503649f, 6.819679f, 17.495457f, -0.090444f, 3.409453f, 14.767524f, -3.547750f, 3.397244f, 17.495457f, -0.090444f, 3.409453f, 19.611834f, -1.503649f, 6.819679f, 17.574598f, 9.627490f, 6.911485f, 17.574598f, 9.627490f, 6.911485f, 14.528370f, 5.922650f, 0.000000f, 17.495457f, -0.090444f, 3.409453f, 14.767524f, -3.547750f, 3.397244f, 7.332893f, -4.468502f, 3.035453f, 7.318575f, -8.181732f, 7.251115f, 7.318575f, -8.181732f, 7.251115f, 15.717390f, -6.157343f, 6.537314f, 14.767524f, -3.547750f, 3.397244f, 7.332893f, -4.468502f, 3.035453f, 14.767524f, -3.547750f, 3.397244f, 11.856124f, -1.032645f, 0.000000f, 11.856124f, -1.032645f, 0.000000f, 7.347628f, -0.345043f, 0.000000f, 7.332893f, -4.468502f, 3.035453f, 17.574598f, 9.627490f, 6.911485f, 7.404200f, 15.154014f, 6.717684f, 9.768484f, 8.652227f, 0.000000f, 9.768484f, 8.652227f, 0.000000f, 14.528370f, 5.922650f, 0.000000f, 17.574598f, 9.627490f, 6.911485f, 7.390337f, 11.355589f, 25.343040f, 7.404200f, 15.154014f, 6.717684f, 17.574598f, 9.627490f, 6.911485f, 17.574598f, 9.627490f, 6.911485f, 15.936548f, 6.715140f, 25.493473f, 7.390337f, 11.355589f, 25.343040f, 15.936548f, 6.715140f, 25.493473f, 17.085196f, 7.535858f, 29.997444f, 7.392986f, 12.969517f, 30.596918f, 7.392986f, 12.969517f, 30.596918f, 7.390337f, 11.355589f, 25.343040f, 15.936548f, 6.715140f, 25.493473f, 17.085196f, 7.535858f, 29.997444f, 15.764883f, 5.300316f, 43.846039f, 7.389394f, 10.209548f, 43.675125f, 7.389394f, 10.209548f, 43.675125f, 7.392986f, 12.969517f, 30.596918f, 17.085196f, 7.535858f, 29.997444f, 9.768484f, 8.652227f, 0.000000f, 10.714760f, 20.037420f, 5.779599f, 9.419173f, 27.066231f, 3.887028f, 9.419173f, 27.066231f, 3.887028f, 8.317277f, 24.633436f, 0.000000f, 9.768484f, 8.652227f, 0.000000f, 10.714760f, 20.037420f, 5.779599f, 9.991334f, 17.705053f, 10.245268f, 8.720451f, 24.982521f, 8.632037f, 8.720451f, 24.982521f, 8.632037f, 9.419173f, 27.066231f, 3.887028f, 10.714760f, 20.037420f, 5.779599f, 9.991334f, 17.705053f, 10.245268f, 10.778464f, 19.989239f, 17.045088f, 9.175188f, 29.073957f, 14.934714f, 9.175188f, 29.073957f, 14.934714f, 8.720451f, 24.982521f, 8.632037f, 9.991334f, 17.705053f, 10.245268f, 10.778464f, 19.989239f, 17.045088f, 10.661654f, 15.570215f, 24.428383f, 8.544544f, 28.501253f, 21.455393f, 8.544544f, 28.501253f, 21.455393f, 9.175188f, 29.073957f, 14.934714f, 10.778464f, 19.989239f, 17.045088f, 10.661654f, 15.570215f, 24.428383f, 11.292462f, 27.969028f, 42.629868f, 8.916059f, 36.023087f, 32.743652f, 8.916059f, 36.023087f, 32.743652f, 8.544544f, 28.501253f, 21.455393f, 10.661654f, 15.570215f, 24.428383f, 7.404200f, 15.154014f, 6.717684f, 7.395069f, 12.652242f, 3.473820f, 9.768484f, 8.652227f, 0.000000f, 9.768484f, 8.652227f, 0.000000f, 7.395069f, 12.652242f, 3.473820f, 10.714760f, 20.037420f, 5.779599f, 15.936548f, 6.715140f, 25.493473f, 17.574598f, 9.627490f, 6.911485f, 19.611834f, -1.503649f, 6.819679f, 19.611834f, -1.503649f, 6.819679f, 17.948919f, -0.135040f, 19.269463f, 15.936548f, 6.715140f, 25.493473f, 15.936548f, 6.715140f, 25.493473f, 17.948919f, -0.135040f, 19.269463f, 16.836815f, 2.170514f, 25.298950f, 17.948919f, -0.135040f, 19.269463f, 19.415737f, -4.132664f, 15.678835f, 19.449072f, -4.646804f, 21.355616f, 19.449072f, -4.646804f, 21.355616f, 16.836815f, 2.170514f, 25.298950f, 17.948919f, -0.135040f, 19.269463f, 19.415737f, -4.132664f, 15.678835f, 15.046353f, -7.119816f, 13.588383f, 13.228415f, -8.724550f, 17.677410f, 13.228415f, -8.724550f, 17.677410f, 19.449072f, -4.646804f, 21.355616f, 19.415737f, -4.132664f, 15.678835f, 15.046353f, -7.119816f, 13.588383f, 10.838140f, -7.383258f, 13.126703f, 10.520519f, -7.773556f, 14.155172f, 15.046353f, -7.119816f, 13.588383f, 10.520519f, -7.773556f, 14.155172f, 10.178280f, -8.191515f, 15.255916f, 15.046353f, -7.119816f, 13.588383f, 10.178280f, -8.191515f, 15.255916f, 10.064029f, -8.826984f, 17.070992f, 15.046353f, -7.119816f, 13.588383f, 10.064029f, -8.826984f, 17.070992f, 13.228415f, -8.724550f, 17.677410f, 15.764883f, 5.300316f, 43.846039f, 14.186281f, -0.591499f, 45.610146f, 7.342481f, -1.755349f, 46.878002f, 7.342481f, -1.755349f, 46.878002f, 7.389394f, 10.209548f, 43.675125f, 15.764883f, 5.300316f, 43.846039f, 13.534257f, -8.606539f, 31.960472f, 14.914590f, -7.331017f, 28.766878f, 7.312078f, -10.085270f, 28.536547f, 7.312078f, -10.085270f, 28.536547f, 7.308156f, -11.159800f, 32.688374f, 13.534257f, -8.606539f, 31.960472f, 14.914590f, -7.331017f, 28.766878f, 12.771220f, -4.209557f, 25.367369f, 7.327550f, -5.846064f, 24.956141f, 7.327550f, -5.846064f, 24.956141f, 7.312078f, -10.085270f, 28.536547f, 14.914590f, -7.331017f, 28.766878f, 13.407806f, -5.291871f, 37.201290f, 13.409106f, -4.459196f, 34.583401f, 10.988160f, -5.677050f, 34.978966f, 10.988160f, -5.677050f, 34.978966f, 10.997403f, -6.403482f, 37.277554f, 13.407806f, -5.291871f, 37.201290f, 10.714760f, 20.037420f, 5.779599f, 7.421850f, 19.989561f, 5.611809f, 7.411455f, 17.763485f, 10.409961f, 7.411455f, 17.763485f, 10.409961f, 9.991334f, 17.705053f, 10.245268f, 10.714760f, 20.037420f, 5.779599f, 7.422492f, 20.165249f, 17.050919f, 10.778464f, 19.989239f, 17.045088f, 9.991334f, 17.705053f, 10.245268f, 9.991334f, 17.705053f, 10.245268f, 7.411455f, 17.763485f, 10.409961f, 7.422492f, 20.165249f, 17.050919f, 10.778464f, 19.989239f, 17.045088f, 7.422492f, 20.165249f, 17.050919f, 7.402476f, 15.512046f, 24.353392f, 7.402476f, 15.512046f, 24.353392f, 10.661654f, 15.570215f, 24.428383f, 10.778464f, 19.989239f, 17.045088f, 10.661654f, 15.570215f, 24.428383f, 7.402476f, 15.512046f, 24.353392f, 7.451022f, 27.981888f, 42.640167f, 7.451022f, 27.981888f, 42.640167f, 11.292462f, 27.969028f, 42.629868f, 10.661654f, 15.570215f, 24.428383f, 10.714760f, 20.037420f, 5.779599f, 7.395069f, 12.652242f, 3.473820f, 7.421850f, 19.989561f, 5.611809f, 10.178280f, -8.191515f, 15.255916f, 10.520519f, -7.773556f, 14.155172f, 9.757647f, -7.976467f, 14.516864f, 10.178280f, -8.191515f, 15.255916f, 9.480849f, -8.525368f, 16.012430f, 10.064029f, -8.826984f, 17.070992f, 10.520519f, -7.773556f, 14.155172f, 10.838140f, -7.383258f, 13.126703f, 10.132405f, -7.669329f, 13.743653f, 13.228415f, -8.724550f, 17.677410f, 13.583903f, -4.734566f, 20.261789f, 15.474106f, -3.582813f, 21.358763f, 15.474106f, -3.582813f, 21.358763f, 19.449072f, -4.646804f, 21.355616f, 13.228415f, -8.724550f, 17.677410f, 19.415737f, -4.132664f, 15.678835f, 17.345793f, -2.520926f, 13.083079f, 15.063190f, -5.502612f, 12.146640f, 15.063190f, -5.502612f, 12.146640f, 15.046353f, -7.119816f, 13.588383f, 19.415737f, -4.132664f, 15.678835f, 10.064029f, -8.826984f, 17.070992f, 9.766815f, -5.954780f, 18.927929f, 13.583903f, -4.734566f, 20.261789f, 13.583903f, -4.734566f, 20.261789f, 13.228415f, -8.724550f, 17.677410f, 10.064029f, -8.826984f, 17.070992f, 15.046353f, -7.119816f, 13.588383f, 15.063190f, -5.502612f, 12.146640f, 10.940862f, -6.577568f, 12.173764f, 10.940862f, -6.577568f, 12.173764f, 10.838140f, -7.383258f, 13.126703f, 15.046353f, -7.119816f, 13.588383f, 9.480849f, -8.525368f, 16.012430f, 8.657505f, -6.656920f, 16.045710f, 9.766815f, -5.954780f, 18.927929f, 9.766815f, -5.954780f, 18.927929f, 10.064029f, -8.826984f, 17.070992f, 9.480849f, -8.525368f, 16.012430f, 10.838140f, -7.383258f, 13.126703f, 10.940862f, -6.577568f, 12.173764f, 9.170033f, -6.832619f, 13.787570f, 9.170033f, -6.832619f, 13.787570f, 10.132405f, -7.669329f, 13.743653f, 10.838140f, -7.383258f, 13.126703f, 10.178280f, -8.191515f, 15.255916f, 9.289386f, -6.574497f, 15.408227f, 8.657505f, -6.656920f, 16.045710f, 8.657505f, -6.656920f, 16.045710f, 9.480849f, -8.525368f, 16.012430f, 10.178280f, -8.191515f, 15.255916f, 10.520519f, -7.773556f, 14.155172f, 9.578681f, -6.660942f, 14.224989f, 8.757914f, -6.818400f, 14.691280f, 8.757914f, -6.818400f, 14.691280f, 9.757647f, -7.976467f, 14.516864f, 10.520519f, -7.773556f, 14.155172f, 10.132405f, -7.669329f, 13.743653f, 9.170033f, -6.832619f, 13.787570f, 9.578681f, -6.660942f, 14.224989f, 9.578681f, -6.660942f, 14.224989f, 10.520519f, -7.773556f, 14.155172f, 10.132405f, -7.669329f, 13.743653f, 9.757647f, -7.976467f, 14.516864f, 8.757914f, -6.818400f, 14.691280f, 9.289386f, -6.574497f, 15.408227f, 9.289386f, -6.574497f, 15.408227f, 10.178280f, -8.191515f, 15.255916f, 9.757647f, -7.976467f, 14.516864f, 19.449072f, -4.646804f, 21.355616f, 15.474106f, -3.582813f, 21.358763f, 16.836815f, 2.170514f, 25.298950f, 19.415737f, -4.132664f, 15.678835f, 17.948919f, -0.135040f, 19.269463f, 17.345793f, -2.520926f, 13.083079f, 8.657505f, -6.656920f, 16.045710f, 7.323162f, -7.048462f, 15.838820f, 7.324408f, -6.706909f, 18.302906f, 7.324408f, -6.706909f, 18.302906f, 9.766815f, -5.954780f, 18.927929f, 8.657505f, -6.656920f, 16.045710f, 10.940862f, -6.577568f, 12.173764f, 7.321089f, -7.616257f, 11.742564f, 7.321928f, -7.386584f, 13.399504f, 7.321928f, -7.386584f, 13.399504f, 9.170033f, -6.832619f, 13.787570f, 10.940862f, -6.577568f, 12.173764f, 9.289386f, -6.574497f, 15.408227f, 7.322854f, -7.132998f, 15.228947f, 7.323162f, -7.048462f, 15.838820f, 7.323162f, -7.048462f, 15.838820f, 8.657505f, -6.656920f, 16.045710f, 9.289386f, -6.574497f, 15.408227f, 9.578681f, -6.660942f, 14.224989f, 7.322289f, -7.287514f, 14.114231f, 7.322489f, -7.232655f, 14.509995f, 7.322489f, -7.232655f, 14.509995f, 8.757914f, -6.818400f, 14.691280f, 9.578681f, -6.660942f, 14.224989f, 9.170033f, -6.832619f, 13.787570f, 7.321928f, -7.386584f, 13.399504f, 7.322289f, -7.287514f, 14.114231f, 7.322289f, -7.287514f, 14.114231f, 9.578681f, -6.660942f, 14.224989f, 9.170033f, -6.832619f, 13.787570f, 8.757914f, -6.818400f, 14.691280f, 7.322489f, -7.232655f, 14.509995f, 7.322854f, -7.132998f, 15.228947f, 7.322854f, -7.132998f, 15.228947f, 9.289386f, -6.574497f, 15.408227f, 8.757914f, -6.818400f, 14.691280f, 10.940862f, -6.577568f, 12.173764f, 7.318575f, -8.181732f, 7.251115f, 7.321089f, -7.616257f, 11.742564f, 15.717390f, -6.157343f, 6.537314f, 7.318575f, -8.181732f, 7.251115f, 10.940862f, -6.577568f, 12.173764f, 10.940862f, -6.577568f, 12.173764f, 15.063190f, -5.502612f, 12.146640f, 15.717390f, -6.157343f, 6.537314f, 9.766815f, -5.954780f, 18.927929f, 12.771220f, -4.209557f, 25.367369f, 13.583903f, -4.734566f, 20.261789f, 7.324408f, -6.706909f, 18.302906f, 7.327550f, -5.846064f, 24.956141f, 12.771220f, -4.209557f, 25.367369f, 12.771220f, -4.209557f, 25.367369f, 9.766815f, -5.954780f, 18.927929f, 7.324408f, -6.706909f, 18.302906f, 17.345793f, -2.520926f, 13.083079f, 19.611834f, -1.503649f, 6.819679f, 15.717390f, -6.157343f, 6.537314f, 15.717390f, -6.157343f, 6.537314f, 15.063190f, -5.502612f, 12.146640f, 17.345793f, -2.520926f, 13.083079f, 17.948919f, -0.135040f, 19.269463f, 19.611834f, -1.503649f, 6.819679f, 17.345793f, -2.520926f, 13.083079f, 12.771220f, -4.209557f, 25.367369f, 16.836815f, 2.170514f, 25.298950f, 15.474106f, -3.582813f, 21.358763f, 15.474106f, -3.582813f, 21.358763f, 13.583903f, -4.734566f, 20.261789f, 12.771220f, -4.209557f, 25.367369f, 7.347628f, -0.345043f, 0.000000f, 11.856124f, -1.032645f, 0.000000f, 14.528370f, 5.922650f, 0.000000f, 14.528370f, 5.922650f, 0.000000f, 9.768484f, 8.652227f, 0.000000f, 7.347628f, -0.345043f, 0.000000f, 9.419173f, 27.066231f, 3.887028f, 7.448072f, 27.173620f, 4.010532f, 7.438875f, 24.654293f, 0.000000f, 7.438875f, 24.654293f, 0.000000f, 8.317277f, 24.633436f, 0.000000f, 9.419173f, 27.066231f, 3.887028f, 15.764883f, 5.300316f, 43.846039f, 15.398161f, 6.227328f, 47.229149f, 13.922662f, -0.086341f, 48.652729f, 13.922662f, -0.086341f, 48.652729f, 14.186281f, -0.591499f, 45.610146f, 15.764883f, 5.300316f, 43.846039f, 18.722847f, 5.664664f, 45.879768f, 16.430836f, 4.127841f, 39.671680f, 17.347752f, -1.501161f, 40.807026f, 17.347752f, -1.501161f, 40.807026f, 19.166872f, -0.439006f, 45.890106f, 18.722847f, 5.664664f, 45.879768f, 15.764883f, 5.300316f, 43.846039f, 16.430836f, 4.127841f, 39.671680f, 18.722847f, 5.664664f, 45.879768f, 18.722847f, 5.664664f, 45.879768f, 15.398161f, 6.227328f, 47.229149f, 15.764883f, 5.300316f, 43.846039f, 19.166872f, -0.439006f, 45.890106f, 17.347752f, -1.501161f, 40.807026f, 14.186281f, -0.591499f, 45.610146f, 14.186281f, -0.591499f, 45.610146f, 13.922662f, -0.086341f, 48.652729f, 19.166872f, -0.439006f, 45.890106f, 12.771220f, -4.209557f, 25.367369f, 14.914590f, -7.331017f, 28.766878f, 18.842646f, -1.809262f, 29.013023f, 18.842646f, -1.809262f, 29.013023f, 16.836815f, 2.170514f, 25.298950f, 12.771220f, -4.209557f, 25.367369f, 18.528133f, -1.663332f, 31.894547f, 17.347752f, -1.501161f, 40.807026f, 16.430836f, 4.127841f, 39.671680f, 16.430836f, 4.127841f, 39.671680f, 17.085196f, 7.535858f, 29.997444f, 18.528133f, -1.663332f, 31.894547f, 16.430836f, 4.127841f, 39.671680f, 15.764883f, 5.300316f, 43.846039f, 17.085196f, 7.535858f, 29.997444f, 14.571514f, -5.343407f, 40.930904f, 14.186281f, -0.591499f, 45.610146f, 17.347752f, -1.501161f, 40.807026f, 17.085196f, 7.535858f, 29.997444f, 15.936548f, 6.715140f, 25.493473f, 16.836815f, 2.170514f, 25.298950f, 16.836815f, 2.170514f, 25.298950f, 18.842646f, -1.809262f, 29.013023f, 17.085196f, 7.535858f, 29.997444f, 18.842646f, -1.809262f, 29.013023f, 18.528133f, -1.663332f, 31.894547f, 17.085196f, 7.535858f, 29.997444f, 14.186281f, -0.591499f, 45.610146f, 14.571514f, -5.343407f, 40.930904f, 7.320009f, -7.912378f, 40.945305f, 7.320009f, -7.912378f, 40.945305f, 7.342481f, -1.755349f, 46.878002f, 14.186281f, -0.591499f, 45.610146f, 7.314791f, -9.341828f, 33.737534f, 14.683560f, -6.901972f, 32.471439f, 13.534257f, -8.606539f, 31.960472f, 13.534257f, -8.606539f, 31.960472f, 7.308156f, -11.159800f, 32.688374f, 7.314791f, -9.341828f, 33.737534f, 17.347752f, -1.501161f, 40.807026f, 18.528133f, -1.663332f, 31.894547f, 14.683560f, -6.901972f, 32.471439f, 14.683560f, -6.901972f, 32.471439f, 14.571514f, -5.343407f, 40.930904f, 17.347752f, -1.501161f, 40.807026f, 15.398161f, 6.227328f, 47.229149f, 16.094458f, 5.721723f, 54.928432f, 15.006015f, 1.519569f, 55.115219f, 15.006015f, 1.519569f, 55.115219f, 13.922662f, -0.086341f, 48.652729f, 15.398161f, 6.227328f, 47.229149f, 19.166872f, -0.439006f, 45.890106f, 19.285433f, 1.019830f, 51.916763f, 19.018568f, 5.331750f, 51.836819f, 19.018568f, 5.331750f, 51.836819f, 18.722847f, 5.664664f, 45.879768f, 19.166872f, -0.439006f, 45.890106f, 13.922662f, -0.086341f, 48.652729f, 15.006015f, 1.519569f, 55.115219f, 19.285433f, 1.019830f, 51.916763f, 19.285433f, 1.019830f, 51.916763f, 19.166872f, -0.439006f, 45.890106f, 13.922662f, -0.086341f, 48.652729f, 18.722847f, 5.664664f, 45.879768f, 19.018568f, 5.331750f, 51.836819f, 16.094458f, 5.721723f, 54.928432f, 16.094458f, 5.721723f, 54.928432f, 15.398161f, 6.227328f, 47.229149f, 18.722847f, 5.664664f, 45.879768f, 15.006015f, 1.519569f, 55.115219f, 16.094458f, 5.721723f, 54.928432f, 17.434431f, 4.480306f, 58.874214f, 17.434431f, 4.480306f, 58.874214f, 17.096628f, 3.139414f, 58.951324f, 15.006015f, 1.519569f, 55.115219f, 19.018568f, 5.331750f, 51.836819f, 19.285433f, 1.019830f, 51.916763f, 18.274830f, 3.296629f, 58.839859f, 18.274830f, 3.296629f, 58.839859f, 18.170647f, 4.230951f, 58.858616f, 19.018568f, 5.331750f, 51.836819f, 19.285433f, 1.019830f, 51.916763f, 15.006015f, 1.519569f, 55.115219f, 17.096628f, 3.139414f, 58.951324f, 17.096628f, 3.139414f, 58.951324f, 18.274830f, 3.296629f, 58.839859f, 19.285433f, 1.019830f, 51.916763f, 16.094458f, 5.721723f, 54.928432f, 19.018568f, 5.331750f, 51.836819f, 18.170647f, 4.230951f, 58.858616f, 18.170647f, 4.230951f, 58.858616f, 17.434431f, 4.480306f, 58.874214f, 16.094458f, 5.721723f, 54.928432f, 14.571514f, -5.343407f, 40.930904f, 14.683560f, -6.901972f, 32.471439f, 14.428933f, -6.684027f, 34.222805f, 14.428933f, -6.684027f, 34.222805f, 14.373026f, -5.719159f, 39.128136f, 14.571514f, -5.343407f, 40.930904f, 7.314791f, -9.341828f, 33.737534f, 7.320009f, -7.912378f, 40.945305f, 10.752159f, -7.024318f, 38.999115f, 10.752159f, -7.024318f, 38.999115f, 10.607469f, -7.946212f, 34.709949f, 7.314791f, -9.341828f, 33.737534f, 14.571514f, -5.343407f, 40.930904f, 14.373026f, -5.719159f, 39.128136f, 10.752159f, -7.024318f, 38.999115f, 10.752159f, -7.024318f, 38.999115f, 7.320009f, -7.912378f, 40.945305f, 14.571514f, -5.343407f, 40.930904f, 7.314791f, -9.341828f, 33.737534f, 10.607469f, -7.946212f, 34.709949f, 14.428933f, -6.684027f, 34.222805f, 14.428933f, -6.684027f, 34.222805f, 14.683560f, -6.901972f, 32.471439f, 7.314791f, -9.341828f, 33.737534f, 14.428933f, -6.684027f, 34.222805f, 13.409106f, -4.459196f, 34.583401f, 13.407806f, -5.291871f, 37.201290f, 13.407806f, -5.291871f, 37.201290f, 14.373026f, -5.719159f, 39.128136f, 14.428933f, -6.684027f, 34.222805f, 14.373026f, -5.719159f, 39.128136f, 13.407806f, -5.291871f, 37.201290f, 10.997403f, -6.403482f, 37.277554f, 10.997403f, -6.403482f, 37.277554f, 10.752159f, -7.024318f, 38.999115f, 14.373026f, -5.719159f, 39.128136f, 10.752159f, -7.024318f, 38.999115f, 10.997403f, -6.403482f, 37.277554f, 10.988160f, -5.677050f, 34.978966f, 10.988160f, -5.677050f, 34.978966f, 10.607469f, -7.946212f, 34.709949f, 10.752159f, -7.024318f, 38.999115f, 10.607469f, -7.946212f, 34.709949f, 10.988160f, -5.677050f, 34.978966f, 13.409106f, -4.459196f, 34.583401f, 13.409106f, -4.459196f, 34.583401f, 14.428933f, -6.684027f, 34.222805f, 10.607469f, -7.946212f, 34.709949f, 9.175188f, 29.073957f, 14.934714f, 7.455090f, 29.096563f, 14.903179f, 7.438042f, 25.047373f, 8.677461f, 7.438042f, 25.047373f, 8.677461f, 8.720451f, 24.982521f, 8.632037f, 9.175188f, 29.073957f, 14.934714f, 8.544544f, 28.501253f, 21.455393f, 7.449881f, 28.499632f, 21.485111f, 7.455090f, 29.096563f, 14.903179f, 7.455090f, 29.096563f, 14.903179f, 9.175188f, 29.073957f, 14.934714f, 8.544544f, 28.501253f, 21.455393f, 8.916059f, 36.023087f, 32.743652f, 7.480425f, 36.037731f, 32.738682f, 7.449881f, 28.499632f, 21.485111f, 7.449881f, 28.499632f, 21.485111f, 8.544544f, 28.501253f, 21.455393f, 8.916059f, 36.023087f, 32.743652f, 7.451022f, 27.981888f, 42.640167f, 7.480425f, 36.037731f, 32.738682f, 8.916059f, 36.023087f, 32.743652f, 8.916059f, 36.023087f, 32.743652f, 11.292462f, 27.969028f, 42.629868f, 7.451022f, 27.981888f, 42.640167f, 8.720451f, 24.982521f, 8.632037f, 7.438042f, 25.047373f, 8.677461f, 7.448072f, 27.173620f, 4.010532f, 7.448072f, 27.173620f, 4.010532f, 9.419173f, 27.066231f, 3.887028f, 8.720451f, 24.982521f, 8.632037f, 7.438875f, 24.654293f, 0.000000f, 7.347628f, -0.345043f, 0.000000f, 9.768484f, 8.652227f, 0.000000f, 9.768484f, 8.652227f, 0.000000f, 8.317277f, 24.633436f, 0.000000f, 7.438875f, 24.654293f, 0.000000f, 14.914590f, -7.331017f, 28.766878f, 13.534257f, -8.606539f, 31.960472f, 14.683560f, -6.901972f, 32.471439f, 14.683560f, -6.901972f, 32.471439f, 18.842646f, -1.809262f, 29.013023f, 14.914590f, -7.331017f, 28.766878f, 18.528133f, -1.663332f, 31.894547f, 18.842646f, -1.809262f, 29.013023f, 14.683560f, -6.901972f, 32.471439f, 18.170647f, 4.230951f, 58.858616f, 18.274830f, 3.296629f, 58.839859f, 17.096628f, 3.139414f, 58.951324f, 17.096628f, 3.139414f, 58.951324f, 17.434431f, 4.480306f, 58.874214f, 18.170647f, 4.230951f, 58.858616f };

// Constructor
Pikachu::Pikachu(Display * display) : Model()
{
    glUseCanvas(display);
}

/**
* @brief  Model setup.
* @retval None
*/
void Pikachu::Setup()
{
    SetFixedScaleMode(0.1f);
    
    glPointSize(4);

    glMatrixMode(GL_PROJECTION);
    glLoadIdentity();

    gluPerspective(30.0, 1.7647f, 0.1f, 9999.f);

    glMatrixMode(GL_MODELVIEW);
}

/**
* @brief  Renders a model for given view angle and scale.
* @param  None
* @retval None
*/
void Pikachu::Render()
{
    float scale = GetScaleValue();

    glLoadIdentity();
    gluLookAt(0, 0, -15, 0, 3, 0, 0, 1, 0);

    glScalef(scale, scale, scale);
    glRotatef(GetAngleValue(), 0.f, 1.f, 0.f);
    glRotatef(-90.f, 1.f, 0.f, 0.f);

    DrawModel();
}

/*
void Pikachu::DrawModel(void)
{
    int i;

    for(i = 0; i < 412; i++) {
        glBegin(GL_POLYGON);
        glVertex3f(model[i], model[i+1], model[i+2]);
        glVertex3f(model[i+3], model[i+4], model[i+5]);
        glVertex3f(model[i+6], model[i+7], model[i+8]);
        glEnd();
    }
}
*/

void Pikachu::DrawModel(void)
{
    int i;

    for(i = 0; i < 412; i++) {

        glBegin(GL_POLYGON);
        glVertexFromMemory(i*3);
        glVertexFromMemory(i*3 + 1);
        glVertexFromMemory(i*3 + 2);
        glEnd();
    }
}

void Pikachu::glVertexFromMemory(int i)
{
    float x = model[i*3 + 0];
    float y = model[i*3 + 1];
    float z = model[i*3 + 2];

    glVertex3f(x, y, z);
}