//------------------------------------------------------------------------------ // // This code was generated by a tool. // libvips version: 8.17.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // //------------------------------------------------------------------------------ namespace NetVips; public sealed partial class MutableImage { #region auto-generated functions /// /// Draw a circle on an image. /// /// /// /// image.Mutate(x => x.DrawCircle(ink, cx, cy, radius, fill: bool)); /// /// /// Color for pixels. /// Centre of draw_circle. /// Centre of draw_circle. /// Radius in pixels. /// Draw a solid object. public void DrawCircle(double[] ink, int cx, int cy, int radius, bool? fill = null) { var options = new VOption(); options.AddIfPresent(nameof(fill), fill); this.Call("draw_circle", options, ink, cx, cy, radius); } /// /// Flood-fill an area. /// /// /// /// image.Mutate(x => x.DrawFlood(ink, x, y, test: Image, equal: bool)); /// /// /// Color for pixels. /// DrawFlood start point. /// DrawFlood start point. /// Test pixels in this image. /// DrawFlood while equal to edge. public void DrawFlood(double[] ink, int x, int y, Image test = null, bool? equal = null) { var options = new VOption(); options.AddIfPresent(nameof(test), test); options.AddIfPresent(nameof(equal), equal); this.Call("draw_flood", options, ink, x, y); } /// /// Flood-fill an area. /// /// /// /// image.Mutate(x => x.DrawFlood(ink, x, y, out var left, test: Image, equal: bool)); /// /// /// Color for pixels. /// DrawFlood start point. /// DrawFlood start point. /// Left edge of modified area. /// Test pixels in this image. /// DrawFlood while equal to edge. public void DrawFlood(double[] ink, int x, int y, out int left, Image test = null, bool? equal = null) { var options = new VOption(); options.AddIfPresent(nameof(test), test); options.AddIfPresent(nameof(equal), equal); options.Add("left", true); var results = this.Call("draw_flood", options, ink, x, y) as object[]; var opts = results?[1] as VOption; left = opts?["left"] is int out1 ? out1 : 0; } /// /// Flood-fill an area. /// /// /// /// image.Mutate(x => x.DrawFlood(ink, x, y, out var left, out var top, test: Image, equal: bool)); /// /// /// Color for pixels. /// DrawFlood start point. /// DrawFlood start point. /// Left edge of modified area. /// Top edge of modified area. /// Test pixels in this image. /// DrawFlood while equal to edge. public void DrawFlood(double[] ink, int x, int y, out int left, out int top, Image test = null, bool? equal = null) { var options = new VOption(); options.AddIfPresent(nameof(test), test); options.AddIfPresent(nameof(equal), equal); options.Add("left", true); options.Add("top", true); var results = this.Call("draw_flood", options, ink, x, y) as object[]; var opts = results?[1] as VOption; left = opts?["left"] is int out1 ? out1 : 0; top = opts?["top"] is int out2 ? out2 : 0; } /// /// Flood-fill an area. /// /// /// /// image.Mutate(x => x.DrawFlood(ink, x, y, out var left, out var top, out var width, test: Image, equal: bool)); /// /// /// Color for pixels. /// DrawFlood start point. /// DrawFlood start point. /// Left edge of modified area. /// Top edge of modified area. /// Width of modified area. /// Test pixels in this image. /// DrawFlood while equal to edge. public void DrawFlood(double[] ink, int x, int y, out int left, out int top, out int width, Image test = null, bool? equal = null) { var options = new VOption(); options.AddIfPresent(nameof(test), test); options.AddIfPresent(nameof(equal), equal); options.Add("left", true); options.Add("top", true); options.Add("width", true); var results = this.Call("draw_flood", options, ink, x, y) as object[]; var opts = results?[1] as VOption; left = opts?["left"] is int out1 ? out1 : 0; top = opts?["top"] is int out2 ? out2 : 0; width = opts?["width"] is int out3 ? out3 : 0; } /// /// Flood-fill an area. /// /// /// /// image.Mutate(x => x.DrawFlood(ink, x, y, out var left, out var top, out var width, out var height, test: Image, equal: bool)); /// /// /// Color for pixels. /// DrawFlood start point. /// DrawFlood start point. /// Left edge of modified area. /// Top edge of modified area. /// Width of modified area. /// Height of modified area. /// Test pixels in this image. /// DrawFlood while equal to edge. public void DrawFlood(double[] ink, int x, int y, out int left, out int top, out int width, out int height, Image test = null, bool? equal = null) { var options = new VOption(); options.AddIfPresent(nameof(test), test); options.AddIfPresent(nameof(equal), equal); options.Add("left", true); options.Add("top", true); options.Add("width", true); options.Add("height", true); var results = this.Call("draw_flood", options, ink, x, y) as object[]; var opts = results?[1] as VOption; left = opts?["left"] is int out1 ? out1 : 0; top = opts?["top"] is int out2 ? out2 : 0; width = opts?["width"] is int out3 ? out3 : 0; height = opts?["height"] is int out4 ? out4 : 0; } /// /// Paint an image into another image. /// /// /// /// image.Mutate(x => x.DrawImage(sub, x, y, mode: Enums.CombineMode)); /// /// /// Sub-image to insert into main image. /// Draw image here. /// Draw image here. /// Combining mode. public void DrawImage(Image sub, int x, int y, Enums.CombineMode? mode = null) { var options = new VOption(); options.AddIfPresent(nameof(mode), mode); this.Call("draw_image", options, sub, x, y); } /// /// Draw a line on an image. /// /// /// /// image.Mutate(x => x.DrawLine(ink, x1, y1, x2, y2)); /// /// /// Color for pixels. /// Start of draw_line. /// Start of draw_line. /// End of draw_line. /// End of draw_line. public void DrawLine(double[] ink, int x1, int y1, int x2, int y2) { this.Call("draw_line", ink, x1, y1, x2, y2); } /// /// Draw a mask on an image. /// /// /// /// image.Mutate(x => x.DrawMask(ink, mask, x, y)); /// /// /// Color for pixels. /// Mask of pixels to draw. /// Draw mask here. /// Draw mask here. public void DrawMask(double[] ink, Image mask, int x, int y) { this.Call("draw_mask", ink, mask, x, y); } /// /// Paint a rectangle on an image. /// /// /// /// image.Mutate(x => x.DrawRect(ink, left, top, width, height, fill: bool)); /// /// /// Color for pixels. /// Rect to fill. /// Rect to fill. /// Rect to fill. /// Rect to fill. /// Draw a solid object. public void DrawRect(double[] ink, int left, int top, int width, int height, bool? fill = null) { var options = new VOption(); options.AddIfPresent(nameof(fill), fill); this.Call("draw_rect", options, ink, left, top, width, height); } /// /// Blur a rectangle on an image. /// /// /// /// image.Mutate(x => x.DrawSmudge(left, top, width, height)); /// /// /// Rect to fill. /// Rect to fill. /// Rect to fill. /// Rect to fill. public void DrawSmudge(int left, int top, int width, int height) { this.Call("draw_smudge", left, top, width, height); } #endregion }