/// <summary> /// Creates a <c>PrecisionModel</c> that specifies /// an explicit precision model type. /// If the model type is Fixed the scale factor will default to 1. /// </summary> /// <param name="modelType"> /// The type of the precision model. /// </param> public PrecisionModel(PrecisionModels modelType) { this.modelType = modelType; if (modelType == PrecisionModels.Fixed) Scale = 1.0; }
/// <summary> /// Creates a <c>PrecisionModel</c> that specifies /// an explicit precision model type. /// If the model type is Fixed the scale factor will default to 1. /// </summary> /// <param name="modelType"> /// The type of the precision model. /// </param> public PrecisionModel(PrecisionModels modelType) { _modelType = modelType; if (modelType == PrecisionModels.Fixed) { _scale = 1.0; } }
/// <summary> /// Creates a <c>PrecisionModel</c> that specifies /// an explicit precision model type. /// If the model type is Fixed the scale factor will default to 1. /// </summary> /// <param name="modelType"> /// The type of the precision model. /// </param> public PrecisionModel(PrecisionModels modelType) { this.modelType = modelType; if (modelType == PrecisionModels.Fixed) { Scale = 1.0; } }
private static PrecisionModelType GetModelType(PrecisionModels models) { if (models == PrecisionModels.Fixed) return PrecisionModelType.Fixed; if (models == PrecisionModels.Floating) return PrecisionModelType.Floating; if (models == PrecisionModels.FloatingSingle) return PrecisionModelType.FloatingSingle; throw new InvalidOperationException(); }
/// <summary> /// Copy constructor to create a new <c>PrecisionModel</c> /// from an existing one. /// </summary> /// <param name="pm"></param> public PrecisionModel(PrecisionModel pm) { _modelType = pm._modelType; _scale = pm._scale; }
/// <summary> /// Copy constructor to create a new <c>PrecisionModel</c> /// from an existing one. /// </summary> /// <param name="pm"></param> public PrecisionModel(PrecisionModel pm) { modelType = pm.modelType; scale = pm.scale; }
/// <summary> /// Creates a <c>PrecisionModel</c> with a default precision /// of Floating. /// </summary> public PrecisionModel() { // default is floating precision modelType = PrecisionModels.Floating; }
public PrecisionModel(double scale, double offsetX, double offsetY) { modelType = PrecisionModels.Fixed; Scale = scale; }
/// <summary> /// Creates a <c>PrecisionModel</c> that specifies Fixed precision. /// Fixed-precision coordinates are represented as precise internal coordinates, /// which are rounded to the grid defined by the scale factor. /// </summary> /// <param name="scale"> /// Amount by which to multiply a coordinate after subtracting /// the offset, to obtain a precise coordinate. /// </param> public PrecisionModel(double scale) { modelType = PrecisionModels.Fixed; Scale = scale; }
/// <summary> /// Creates a precision model based on given precision model type /// </summary> /// <returns>The precision model type</returns> public IPrecisionModel CreatePrecisionModel(PrecisionModels modelType) { return(new PrecisionModel(modelType)); }
/// <summary> /// Creates a <c>PrecisionModel</c> with a default precision /// of Floating. /// </summary> public PrecisionModel() { // default is floating precision _modelType = PrecisionModels.Floating; }
/// <summary> /// Creates a <c>PrecisionModel</c> that specifies Fixed precision. /// Fixed-precision coordinates are represented as precise internal coordinates, /// which are rounded to the grid defined by the scale factor. /// </summary> /// <param name="scale"> /// Amount by which to multiply a coordinate after subtracting /// the offset, to obtain a precise coordinate. /// </param> public PrecisionModel(double scale) { _modelType = PrecisionModels.Fixed; _scale = scale; }
// ReSharper disable UnusedParameter.Local public PrecisionModel(double scale, double offsetX, double offsetY) // ReSharper restore UnusedParameter.Local { _modelType = PrecisionModels.Fixed; _scale = scale; }
/// <summary> /// Creates a <c>PrecisionModel</c> that specifies /// an explicit precision model type. /// If the model type is Fixed the scale factor will default to 1. /// </summary> /// <param name="modelType"> /// The type of the precision model. /// </param> public PrecisionModel(PrecisionModels modelType) { _modelType = modelType; if (modelType == PrecisionModels.Fixed) _scale = 1.0; }