/// <summary> /// Constructor /// </summary> /// <param name="reticle">The reticle</param> /// <param name="canvas">The canvas</param> public ReticleDrawController(ReticleDefinition reticle, IReticleCanvas canvas) { mReticle = reticle; mCanvas = canvas; mTranslator = new CoordinateTranslator(reticle.Size.X, reticle.Size.Y, reticle.Zero.X, reticle.Zero.Y, canvas.Width, canvas.Height); }
/// <summary> /// Gets SVG content of canvas /// </summary> /// <param name="canvas">The canvas previously created using `Create` method.</param> /// <returns></returns> public static string ToSvg(IReticleCanvas canvas) => ((canvas as SvgCanvas) ?? throw new ArgumentException($"The canvas must be created by {nameof(SvgCanvasFactory)} class", nameof(canvas))).ToSvg();