コード例 #1
0
 public bool Saturate(Image image, float saturation)
 {
     if (image == null || !image.IsValid)
     {
         return(false);
     }
     IL.BindImage(image.ImageID);
     return(ILU.Saturate(saturation));
 }
コード例 #2
0
 public bool Noisify(Image image, float tolerance)
 {
     if (image == null || !image.IsValid)
     {
         return(false);
     }
     IL.BindImage(image.ImageID);
     return(ILU.Noisify(tolerance));
 }
コード例 #3
0
 public bool Pixelize(Image image, int pixelSize)
 {
     if (image == null || !image.IsValid)
     {
         return(false);
     }
     IL.BindImage(image.ImageID);
     return(ILU.Pixelize(pixelSize));
 }
コード例 #4
0
 public bool Negative(Image image)
 {
     if (image == null || !image.IsValid)
     {
         return(false);
     }
     IL.BindImage(image.ImageID);
     return(ILU.Negative());
 }
コード例 #5
0
 public bool InvertAlpha(Image image)
 {
     if (image == null || !image.IsValid)
     {
         return(false);
     }
     IL.BindImage(image.ImageID);
     return(ILU.InvertAlpha());
 }
コード例 #6
0
 public bool GammaCorrect(Image image, float gamma)
 {
     if (image == null || !image.IsValid)
     {
         return(false);
     }
     IL.BindImage(image.ImageID);
     return(ILU.GammaCorrect(gamma));
 }
コード例 #7
0
 public bool Saturate(Image image, float red, float green, float blue, float saturation)
 {
     if (image == null || !image.IsValid)
     {
         return(false);
     }
     IL.BindImage(image.ImageID);
     return(ILU.Saturate(red, green, blue, saturation));
 }
コード例 #8
0
 public bool Sharpen(Image image, float factor, int iterations)
 {
     if (image == null || !image.IsValid)
     {
         return(false);
     }
     IL.BindImage(image.ImageID);
     return(ILU.Sharpen(factor, iterations));
 }
コード例 #9
0
 public bool EdgeDetectS(Image image)
 {
     if (image == null || !image.IsValid)
     {
         return(false);
     }
     IL.BindImage(image.ImageID);
     return(ILU.EdgeDetectS());
 }
コード例 #10
0
 public bool Emboss(Image image)
 {
     if (image == null || !image.IsValid)
     {
         return(false);
     }
     IL.BindImage(image.ImageID);
     return(ILU.Emboss());
 }
コード例 #11
0
ファイル: TransformEngine.cs プロジェクト: rayschpp/ps2ls
        public bool ScaleAlpha(Image image, float scale)
        {
            if (image == null || !image.IsValid)
            {
                return(false);
            }

            IL.BindImage(image.ImageID);
            return(ILU.ScaleAlpha(scale));
        }
コード例 #12
0
ファイル: TransformEngine.cs プロジェクト: rayschpp/ps2ls
        public bool Scale(Image image, int width, int height, int depth)
        {
            if (image == null || !image.IsValid)
            {
                return(false);
            }

            IL.BindImage(image.ImageID);
            return(ILU.Scale(width, height, depth));
        }
コード例 #13
0
ファイル: TransformEngine.cs プロジェクト: rayschpp/ps2ls
        public bool EnlargeImage(Image image, int xDim, int yDim, int zDim)
        {
            if (image == null || !image.IsValid)
            {
                return(false);
            }

            IL.BindImage(image.ImageID);
            return(ILU.EnlargeImage(xDim, yDim, zDim));
        }
コード例 #14
0
ファイル: TransformEngine.cs プロジェクト: rayschpp/ps2ls
        public bool Crop(Image image, int offsetX, int offsetY, int offsetZ, int width, int height, int depth)
        {
            if (image == null || !image.IsValid)
            {
                return(false);
            }

            IL.BindImage(image.ImageID);
            return(ILU.Crop(offsetX, offsetY, offsetZ, width, height, depth));
        }
コード例 #15
0
ファイル: TransformEngine.cs プロジェクト: rayschpp/ps2ls
        public bool Rotate3D(Image image, float x, float y, float z, float angle)
        {
            if (image == null || !image.IsValid)
            {
                return(false);
            }

            IL.BindImage(image.ImageID);
            return(ILU.Rotate3D(x, y, z, angle));
        }
コード例 #16
0
ファイル: TransformEngine.cs プロジェクト: rayschpp/ps2ls
        public bool Mirror(Image image)
        {
            if (image == null || !image.IsValid)
            {
                return(false);
            }

            IL.BindImage(image.ImageID);
            return(ILU.Mirror());
        }
コード例 #17
0
ファイル: TransformEngine.cs プロジェクト: rayschpp/ps2ls
        public bool SwapColors(Image image)
        {
            if (image == null || !image.IsValid)
            {
                return(false);
            }

            IL.BindImage(image.ImageID);
            return(ILU.SwapColors());
        }
コード例 #18
0
ファイル: TransformEngine.cs プロジェクト: rayschpp/ps2ls
        public bool ReplaceColor(Image image, byte red, byte green, byte blue, float tolerance)
        {
            if (image == null || !image.IsValid)
            {
                return(false);
            }

            IL.BindImage(image.ImageID);
            return(ILU.ReplaceColor(red, green, blue, tolerance));
        }
