void CPCAGrid::GridPlane (double dCurSplit) { const double dASinNL = asin (m_dNL) ; const double dSm1 = (m_dwSplitCircle > 1) ? m_dwSplitCircle - 1 : 1 ; double dSplitFact = meal_PI () * dCurSplit ; InitPenalty () ; t_size i ; ASSERT_TEMPRANGE (11, 11) ; SVecD vProj (tempRef (11), m_dwN) ; m_dBestObj = meal_NegInf () ; if (m_dNL && fabs (m_dNL) < 1e-6) EvalDirection (1, 0) ; const t_size dwEnd = (dCurSplit == 1.0) ? m_dwSplitCircle - 1 : m_dwSplitCircle ; // dCurSplit means, that we're checking an angle of 180° ( = PI). thus the first and last checked point would be the same. for (i = 0; i < dwEnd; i++) { double dAngle = (i / dSm1 - 0.5) * dSplitFact + dASinNL; EvalDirection (cos (dAngle), sin (dAngle)) ; } if (m_dwCheckOrth) // always false for PCAgrid and sPCAgrid m_dCurScat = sqrt (CalcVarTrimmed (m_dNCL, m_dNL, m_dCurScat, m_dCurScatOrth)) ; // m_dCurScat = CalcScatTrimmed (m_dNCL, m_dNL, m_dCurScat, m_dCurScatOrth) ; // else // m_dCurScat = m_dCurScat ; }
/* Returns true if it was set. */ PRBool nsResizerFrame::GetInitialDirection(eDirection& aDirection) { // see what kind of resizer we are. nsAutoString value; if (!GetContent()) return PR_FALSE; if (GetContent()->GetAttr(kNameSpaceID_None, nsGkAtoms::dir, value)) { return EvalDirection(value,aDirection); } return PR_FALSE; }