Mam taka petle:
while (((PointF)m_aData[m_aData.Count - 2]).X > this.ClientRectangle.Width)
{
float delta = ((PointF)m_aData[m_aData.Count - 2]).X - this.ClientRectangle.Width;
MovePoints(delta);
if (((PointF)m_aData[1]).X < 0.0f)
m_aData.RemoveAt(0);
}
m_aData to ArrayList PointF'ów.
Problem mam taki że źle obliczana jest delta, np. dla wartości: ((PointF)m_aData[m_aData.Count - 2]).X = 293.0 i this.ClientRectangle.Width = 293 delta jest równa 103 [glowa] . I nie wiem czym to może być spowodowane.
Zaczynam dopiero z c# i być może konstrukcja ((PointF)m_aData[m_aData.Count - 2]).X jest zla, ale gdzies sie z tym spotkalem na necie i wydaje mi sie w miare sensowne, nie wiem..