コード例 #19
0
ファイル: TransformEngine.cs プロジェクト: rayschpp/ps2ls
        public bool ScaleColors(Image image, float red, float green, float blue)
        {
            if (image == null || !image.IsValid)
            {
                return(false);
            }

            IL.BindImage(image.ImageID);
            return(ILU.ScaleColors(red, green, blue));
        }
コード例 #20
0
ファイル: FilterEngine.cs プロジェクト: zyjiang0571/open3mod
        public bool Convolution(Image image, int[] matrix, int scale, int bias)
        {
            if (image == null || !image.IsValid)
            {
                return(false);
            }

            IL.BindImage(image.ImageID);
            return(ILU.Convolution(matrix, scale, bias));
        }
コード例 #21
0
ファイル: TransformEngine.cs プロジェクト: rayschpp/ps2ls
        public bool EnlargeCanvas(Image image, int width, int height, int depth)
        {
            if (image == null || !image.IsValid)
            {
                return(false);
            }

            IL.BindImage(image.ImageID);
            return(ILU.EnlargeCanvas(width, height, depth));
        }
コード例 #22
0
ファイル: FilterEngine.cs プロジェクト: zyjiang0571/open3mod
        public bool BuildMipMaps(Image image)
        {
            if (image == null || !image.IsValid)
            {
                return(false);
            }

            IL.BindImage(image.ImageID);
            return(ILU.BuildMipMaps());
        }
コード例 #23
0
ファイル: FilterEngine.cs プロジェクト: zyjiang0571/open3mod
        public bool Contrast(Image image, float contrast)
        {
            if (image == null || !image.IsValid)
            {
                return(false);
            }

            IL.BindImage(image.ImageID);
            return(ILU.Contrast(contrast));
        }
コード例 #24
0
ファイル: FilterEngine.cs プロジェクト: zyjiang0571/open3mod
        public bool Alienify(Image image)
        {
            if (image == null || !image.IsValid)
            {
                return(false);
            }

            IL.BindImage(image.ImageID);
            return(ILU.Alienify());
        }
コード例 #25
0
ファイル: FilterEngine.cs プロジェクト: zyjiang0571/open3mod
        public bool BlurGaussian(Image image, int iterations)
        {
            if (image == null || !image.IsValid)
            {
                return(false);
            }

            IL.BindImage(image.ImageID);
            return(ILU.BlurGaussian(iterations));
        }
コード例 #26
0
ファイル: FilterEngine.cs プロジェクト: zyjiang0571/open3mod
        public bool Wave(Image image, float angle)
        {
            if (image == null || !image.IsValid)
            {
                return(false);
            }

            IL.BindImage(image.ImageID);
            return(ILU.Wave(angle));
        }
コード例 #27
0
 public bool SaveImageToStream(Image image, ImageType imageType, Stream stream)
 {
     if (!image.IsValid || imageType == ImageType.Unknown || (stream == null || !stream.CanWrite))
     {
         return(false);
     }
     this.CheckDisposed();
     IL.BindImage(image.ImageID);
     return(IL.SaveImageToStream(imageType, stream));
 }
コード例 #28
0
 public bool SaveImage(Image image, ImageType imageType, string filename)
 {
     if (!image.IsValid || imageType == ImageType.Unknown || string.IsNullOrEmpty(filename))
     {
         return(false);
     }
     this.CheckDisposed();
     IL.BindImage(image.ImageID);
     return(IL.SaveImage(imageType, filename));
 }
コード例 #29
0
ファイル: ImageExporter.cs プロジェクト: zyjiang0571/open3mod
        public bool SaveImage(Image image, String filename)
        {
            if (!image.IsValid || String.IsNullOrEmpty(filename))
            {
                return(false);
            }

            CheckDisposed();

            IL.BindImage(image.ImageID);
            return(IL.SaveImage(filename));
        }
コード例 #30
0
ファイル: PixImageDevil.cs プロジェクト: forki/aardvark.base
        private static PixImage LoadImage(int img)
        {
            var  size     = new V2i(IL.GetInteger(IntName.ImageWidth), IL.GetInteger(IntName.ImageHeight));
            var  dataType = IL.GetDataType();
            var  format   = IL.GetFormat();
            var  channels = IL.GetInteger(IntName.ImageChannels);
            Type type;

            Col.Format fmt;

            // try to get format information
            if (!s_pixDataTypes.TryGetValue(dataType, out type))
            {
                return(null);
            }
            if (!s_pixColorFormats.TryGetValue(format, out fmt))
            {
                return(null);
            }

            // if the image has a lower-left origin flip it
            var mode = (OriginMode)IL.GetInteger((IntName)0x0603);

            if (mode == OriginMode.LowerLeft && !ILU.FlipImage())
            {
                return(null);
            }


            // create an appropriate PixImage instance
            var imageType = typeof(PixImage <>).MakeGenericType(type);
            var pix       = (PixImage)Activator.CreateInstance(imageType, fmt, size, channels);

            // copy the data to the PixImage
            var gc = GCHandle.Alloc(pix.Data, GCHandleType.Pinned);

            try
            {
                var ptr = IL.GetData();
                ptr.CopyTo(pix.Data, 0, pix.Data.Length);
            }
            finally
            {
                gc.Free();
            }

            // unbind and delete the DevIL image
            IL.BindImage(0);
            IL.DeleteImage(img);

            return(pix);
        }