private void Print()
{
Console.WriteLine ("\n\n");
float [] fpoints = _coords;
int cpos = 0;
for (int i=0; i < _typesCount; i++) {
sbyte type = _types [i];
string marker = String.Empty;
if ((type & SEG_MARKER) != 0)
marker = " | MARKER";
switch (type & SEG_MASK) {
case SEG_CLOSE:
Console.WriteLine ("CLOSE {0}",marker);
break;
case SEG_MOVETO:
Console.WriteLine("{0}{3} ({1},{2})","MOVETO", fpoints[cpos++], fpoints[cpos++], marker);
break;
case SEG_LINETO:
Console.WriteLine("{0}{3} ({1},{2})","LINETO", fpoints[cpos++], fpoints[cpos++], marker);
break;
case SEG_QUADTO:
Console.WriteLine("{0}{3} ({1},{2})","QUADTO", fpoints[cpos++], fpoints[cpos++], marker);
Console.WriteLine(" ({1},{2})","QUADTO", fpoints[cpos++], fpoints[cpos++]);
break;
case SEG_CUBICTO:
Console.WriteLine("{0}{3} ({1},{2})","CUBICTO", fpoints[cpos++], fpoints[cpos++], marker);
Console.WriteLine(" ({1},{2})","CUBICTO", fpoints[cpos++], fpoints[cpos++]);
Console.WriteLine(" ({1},{2})","CUBICTO", fpoints[cpos++], fpoints[cpos++]);
break;
}
}
}
#endif