void DrawLine(HDC hDC, DWORD dwDegree, DWORD dwRadius) { DWORD dwX1, dwY1, dwX2, dwY2; dwX1 = CalcX(dwDegree, dwRadius); dwY1 = CalcY(dwDegree, dwRadius); dwDegree += 180; dwX2 = CalcX(dwDegree, 10); dwY2 = CalcY(dwDegree, 10); MoveToEx(hDC, dwX1, dwY1, NULL); LineTo(hDC, dwX2, dwY2); return; }
void TileSelector::OnLButtonDown(int mX, int mY) { int x = CROOM->GetXTile((float)mX); int y = CROOM->GetYTile((float)mY); switch (App::Application.GameMode) { case GAME_MODE_PLAN: { Soldier* o = App::Application.SelectedSoldier; if (CROOM->TileIsFree(o, y, x)) { if (!o->IsPlaced) { std::string s = std::string("./gfx/Soldier/SoldierStill") + o->bmSuffix + ".png"; const char * img = s.c_str(); Object::Instantiate(o, img, (float)CalcX(mX)+Width/2, (float)CalcY(mY)+Height/2, NULL, MIDDLECENTER); CROOM->OccupyTile(o, y, x); } else { CROOM->LeaveTile(o, CROOM->GetYTile(o->Y), CROOM->GetXTile(o->X)); o->Y = (float)CalcY(mY)+Height/2; o->X = (float)CalcX(mX)+Width/2; o->DestX = o->X; CROOM->OccupyTile(o, y, x); } o->IsPlaced = true; // Select next soldier App::Application.AutoSelectSoldier(); } else { #ifdef PRINTDEBUG printf("Tile is already occupied\n"); #endif } } break; case GAME_MODE_PLAY: // Do nothing yet return; break; } }
void Cholesky::Solve(const std::vector<double> &b,std::vector<double> &x) { //vector<double> bx=b; //for (int i=0;i<b.size();i++) bx[i]=bx[i]+regp/double(n); CalcY(b); int i,j; double sum; for (i=n-1;i>=0;i--) { sum=y[i]; for (j=i+1;j<n;j++) sum-=(m[j][i]*x[j]); x[i]=sum/m[i][i]; } }
// solve for all orders void Cholesky::Solve(const std::vector<double> &b) { CalcY(b); int i,j; double sum; for (int o=0;o<n;o++) { for (i=o;i>=0;i--) { sum=y[i]; for (j=i+1;j<=o;j++) sum-=(m[j][i]*sol[o][j]); sol[o][i]=sum/m[i][i]; } } }
FF_ANIMATION_DYNAMIC_OBJECT FFLineMoveStrategy::Calculate(orxVECTOR* outPos,const orxCLOCK_INFO* pClockInfo ) { FFVector3 a = outPos; FF_ANIMATION_DYNAMIC_OBJECT anim; switch(_direction) { case MD_X: anim = CalcX(&a,pClockInfo); break; case MD_Y: anim = CalcY(&a,pClockInfo); break; } outPos->fX = a._x; outPos->fY = a._y; outPos->fZ = a._z; return anim; }
void TileSelector::OnMouseMove(int mX, int mY, int relX, int relY, bool Left, bool Right, bool Middle) { X = (float)CalcX(mX); Y = (float)CalcY(mY); }