Definition at line 86 of file Transition.h. References mFillCol1, mFillCol2, mFillCol3, mFillCol4, mFillColC, OglGui::OglWindow::mOglWnd, and mPerc. Referenced by DoBlock(). 00087 { 00088 double pyt = (w/2)*(w/2) + (h/2)*(h/2); 00089 int sz = (int) (sqrt(pyt) * ((mode > 1 && mode < 8) ? mode/2 : 1)); 00090 int startR = 1 + (mPerc * sz) / 100; 00091 if (mode < 8 && mode & 1) 00092 { 00093 sz -= startR; 00094 startR = 1; 00095 } 00096 oglSys.StartScissor(mOglWnd,x,y,w,h); 00097 if (mode < 8) 00098 { 00099 SetLineWidth(6); 00100 SetLineColors(mFillCol1,mFillCol2,mFillCol3,mFillCol4); 00101 for (int r=startR; r<sz; r += 2) 00102 DrawCircle(x+w/2,y+h/2,r); 00103 } 00104 else 00105 { 00106 bool twoSides = (mode>11 && mode<16) || (mode>19&&mode<24); 00107 if (mode < 16) 00108 sz = w > h ? 3*w/2 : 3*h/2; 00109 int ang = (mode-8) * 90; 00110 double startAng = ang + (twoSides ? mPerc*1.8 : 0); 00111 double endAng = ang+360-mPerc*3.6 + (twoSides ? mPerc*1.8 : 0); 00112 DrawColArc3D(x+w/2,y+h/2,0,sz,sz,DEG2RAD(startAng),DEG2RAD(endAng), 00113 mFillCol1,mFillCol2,true,mFillColC); 00114 } 00115 00116 oglSys.EndScissor(); 00117 }
|