public static void print_gradient_definition(GradientBase element) { if (element is LinearGradient) { LinearGradient grad = (LinearGradient)element; Console.WriteLine("\tLinear Gradient: " + grad.getId() + " start: " + toString(grad.getXPoint1()) + ", " + toString(grad.getYPoint1()) + " end: " + toString(grad.getXPoint2()) + ", " + toString(grad.getYPoint2()) ); } else if (element is RadialGradient) { RadialGradient grad = (RadialGradient)element; Console.WriteLine("\tRadial Gradient: " + grad.getId() + " center: " + toString(grad.getCenterX()) + ", " + toString(grad.getCenterY()) + " focal: " + toString(grad.getFocalPointX()) + ", " + toString(grad.getFocalPointY()) ); } for (int k = 0; k < element.getNumGradientStops(); ++k) { GradientStop stop = element.getGradientStop(k); if (stop == null) { continue; } Console.WriteLine("\t\tstop " + k.ToString() + " id: " + stop.getId() + " stop-color: " + stop.getStopColor()); } }