// SOLAR PANEL FOLD
static UINT SGrp1[1] = { GRP_FIXEDSOLARARMS };//PANELARM fixed
static MGROUP_ROTATE SPANEL1A(0, SGrp1, 1, _V(0, 0, 0), _V(0, 1, 0), (float)(-30 * RAD));
// panels and arm rotate down 90 degrees
static UINT SGrp2[5] = { GRP_SOLARPANEL1CENTERC ,GRP_SOLARPANEL1CENTERB ,GRP_SOLARPANEL1CENTERA,GRP_SOLARPANEL1CENTERD, GRP_SOLARARM1 };//PANELARM and center panel
solarparent = AddAnimationComponent(anim_SPANELrotate, 0, 1, &SPANEL1A);
SPANEL_anim[0] = new MGROUP_ROTATE(0, SGrp2, 5, _V(1.053, 1.327, 0), _V(0, 0, 1), (float)(-90 * RAD));
static UINT SGrp3[3] = { GRP_SOLARPANEL1END2B ,GRP_SOLARPANEL1END2A ,GRP_PANEL1HINGE2 };// END PANEL1
SPANEL_anim[1] = new MGROUP_ROTATE(0, SGrp3, 3, _V(.8113019, 2.492185, -.5825786), _V(0, 1, 0), (float)(180 * RAD));
static UINT SGrp4[3] = { GRP_SOLARPANEL1END1B ,GRP_SOLARPANEL1END1A ,GRP_PANEL1HINGEA };//END PANEL2
SPANEL_anim[2] = new MGROUP_ROTATE(0, SGrp4, 3, _V(.8028569, 2.490814, .5800284), _V(0, -1, 0), (float)(180 * RAD));
solarparent1A = AddAnimationComponent(anim_SPANEL, 0, .3, SPANEL_anim[0],solarparent);//FOLDS DOWN
AddAnimationComponent(anim_SPANEL, .3, .6, SPANEL_anim[1], solarparent1A);//ENDPANEL OPEN
AddAnimationComponent(anim_SPANEL, .6, 1, SPANEL_anim[2], solarparent1A);//ENDPANEL OPEN
// sphere becomes parent of the arm and panels and rotates 15 degrees.
static UINT SGrp1A[1] = { GRP_sphere01 };//PANELARM ghost sphere for to rotate the arm and panel
SPANEL_anim[3] = new MGROUP_ROTATE(0, SGrp1A, 1, _V(1.053, 1.327, 0), _V(0, 1, 0), (float)(-15 * RAD));
AddAnimationComponent(anim_SPANELFOLD, 0, 1, SPANEL_anim[3]);//ROTATES