/// <summary> /// Se aplica la tranformación Fisheye. /// </summary> public static FisheyeBitmap Convert(FisheyeBitmap image) { var temp = image.Clone() as FisheyeBitmap; temp._image = Convert(temp._image); return(temp); }
/// <summary> /// Se realiza la transformación de una imagen bitmap Fisheye a su equivalente en vista Panoramica. /// </summary> public static FisheyeBitmap ToLandscape(FisheyeBitmap image) { var temp = image.Clone() as FisheyeBitmap; temp._image = ToLandscape(temp._image); temp.Width = temp._image.Width; temp.Height = temp._image.Height; return(temp); }
/// <summary> /// Se inicializa el marcado de agua. /// </summary> /// <param name="image360">Imagen 360°</param> /// <param name="watermark">Marca de agua</param> /// <param name="algorithm">Algoritmo de inserción</param> /// <param name="indicatrix">Posiciones donde se realizará el marcado</param> public Watermarking(Bitmap360 image360, WatermarkBitmap watermark, IWatermarkAlgorithm algorithm, params TissotIndicatrix[] indicatrix) { if (indicatrix.Length > 0) { this._image360 = image360; //image360.Clone() as Bitmap360; this._imageWatermark = watermark; //watermark.Clone() as WatermarkBitmap; this._indicatrixes = indicatrix.ToList(); this._waterMark = new WatermarkBitmap(new Bitmap(image360.Width, image360.Height, watermark.PixelFormat)); // Se inicializan los fisheye this._topFisheye = new FisheyeBitmap(image360); this._bottomFisheye = new FisheyeBitmap(image360); // Se asigna el algoritmo this._algorithm = algorithm; } }