![](/media/cache/profiles/4b0986230d9d7aded7f0c24033d221d4.jpg.50x50_q85.jpg)
Programme de contrôle de l'octopode 4DOF, Theraphosa-Salconi.
CtrlBridge
- fonction quelquonque pour communiquer avec les module
- fonction quelquonque pour faire des recherche dans les module dispo
- autre fonction pour jouer avec MemRegistre
Version 1.2.0
- Ajout d'un mode de simulation pour tester le code avec seulement un contrôleur stm32
source/Motrice/homemadeSequence.cpp
- Committer:
- salco
- Date:
- 2015-05-11
- Revision:
- 26:15cb45d56c28
- Parent:
- 25:f3bd72f1dd8d
- Child:
- 27:ea60d12dccdf
File content as of revision 26:15cb45d56c28:
/* * homemadeSequence.cpp * * Created on: Mar 03, 2015 * Author: salco */ #include "homemadeSequence.h" unsigned char table_seqUp[9][2][3] = { { {80 , 210, 160}, {220, 90 , 114} }, { {80 , 220, 170}, {220, 80 , 130} }, { {90 , 220, 160}, {200, 80 , 140} }, { {106, 220, 150}, {194, 80 , 150} }, { {128, 220, 127}, {172, 80 , 173} }, { {144, 205, 130}, {156, 95 , 170} }, { {144, 210, 123}, {156, 89 , 177} }, { {172, 185, 124}, {128, 115, 176} }, { {194, 166, 118}, {106, 134, 182} } }; unsigned char table_seqDown[9][2][3] = { { {172, 185, 124}, {128, 115, 176} }, { {172, 185, 124}, {128, 115, 176} }, { {144, 210, 123}, {156, 89 , 177} }, { {144, 205, 130}, {156, 95 , 170} }, { {128, 220, 127}, {172, 80 , 173} }, { {106, 220, 150}, {194, 80 , 150} }, { {90 , 220, 160}, {200, 80 , 140} }, { {80 , 220, 170}, {220, 80 , 130} }, { {80 , 100, 150}, {220, 200, 150} } };//fin de la seq il met ses patte sur sa tete** unsigned char table_seqCrabe[33][8][3] = {{ /* 0*/{255,255,255}, /* 4*/{125, 184, 156}, /* 8*/{132, 215, 147}, /*12*/{255,255,255}, /*16*/{203,101,128}, /*20*/{255,255,255}, /*24*/{176, 87, 163}, /*28*/{191, 103,133} }, { /* 0*/{255,255,255}, /* 4*/{111, 185, 156}, /* 8*/{255, 255, 255}, /*12*/{255, 255,255}, /*16*/{209, 99,140}, /*20*/{255, 255, 255}, /*24*/{255, 255, 255}, /*28*/{196, 105,142} }, { /* 0*/{255,255,255}, /* 4*/{103, 192, 155}, /* 8*/{255, 255, 255}, /*12*/{255, 255,255}, /*16*/{203,108,137}, /*20*/{255, 255, 255}, /*24*/{170, 88, 159}, /*28*/{191, 112,141} }, { /* 0*/{255,255,255}, /* 4*/{ 98, 199, 158}, /* 8*/{255, 255, 255}, /*12*/{255, 255,255}, /*16*/{196,114,137}, /*20*/{255, 255, 255}, /*24*/{255, 255, 255}, /*28*/{184, 118,142} }, { /* 0*/{255,255,255}, /* 4*/{255, 255, 255}, /* 8*/{255, 255, 255}, /*12*/{255, 255,255}, /*16*/{182,115,144}, /*20*/{255, 255, 255}, /*24*/{169, 83, 164}, /*28*/{172, 118,142} }, { /* 0*/{255,255,255}, /* 4*/{102, 201, 170}, /* 8*/{255, 255, 255}, /*12*/{255, 255,255}, /*16*/{152,137,139}, /*20*/{255, 255, 255}, /*24*/{169, 78, 155}, /*28*/{146, 137,142} }, { /* 0*/{255,255,255}, /* 4*/{102, 207, 179}, /* 8*/{255, 255, 255}, /*12*/{255, 255,255}, /*16*/{255,255,255}, /*20*/{255, 255, 255}, /*24*/{181, 76, 137}, /*28*/{255, 255,255} }, { /* 0*/{255,255,255}, /* 4*/{ 94, 213, 183}, /* 8*/{255, 255, 255}, /*12*/{255, 255,255}, /*16*/{255,255,255}, /*20*/{255, 255, 255}, /*24*/{181, 77, 131}, /*28*/{255, 255,255} }, { /* 0*/{255,255,255}, /* 4*/{106, 216, 175}, /* 8*/{255, 255, 255}, /*12*/{255, 255,255}, /*16*/{255,255,255}, /*20*/{255, 255, 255}, /*24*/{208, 75, 116}, /*28*/{255, 255,255} }, { /* 0*/{255,255,255}, /* 4*/{129, 217, 165}, /* 8*/{255, 255, 255}, /*12*/{255, 255,255}, /*16*/{255,255,255}, /*20*/{255, 255, 255}, /*24*/{225, 75, 109}, /*28*/{255, 255,255} }, { /* 0*/{255,255,255}, /* 4*/{129, 221, 156}, /* 8*/{255, 255, 255}, /*12*/{255, 255,255}, /*16*/{255,255,255}, /*20*/{161, 117, 148}, /*24*/{211, 85, 120}, /*28*/{255, 255,255} }, { /* 0*/{153,159,157}, /* 4*/{141, 210, 152}, /* 8*/{255, 255, 255}, /*12*/{149, 158,159}, /*16*/{255,255,255}, /*20*/{172, 92, 165}, /*24*/{211, 90, 127}, /*28*/{255, 255,255} }, { /* 0*/{121,180,156}, /* 4*/{139, 217, 134}, /* 8*/{255, 255, 255}, /*12*/{121, 180,156}, /*16*/{255,255,255}, /*20*/{255, 255, 255}, /*24*/{215, 93, 140}, /*28*/{255, 255,255} }, { /* 0*/{113,176,156}, /* 4*/{255, 255, 255}, /* 8*/{255, 255, 255}, /*12*/{107, 182,156}, /*16*/{255,255,255}, /*20*/{168, 94, 157}, /*24*/{209, 101, 142}, /*28*/{255, 255,255} }, { /* 0*/{105,183,155}, /* 4*/{255, 255, 255}, /* 8*/{255, 255, 255}, /*12*/{100, 187,150}, /*16*/{255,255,255}, /*20*/{255, 255, 255}, /*24*/{202, 106, 142}, /*28*/{255, 255,255} }, { /* 0*/{100,191,158}, /* 4*/{255, 255, 255}, /* 8*/{255, 255, 255}, /*12*/{ 96, 193,155}, /*16*/{255,255,255}, /*20*/{167, 86, 166}, /*24*/{187, 109, 144}, /*28*/{255, 255,255} }, { /* 0*/{103,193,170}, /* 4*/{255, 255, 255}, /* 8*/{255, 255, 255}, /*12*/{ 99, 197,170}, /*16*/{255,255,255}, /*20*/{166, 87, 150}, /*24*/{154, 133, 140}, /*28*/{255, 255,255} }, { /* 0*/{103,200,177}, /* 4*/{255, 255, 255}, /* 8*/{255, 255, 255}, /*12*/{ 99, 201,177}, /*16*/{255,255,255}, /*20*/{177, 80, 145}, /*24*/{255, 255, 255}, /*28*/{255, 255,255} }, { /* 0*/{ 96,205,182}, /* 4*/{255, 255, 255}, /* 8*/{255, 255, 255}, /*12*/{ 91, 208,176}, /*16*/{255,255,255}, /*20*/{177, 87, 130}, /*24*/{255, 255, 255}, /*28*/{255, 255,255} }, { /* 0*/{108,216,171}, /* 4*/{255, 255, 255}, /* 8*/{255, 255, 255}, /*12*/{102, 210,173}, /*16*/{255,255,255}, /*20*/{192, 92, 123}, /*24*/{255, 255, 255}, /*28*/{255, 255,255} }, { /* 0*/{108,216,171}, /* 4*/{255, 255, 255}, /* 8*/{255, 255, 255}, /*12*/{102, 210,173}, /*16*/{255,255,255}, /*20*/{218, 79, 120}, /*24*/{255, 255, 255}, /*28*/{255, 255,255} }, { /* 0*/{129,219,151}, /* 4*/{255, 255, 255}, /* 8*/{255, 255, 255}, /*12*/{125, 213,157}, /*16*/{162,115,150}, /*20*/{206, 93, 118}, /*24*/{255, 255, 255}, /*28*/{154, 116,150} }, { /* 0*/{140,209,142}, /* 4*/{255, 255, 255}, /* 8*/{145, 161, 157}, /*12*/{135, 215,145}, /*16*/{170, 93,167}, /*20*/{206, 97, 127}, /*24*/{255, 255, 255}, /*28*/{163, 93,168} }, { /* 0*/{255,255,255}, /* 4*/{255, 255, 255}, /* 8*/{115, 182, 158}, /*12*/{255, 255,255}, /*16*/{255,255,255}, /*20*/{212, 97, 142}, /*24*/{255, 255, 255}, /*28*/{255, 255,255} }, { /* 0*/{255,255,255}, /* 4*/{255, 255, 255}, /* 8*/{101, 183, 156}, /*12*/{255, 255,255}, /*16*/{167, 93,159}, /*20*/{205, 107, 142}, /*24*/{255, 255, 255}, /*28*/{160, 96,160} }, { /* 0*/{255,255,255}, /* 4*/{255, 255, 255}, /* 8*/{ 94, 190, 154}, /*12*/{255, 255,255}, /*16*/{255,255,255}, /*20*/{197, 113, 144}, /*24*/{255, 255, 255}, /*28*/{255, 255,255} }, { /* 0*/{255,255,255}, /* 4*/{255, 255, 255}, /* 8*/{ 89, 197, 158}, /*12*/{255, 255,255}, /*16*/{167, 86,167}, /*20*/{182, 115, 142}, /*24*/{255, 255, 255}, /*28*/{161, 88,162} }, { /* 0*/{255,255,255}, /* 4*/{255, 255, 255}, /* 8*/{ 92, 200, 171}, /*12*/{255, 255,255}, /*16*/{166, 86,156}, /*20*/{153, 136, 142}, /*24*/{255, 255, 255}, /*28*/{166, 86,156} }, { /* 0*/{255,255,255}, /* 4*/{255, 255, 255}, /* 8*/{ 92, 205, 175}, /*12*/{255, 255,255}, /*16*/{177, 82,133}, /*20*/{255, 255, 255}, /*24*/{255, 255, 255}, /*28*/{169, 82,143} }, { /* 0*/{255,255,255}, /* 4*/{255, 255, 255}, /* 8*/{ 82, 215, 177}, /*12*/{255, 255,255}, /*16*/{177, 85,126}, /*20*/{255, 255, 255}, /*24*/{255, 255, 255}, /*28*/{169, 84,135} }, { /* 0*/{255,255,255}, /* 4*/{255, 255, 255}, /* 8*/{ 96, 214, 176}, /*12*/{255, 255,255}, /*16*/{191,101,113}, /*20*/{255, 255, 255}, /*24*/{255, 255, 255}, /*28*/{190, 86,124} }, { /* 0*/{255,255,255}, /* 4*/{255, 255, 255}, /* 8*/{120, 213, 158}, /*12*/{255, 255,255}, /*16*/{213, 83,124}, /*20*/{255, 255, 255}, /*24*/{255, 255, 255}, /*28*/{202, 88,121} }, { /* 0*/{255,255,255}, /* 4*/{255, 255, 255}, /* 8*/{120, 217, 154}, /*12*/{255, 255,255}, /*16*/{203, 95,110}, /*20*/{255, 255, 255}, /*24*/{165, 109, 152}, /*28*/{191, 101,120} } }; unsigned char table_seqTurn_PAUSE_TIME[32][2] = {{ 30, 30},{ 20, 20},{ 25, 25},{ 20, 30},{ 25, 20},{ 21, 30},{ 30, 30}, { 30, 30},{ 20, 20},{ 20, 20},{ 20, 30},{ 20, 20},{ 20, 20},{ 30, 30},{ 31, 30}, { 20, 20},{ 30, 30},{ 20, 30},{ 30, 30},{ 20, 20},{ 20, 30},{ 30, 30},{ 30, 30} }; unsigned char table_seqTurn[31][8][3] = {{ /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{ 92,211,171}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{213, 85,118}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{ 89,193,186}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{212, 99,119}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{ 90,196,170}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{205,107,129}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{101,183,165}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{197,113,135}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{ 88,207,190}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{211,114,129}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{118,219,139}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{207,110,100}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{117,217,137}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{189, 76,160}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{113,217,137}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{187, 78,161}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{103,206,176}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{200, 86,124} }, { /* 0*/{100,188,184}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{200, 95,124} }, { /* 0*/{105,182,166}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{208, 99,127} }, { /* 0*/{113,176,165}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{204,103,133} }, { /* 0*/{ 93,187,203}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{203,103,115} }, { /* 0*/{123,220,139}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{178, 78,169} }, { /* 0*/{123,217,215}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{181, 81,167} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{ 99,211,176}, /*16*/{210, 86,121}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{ 96,193,185}, /*16*/{209, 99,115}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{ 94,196,168}, /*16*/{203,103,125}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{107,182,165}, /*16*/{196,114,128}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{ 88,192,168}, /*16*/{206,115,125}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{ 92,198,168}, /*16*/{206,115,125}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{118,206,145}, /*16*/{179, 82,167}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{111,213,142}, /*16*/{181, 83,166}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{204, 88,116}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{190, 76,160}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{192, 78,156}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{194, 78,161}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{ 86,196,161}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{ 88,202,195}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{125,225,133}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{120,222,135}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} } }; unsigned char table_seqRepositionne_PAUSE_TIME[6][2] = {{ 11, 10},{ 16, 15},{ 15, 15},{ 21, 20},{ 21, 20},{ 51, 50}}; unsigned char table_seqRepositionne[6][8][3] = { { /* 0*/{103,206,176}, /* 4*/{102,213,176}, /* 8*/{ 92,211,171}, /*12*/{ 99,211,176}, /*16*/{210, 86,121}, /*20*/{213, 85,118}, /*24*/{217, 83,118}, /*28*/{200, 86,124} }, { /* 0*/{100,188,184}, /* 4*/{ 98,193,185}, /* 8*/{ 89,193,186}, /*12*/{ 96,193,185}, /*16*/{209, 99,115}, /*20*/{212, 99,119}, /*24*/{215, 95,119}, /*28*/{205, 95,124} }, { /* 0*/{ 93,182,166}, /* 4*/{ 86,196,161}, /* 8*/{ 75,196,170}, /*12*/{ 88,192,168}, /*16*/{206,115,125}, /*20*/{211,114,129}, /*24*/{213,110,129}, /*28*/{206,108,127} }, { /* 0*/{ 93,187,203}, /* 4*/{ 88,202,195}, /* 8*/{ 88,207,190}, /*12*/{ 92,198,199}, /*16*/{204,110,107}, /*20*/{207,110,100}, /*24*/{204, 88,116}, /*28*/{203,103,115} }, { /* 0*/{123,220,139}, /* 4*/{125,225,133}, /* 8*/{118,219,139}, /*12*/{118,206,145}, /*16*/{179, 82,167}, /*20*/{189, 76,160}, /*24*/{190, 76,160}, /*28*/{178, 78,169} }, { /* 0*/{123,217,135}, /* 4*/{120,222,135}, /* 8*/{113,217,137}, /*12*/{111,213,142}, /*16*/{181, 83,166}, /*20*/{187, 78,161}, /*24*/{194, 78,161}, /*28*/{181, 81,167} } }; unsigned char table_seqFoward_PAUSE_TIME[42][2] = { { 16, 15},{ 21, 30},{ 50,100},{ 21, 20},{ 16, 15},{ 21, 30},{ 50,100},{ 21, 20},{ 21, 20},{ 0, 45},{ 61, 50}, { 21, 20},{ 51, 50},{ 21, 20},{ 21, 20},{ 31, 30},{ 51, 50},{ 16, 15},{ 21, 30},{ 50,100},{ 21, 20}, { 16, 15},{ 21, 30},{ 50,100},{ 21, 20},{ 51, 50},{ 21, 20},{ 41, 45}, { 11, 10},{ 16, 15},{ 15, 15},{ 21, 20},{ 21, 20},{ 51, 50}, { 15, 15},{ 21, 20},{ 21, 20},{ 51, 50}, { 15, 15},{ 21, 20},{ 21, 20},{ 51, 50} }; unsigned char table_seqFoward[42][8][3] = { { /* 0*/{103,206,176}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{213, 85,118}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{100,188,184}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{212, 99,119}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{ 93,182,166}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{211,114,129}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{123,220,139}, /* 4*/{255,255,255}, /* 8*/{ 92,211,171}, /*12*/{255,255,255},//attention ici 2 temps diferant /*16*/{255,255,255}, /*20*/{189, 76,160}, /*24*/{255,255,255}, /*28*/{200, 86,124} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{ 89,193,186}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{205, 95,124} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{ 75,196,170}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{206,108,127} }, { /* 0*/{123,217,135}, /* 4*/{255,255,255}, /* 8*/{145,161,172}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{187, 78,161}, /*24*/{255,255,255}, /*28*/{155,137,130} }, { /* 0*/{127,186,156}, /* 4*/{255,255,139}, /* 8*/{115,217,142}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{179, 81,167} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{ 88,207,190}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{113,217,137}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{ 93,182,166}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{ 93,187,203}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{123,220,139}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{123,217,135}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{102,213,176}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{217, 83,118}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{ 98,193,185}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{215, 95,119}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{ 86,196,161}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{213,110,129}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{125,225,133}, /* 8*/{255,255,255}, /*12*/{ 99,211,176},//attention temps diferant ici /*16*/{210, 86,121}, /*20*/{255,255,255}, /*24*/{154,133,133}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{ 96,193,185}, /*16*/{209, 99,115}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{ 88,192,168}, /*16*/{206,115,125}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{145,158,173}, /*16*/{179, 82,167}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{120,222,135}, /* 8*/{255,255,255}, /*12*/{111,213,142},//attention plusieur temps /*16*/{181, 83,166}, /*20*/{255,255,255}, /*24*/{182, 78,161}, /*28*/{255,255,255} }, { /* 0*/{127,186,156}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{116,219,134}, /*16*/{171,111,143}, /*20*/{255,255,255}, /*24*/{180, 86,156}, /*28*/{255,255,255} }, { /* 0*/{103,206,176}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{100,188,184}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{ 93,182,166}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{ 93,187,203}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{123,220,139}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{123,217,135}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{206,115,125}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{204,110,107}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{179, 82,167}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{181, 83,166}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{ 86,196,161}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{ 88,202,195}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{125,225,133}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{120,222,135}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} } }; unsigned char table_seqBackward_PAUSE_TIME[33][2] = { { 16, 15},{ 21, 30},{ 50,100},{ 21, 20},{ 16, 15},{ 21, 30},{ 50,100},{ 21, 20},{ 31, 30},{ 61, 50}, { 21, 20},{ 21, 20},{ 31, 30},{ 51, 50},{ 21, 20},{ 21, 20},{ 31, 30},{ 51, 50},{ 16, 15},{ 21, 30}, { 50,100},{ 21, 20},{ 16, 15},{ 21, 30},{ 50,100},{ 21, 20},{ 51, 45},{ 21, 20},{ 41, 45},{ 21, 20}, { 21, 20},{ 31, 30},{ 31, 50} }; unsigned char table_seqBackward[33][8][3] = { { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{ 92,211,171}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{200, 86,124} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{89,193,186}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{205,95,124} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{ 75,196,170}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{206,108,127} }, { /* 0*/{103,206,176}, /* 4*/{255,255,255}, /* 8*/{113,217,137}, /*12*/{255,255,255},//attention ici 2 temps diferant /*16*/{255,255,255}, /*20*/{213, 85,118}, /*24*/{255,255,255}, /*28*/{181, 81,167} }, { /* 0*/{100,188,184}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{212, 99,119}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{ 93,182,166}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{211,114,129}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{136,186,156}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{176,108,146}, /*24*/{255,255,255}, /*28*/{179, 81,167} }, { /* 0*/{123,217,135}, /* 4*/{255,255,139}, /* 8*/{115,217,142}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{187, 78,161}, /*24*/{255,255,255}, /*28*/{155,137,130} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{206,108,127} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{203,103,115} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{178, 78,169} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{181, 81,167} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{211,114,129}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{207,110,100}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{189, 76,160}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{187, 78,161}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{ 99,211,176}, /*16*/{210, 86,121}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{ 96,193,185}, /*16*/{209, 99,115}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{ 88,192,168}, /*16*/{206,115,125}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{102,213,176}, /* 8*/{255,255,255}, /*12*/{116,219,134},//attention plusieur temps /*16*/{171,111,143}, /*20*/{255,255,255}, /*24*/{217, 83,118}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{ 98,193,185}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{215, 95,119}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{86,196,161}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{213,110,129}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{125,225,133}, /* 8*/{255,255,255}, /*12*/{255,255,255}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{180, 86,156}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{120,222,135}, /* 8*/{255,255,255}, /*12*/{111,213,142},//attention plusieur temps /*16*/{181, 83,166}, /*20*/{255,255,255}, /*24*/{182, 78,161}, /*28*/{255,255,255} }, { /* 0*/{123,217,135}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{132,178,166}, /*16*/{179, 82,167}, /*20*/{255,255,255}, /*24*/{180, 86,156}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{ 88,192,168}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{92,198,199}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{118,206,145}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} }, { /* 0*/{255,255,255}, /* 4*/{255,255,255}, /* 8*/{255,255,255}, /*12*/{111,213,142}, /*16*/{255,255,255}, /*20*/{255,255,255}, /*24*/{255,255,255}, /*28*/{255,255,255} } }; /*unsigned char table_seqUpDown[9][8][4] = { { {140, 80, 210, 160}, {165, 80, 210, 160}, {160, 80, 210, 160}, {150, 80, 210, 160}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4} }, { {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4} }, { {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4} }, { {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4} }, { {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4} }, { {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4} }, { {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4} }, { {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4} }, { {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4}, {1, 2, 3, 4} } };*/ homemadeSequence::homemadeSequence() { m_SequenceChosen=0; m_idFrame=0; m_idLegUse =0; } homemadeSequence::~homemadeSequence() { } unsigned char* homemadeSequence::get_frame(/*char idSequence,char idOperation,*/char idLeg) { debug(DEBUG_HOMEMADE_GETFRAME,"\n\r In Get Frame"); m_posLeg[0] = 0; m_posLeg[1] = 0; m_posLeg[2] = 0; m_posLeg[3] = 0; debug(DEBUG_HOMEMADE_GETFRAME,"\n\r idLeg: %i",idLeg); debug(DEBUG_HOMEMADE_GETFRAME,"\n\r m_SequenceChosen: %i",m_SequenceChosen); debug(DEBUG_HOMEMADE_GETFRAME,"\n\r m_idFrame: %i",m_idFrame); switch(m_SequenceChosen) { case 1:// 01 - Calibration(milieu) // if(m_idFrame == 1) {//if(idOperation == 1) { m_posLeg[0] = 150; m_posLeg[1] = 150; m_posLeg[2] = 150; m_posLeg[3] = 150; } else { m_posLeg[0] = 0; m_posLeg[1] = 0; m_posLeg[2] = 0; m_posLeg[3] = 0; } break; case 2:// 02 - Debout // seqUpDown(true,m_idFrame,idLeg);//seqUpDown(true,idOperation,idLeg); break; case 3:// 03 - Coucher // seqUpDown(false,m_idFrame,idLeg);//seqUpDown(false,idOperation,idLeg); break; case 4:// 04 - Tourne Gauche // seqTurn(false,m_idFrame,idLeg); break; case 5:// 05 - Tourne Droite // seqTurn(true,m_idFrame,idLeg); break; case 6:// 06 - Marche // seqWalk(true,m_idFrame,idLeg); break; case 7:// 07 - Recule // seqWalk(false,m_idFrame,idLeg); break; case 8:// 07 - Repositioner // seqRepositioner(m_idFrame,idLeg); break; case 9:// 09 - Crabe Gauche // seqCrabe(false,m_idFrame,idLeg); break; case 10:// 10 - Crabe Droite // seqCrabe(true,m_idFrame,idLeg); break; } debug(DEBUG_HOMEMADE_GETFRAME,"\n\r posLeg: [0]:%i, [1]:%i, [2]:%i, [3]:%i,",m_posLeg[0],m_posLeg[1],m_posLeg[2],m_posLeg[3]); debug(DEBUG_HOMEMADE_GETFRAME,"\n\r Out Get Frame"); return m_posLeg; } void homemadeSequence::seqUpDown(bool downUP,char idOperation,char idLeg) { if((idOperation<10)&&(idOperation>0)) { switch(idLeg) { //moving hips case 1://#0 m_posLeg[0] = 140; break; case 2://#4 m_posLeg[0] = 165; break; case 3://#8 m_posLeg[0] = 160; break; case 6://#20 m_posLeg[0] = 133; break; case 7://#24 m_posLeg[0] = 170; break; default://#12 #28 m_posLeg[0] = 150; break; } if(downUP) { if(idLeg<5) for(int i=1; i <= 3; i++) m_posLeg[i]=table_seqUp[idOperation-1][0][i-1]; else for(int i=1; i <= 3; i++) m_posLeg[i]=table_seqUp[idOperation-1][1][i-1]; } else { if(idLeg<5) for(int i=1; i <= 3; i++) m_posLeg[i]=table_seqDown[idOperation-1][0][i-1]; else for(int i=1; i <= 3; i++) m_posLeg[i]=table_seqDown[idOperation-1][1][i-1]; } /*if(idOperation == 1) { if(idLeg<5) { m_posLeg[1] = 80; m_posLeg[2] = 210; m_posLeg[3] = 160; } else { m_posLeg[1] = 220; m_posLeg[2] = 90; m_posLeg[3] = 114; } } else { if(!downUP) { if(idOperation == 9) { if(idLeg<5) { m_posLeg[1] = 80; m_posLeg[2] = 100; m_posLeg[3] = 150; } else { m_posLeg[1] = 220; m_posLeg[2] = 200; m_posLeg[3] = 150; } } idOperation = 10 - idOperation; } switch(idOperation) { case 1: break; case 2: if(idLeg<5) { m_posLeg[1] = 80; m_posLeg[2] = 220; m_posLeg[3] = 170; } else { m_posLeg[1] = 220; m_posLeg[2] = 80; m_posLeg[3] = 130; } break; case 3: if(idLeg<5) { m_posLeg[1] = 90; m_posLeg[2] = 220; m_posLeg[3] = 160; } else { m_posLeg[1] = 200; m_posLeg[2] = 200; m_posLeg[3] = 140; } break; case 4: if(idLeg<5) { m_posLeg[1] = 106; m_posLeg[2] = 220; m_posLeg[3] = 150; } else { m_posLeg[1] = 195; m_posLeg[2] = 80; m_posLeg[3] = 150; } break; case 5: if(idLeg<5) { m_posLeg[1] = 128; m_posLeg[2] = 220; m_posLeg[3] = 128; } else { m_posLeg[1] = 172; m_posLeg[2] = 80; m_posLeg[3] = 173; } break; case 6: if(idLeg<5) { m_posLeg[1] = 144; m_posLeg[2] = 205; m_posLeg[3] = 130; } else { m_posLeg[1] = 156; m_posLeg[2] = 95; m_posLeg[3] = 170; } break; case 7: if(idLeg<5) { m_posLeg[1] = 144; m_posLeg[2] = 211; m_posLeg[3] = 123; } else { m_posLeg[1] = 156; m_posLeg[2] = 89; m_posLeg[3] = 177; } break; case 8: if(idLeg<5) { m_posLeg[1] = 172; m_posLeg[2] = 185; m_posLeg[3] = 124; } else { m_posLeg[1] = 128; m_posLeg[2] = 115; m_posLeg[3] = 176; } break; case 9: if(idLeg<5) { m_posLeg[1] = 194; m_posLeg[2] = 166; m_posLeg[3] = 118; } else { m_posLeg[1] = 106; m_posLeg[2] = 134; m_posLeg[3] = 182; } break; default: m_posLeg[0] = 0; m_posLeg[1] = 0; m_posLeg[2] = 0; m_posLeg[3] = 0; break; } }*/ } } void homemadeSequence::seqTurn(bool leftRIGHT,char idOperation,char idLeg) { if(idOperation<32) { for(int i=1; i <= 3; i++) m_posLeg[i]=table_seqTurn[idOperation-1][idLeg-1][i-1]; delaisNeed = (table_seqTurn_PAUSE_TIME[idOperation-1][0])*10; timeSequence[idLeg-1] = table_seqTurn_PAUSE_TIME[idOperation-1][1]; switch(idOperation) { case 3: switch(idLeg) { //moving hips case 3://#8 m_posLeg[0]= (leftRIGHT)? 180:140; break; case 6://#20 m_posLeg[0]= (leftRIGHT)? 150:114; break; } break; case 11: switch(idLeg) { //moving hips case 1://#0 m_posLeg[0]= (leftRIGHT)? 150:110; break; case 7://28 m_posLeg[0]= (leftRIGHT)? 164:104; break; } break; case 17: switch(idLeg) { //moving hips case 1://#0 m_posLeg[0]= 140; break; case 2://4 m_posLeg[0]= (leftRIGHT)? 150:176; break; case 3://8 m_posLeg[0]= 160; break; case 6://20 m_posLeg[0]= 133; break; case 7://24 m_posLeg[0]= (leftRIGHT)? 153:183; break; case 8://28 m_posLeg[0]= 133; break; } if((idLeg != 4) || (idLeg != 5)) timeSequence[idLeg-1] = 30; break; case 25: if(idLeg == 7) m_posLeg[0] = 170; break; case 29: if(idLeg == 2) m_posLeg[0] = 165; break; //case : //break; default: m_posLeg[0]= 255; break; } } else for(int i=0; i <= 3; i++) m_posLeg[i]=0; } void homemadeSequence::seqWalk(bool backFRONT,char idOperation,char idLeg) { if(backFRONT) { if(idOperation<41) { for(int i=1; i <= 3; i++) m_posLeg[i]=table_seqFoward[idOperation-1][idLeg-1][i-1]; delaisNeed = (table_seqFoward_PAUSE_TIME[idOperation-1][0])*10; timeSequence[idLeg-1] = table_seqFoward_PAUSE_TIME[idOperation-1][1]; //manque qqch ici switch(idOperation) { case 3: if(idLeg == 1) m_posLeg[0] = 150; else if(idLeg == 6) m_posLeg[0] = 123; break; case 5: if((idLeg ==1) || (idLeg==6)) timeSequence[idLeg-1] = 30; break; case 7: if(idLeg == 3)m_posLeg[0] = 187; else if(idLeg == 8) m_posLeg[0] = 123; break; case 11: switch(idLeg) { case 1: m_posLeg[0] = 130; break; case 2: m_posLeg[0] = 140; break; case 3: m_posLeg[0] = 160; break; case 4: m_posLeg[0] = 117; break; case 5: m_posLeg[0] = 179; break; case 6: m_posLeg[0] = 134; break; case 7: m_posLeg[0] = 183; break; case 8: m_posLeg[0] = 144; break; } break; case 16: if(idLeg == 1) m_posLeg[0] = 137; break; case 20: if(idLeg == 5) m_posLeg[0] = 176; else if(idLeg == 7) m_posLeg[0] = 160; break; case 22: if((idLeg ==2) || (idLeg==7)) timeSequence[idLeg-1] = 30; break; case 24: if(idLeg == 4) m_posLeg[0] = 177; else if(idLeg == 5) m_posLeg[0] = 133; break; } } else for(int i=0; i <= 3; i++) m_posLeg[i]=0; } else { if(idOperation<33) { for(int i=1; i <= 3; i++) m_posLeg[i]=table_seqBackward[idOperation-1][idLeg-1][i-1]; delaisNeed = (table_seqBackward_PAUSE_TIME[idOperation-1][0])*10; timeSequence[idLeg-1] = table_seqBackward_PAUSE_TIME[idOperation-1][1]; //manque qqch ici } else for(int i=0; i <= 3; i++) m_posLeg[i]=0; } } void homemadeSequence::seqRepositioner(char idOperation,char idLeg) { if(idOperation<6) { if(m_idLegUse == idLeg) { for(int i=1; i <= 3; i++) m_posLeg[i]=table_seqRepositionne[idOperation-1][idLeg-1][i-1]; timeSequence[idLeg-1] = table_seqTurn_PAUSE_TIME[idOperation-1][1]; if(idOperation == 5) { switch(idLeg) { case 1: m_posLeg[0] = 137; break; case 2: m_posLeg[0] = 165; break; case 3: m_posLeg[0] = 160; break; case 4: m_posLeg[0] = 150; break; case 5: m_posLeg[0] = 153; break; case 6: m_posLeg[0] = 133; break; case 7: m_posLeg[0] = 170; break; case 8: m_posLeg[0] = 144; break; } } } else for(int i=0; i <= 3; i++)m_posLeg[i]=255; delaisNeed = (table_seqRepositionne_PAUSE_TIME[idOperation-1][0])*10; } else for(int i=0; i <= 3; i++) m_posLeg[i]=0; } void homemadeSequence::seqCrabe(bool leftRIGHT,char idOperation,char idLeg) { if(idOperation<33) { if(leftRIGHT) idOperation=33-idOperation; switch(idLeg) { //moving hips case 1: m_posLeg[0] = 140; break; case 2: m_posLeg[0] = 165; break; case 3: m_posLeg[0] = 160; break; case 6: m_posLeg[0] = 133; break; case 7: m_posLeg[0] = 170; break; default: m_posLeg[0] = 150; break; } for(int i=1; i <= 3; i++) m_posLeg[i]=table_seqCrabe[idOperation-1][idLeg-1][i-1]; //inclure ici un truc de gestion des 0 parce que sa veux pas dire erreur mais juste pas changer cette patte la a ce frame la } else for(int i=0; i <= 3; i++) m_posLeg[i]=0; } bool homemadeSequence::next_frame(void) { debug(DEBUG_HOMEMADE_NEXTFRAME,"\n\r in Next Frame"); bool temp=false; debug(DEBUG_HOMEMADE_NEXTFRAME,"\n\r m_idframe == %d",m_idFrame); //if(m_idFrame > 1){ m_idFrame++; unsigned char* tmpTable = get_frame(1); if((tmpTable[0]!=0) && (tmpTable[1]!=0) && (tmpTable[2]!=0) && (tmpTable[3]!=0)) { temp=true; //m_idFrame++;//get_frame(m_idFrame); if((delaisNextSeq.read_ms() >= delaisNeed) || (delaisNeed == -1)) { delaisNextSeq.reset(); delaisNeed=-1; for(int i=0; i<8; i++)timeSequence[i]=0; } else m_idFrame--; } else m_idFrame--; //} //} debug(DEBUG_HOMEMADE_NEXTFRAME,"\n\r m_idframe == %d",m_idFrame); debug(DEBUG_HOMEMADE_NEXTFRAME,"\n\r out Next Frame"); return temp; } bool homemadeSequence::prev_frame(void) //true == prev is ok { //false == impossible debug(DEBUG_HOMEMADE_PREVFRAME,"\n\r in Prev Frame"); bool temp=false; debug(DEBUG_HOMEMADE_PREVFRAME,"\n\r m_idframe == %d",m_idFrame); if(m_idFrame > 1) { m_idFrame--; unsigned char* tmpTable = get_frame(1); if((tmpTable[0]!=0) && (tmpTable[1]!=0) && (tmpTable[2]!=0) && (tmpTable[3]!=0)) { temp=true; //m_idFrame++;//get_frame(m_idFrame); if((delaisNextSeq.read_ms() >= delaisNeed) || (delaisNeed == -1)) { delaisNextSeq.reset(); delaisNeed=-1; for(int i=0; i<8; i++)timeSequence[i]=0; } else m_idFrame++; } else m_idFrame++; //} } debug(DEBUG_HOMEMADE_PREVFRAME,"\n\r m_idframe == %d",m_idFrame); debug(DEBUG_HOMEMADE_PREVFRAME,"\n\r out Prev Frame"); return temp; }