public void Paint(IPaintbrush pb) { pb.TranslateCoordinates(Canvas.RawWidth / 2, Canvas.RawHeight / 2); pb.ScaleCoordinates(Zoom, Zoom); pb.TranslateCoordinates(-CenterX, -CenterY); using (IPaintbrush pbSub = pb.Create()) { PaintModel(pbSub); } IGesture gest = gesture; if (gest != null) { using (IPaintbrush pbSub = pb.Create()) { gest.Paint(pbSub); } } }