public ShapeModelLearningProgressEventArgs(
     int iterationsCompleted,
     ShapeModel shapeModel,
     ShapeFittingInfo fittingInfo)
 {
     this.IterationsCompleted = iterationsCompleted;
     this.ShapeModel = shapeModel;
     this.FittingInfo = fittingInfo;
 }
 private Bitmap GetFittingMask(ShapeModel shapeModel, ShapeFittingInfo fittingInfo)
 {
     Vector[] meanLocations = Util.ArrayInit(fittingInfo.ShapePartLocations[0].Count, i => Vector.FromArray(Util.ArrayInit(2, j => fittingInfo.ShapePartLocations[0][i][j].GetMean())));
     PositiveDefiniteMatrix[] meanOrientations = Util.ArrayInit(fittingInfo.ShapePartOrientations[0].Count, j => fittingInfo.ShapePartOrientations[0][j].GetMean());
     return ImageHelpers.DrawShape(shapeModel.GridWidth, shapeModel.GridHeight, meanLocations, meanOrientations);
 }