public override void Execute(List <string> arguments, Models model) { var reader = new ParameterReader(arguments); var mode = reader.ReadEnum <StatMode>("min/max/avg", StatMode.avg); var type = reader.ReadEnum <StatType>("luminance/luma/avg/lightness", StatType.avg); reader.ExpectNoMoreArgs(); model.Apply(); var stats = model.GetStatistics(model.Pipelines[0].Image); switch (type) { case StatType.luminance: Print(stats.Luminance, mode); break; case StatType.luma: Print(stats.Luma, mode); break; case StatType.avg: Print(stats.Average, mode); break; case StatType.lightness: Print(stats.Lightness, mode); break; default: throw new Exception("unknown type " + type); } }
public override void Execute(List <string> arguments, Models model) { var reader = new ParameterReader(arguments); var filename = reader.ReadString("filename"); var format = reader.ReadEnum <GliFormat>("gliFormat"); reader.ExpectNoMoreArgs(); // split filename var splitIdx = filename.LastIndexOf('.'); if (splitIdx < 0) { throw new Exception($"{filename} missing file extension"); } var leftFile = filename.Substring(0, splitIdx); var rightFile = filename.Substring(splitIdx + 1); model.ExportPipelineImage(leftFile, rightFile, format); }
public override void Execute(List <string> arguments, Models model) { var reader = new ParameterReader(arguments); var filename = reader.ReadString("filename"); var format = reader.ReadEnum <GliFormat>("gliFormat"); reader.ExpectNoMoreArgs(); // split filename var splitIdx = filename.LastIndexOf('.'); if (splitIdx < 0) { throw new Exception($"{filename} missing file extension"); } var leftFile = filename.Substring(0, splitIdx); var rightFile = filename.Substring(splitIdx + 1); if (!model.Pipelines[0].IsValid) { throw new Exception("image formula is invalid."); } // apply changes before exporting model.Apply(); var desc = new ExportDescription(model.Pipelines[0].Image, leftFile, rightFile) { FileFormat = format, UseCropping = UseCropping, CropStart = CropStart, CropEnd = CropEnd, Quality = Quality, Layer = Layer, Mipmap = Mipmap }; model.Export.Export(desc); }