From d308a517ee8be2b8191ce7c5e6fe8386d20f0c88 Mon Sep 17 00:00:00 2001 From: Michael Smith Date: Sun, 15 May 2016 21:27:37 -0700 Subject: [PATCH] Fix for a compile error (oops), and added ImageImportOptions.cs --- OSCADSharp/OSCADSharp/OSCADSharp.csproj | 1 + .../Solids/Imported/ImageImportOptions.cs | 19 +++++++++++++++++++ .../Solids/Imported/ImportedImage.cs | 18 ++++++++---------- .../Utility/Images/CubistImageProcessor.cs | 3 ++- 4 files changed, 30 insertions(+), 11 deletions(-) create mode 100644 OSCADSharp/OSCADSharp/Solids/Imported/ImageImportOptions.cs diff --git a/OSCADSharp/OSCADSharp/OSCADSharp.csproj b/OSCADSharp/OSCADSharp/OSCADSharp.csproj index fb19b38..3a6e163 100644 --- a/OSCADSharp/OSCADSharp/OSCADSharp.csproj +++ b/OSCADSharp/OSCADSharp/OSCADSharp.csproj @@ -48,6 +48,7 @@ + diff --git a/OSCADSharp/OSCADSharp/Solids/Imported/ImageImportOptions.cs b/OSCADSharp/OSCADSharp/Solids/Imported/ImageImportOptions.cs new file mode 100644 index 0000000..a87e1b6 --- /dev/null +++ b/OSCADSharp/OSCADSharp/Solids/Imported/ImageImportOptions.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace OSCADSharp.Solids.Imported +{ + /// + /// Configuration options for processing imported images + /// + public class ImageImportOptions + { + /// + /// Indicates whether height-mapping should be used + /// + public bool HeightMapping { get; set; } = true; + } +} diff --git a/OSCADSharp/OSCADSharp/Solids/Imported/ImportedImage.cs b/OSCADSharp/OSCADSharp/Solids/Imported/ImportedImage.cs index 2840588..1ae7cfe 100644 --- a/OSCADSharp/OSCADSharp/Solids/Imported/ImportedImage.cs +++ b/OSCADSharp/OSCADSharp/Solids/Imported/ImportedImage.cs @@ -25,19 +25,17 @@ namespace OSCADSharp.Solids.Imported /// Creates an imported image from the specified file /// /// + /// /// - public static ImportedImage FromFile(string imagePath) + public static ImportedImage FromFile(string imagePath, ImageImportOptions options = null) { - IImageProcessor processor; - //if(mode == ImageImportMode.Cubist) - //{ - processor = new CubistImageProcessor(imagePath); - //} - //else - //{ - // processor = new PolygonalImageProcessor(imagePath); - //} + IImageProcessor processor; + if(options == null) + { + options = new ImageImportOptions(); + } + processor = new CubistImageProcessor(imagePath, options.HeightMapping); var obj = processor.ProcessImage(); var img = new ImportedImage() diff --git a/OSCADSharp/OSCADSharp/Utility/Images/CubistImageProcessor.cs b/OSCADSharp/OSCADSharp/Utility/Images/CubistImageProcessor.cs index 2cf4f31..7c984fd 100644 --- a/OSCADSharp/OSCADSharp/Utility/Images/CubistImageProcessor.cs +++ b/OSCADSharp/OSCADSharp/Utility/Images/CubistImageProcessor.cs @@ -1,4 +1,5 @@ -using OSCADSharp.Spatial; +using OSCADSharp.Solids; +using OSCADSharp.Spatial; using System; using System.Collections.Generic; using System.Drawing;