diff options
Diffstat (limited to 'vendor/golang.org/x/image/draw')
-rw-r--r-- | vendor/golang.org/x/image/draw/draw.go | 42 | ||||
-rw-r--r-- | vendor/golang.org/x/image/draw/gen.go | 2 | ||||
-rw-r--r-- | vendor/golang.org/x/image/draw/go1_8.go | 49 | ||||
-rw-r--r-- | vendor/golang.org/x/image/draw/go1_9.go | 57 | ||||
-rw-r--r-- | vendor/golang.org/x/image/draw/impl.go | 96 | ||||
-rw-r--r-- | vendor/golang.org/x/image/draw/stdlib_test.go | 6 |
6 files changed, 161 insertions, 91 deletions
diff --git a/vendor/golang.org/x/image/draw/draw.go b/vendor/golang.org/x/image/draw/draw.go index b92e3c7f9..dfaa7fc55 100644 --- a/vendor/golang.org/x/image/draw/draw.go +++ b/vendor/golang.org/x/image/draw/draw.go @@ -11,12 +11,12 @@ // package in the standard library. package draw -// This file just contains the API exported by the image/draw package in the -// standard library. Other files in this package provide additional features. +// This file, and the go1_*.go files, just contains the API exported by the +// image/draw package in the standard library. Other files in this package +// provide additional features. import ( "image" - "image/color" "image/draw" ) @@ -32,13 +32,6 @@ func DrawMask(dst Image, r image.Rectangle, src image.Image, sp image.Point, mas draw.DrawMask(dst, r, src, sp, mask, mp, draw.Op(op)) } -// Drawer contains the Draw method. -type Drawer interface { - // Draw aligns r.Min in dst with sp in src and then replaces the - // rectangle r in dst with the result of drawing src on dst. - Draw(dst Image, r image.Rectangle, src image.Image, sp image.Point) -} - // FloydSteinberg is a Drawer that is the Src Op with Floyd-Steinberg error // diffusion. var FloydSteinberg Drawer = floydSteinberg{} @@ -48,32 +41,3 @@ type floydSteinberg struct{} func (floydSteinberg) Draw(dst Image, r image.Rectangle, src image.Image, sp image.Point) { draw.FloydSteinberg.Draw(dst, r, src, sp) } - -// Image is an image.Image with a Set method to change a single pixel. -type Image interface { - image.Image - Set(x, y int, c color.Color) -} - -// Op is a Porter-Duff compositing operator. -type Op int - -const ( - // Over specifies ``(src in mask) over dst''. - Over Op = Op(draw.Over) - // Src specifies ``src in mask''. - Src Op = Op(draw.Src) -) - -// Draw implements the Drawer interface by calling the Draw function with -// this Op. -func (op Op) Draw(dst Image, r image.Rectangle, src image.Image, sp image.Point) { - (draw.Op(op)).Draw(dst, r, src, sp) -} - -// Quantizer produces a palette for an image. -type Quantizer interface { - // Quantize appends up to cap(p) - len(p) colors to p and returns the - // updated palette suitable for converting m to a paletted image. - Quantize(p color.Palette, m image.Image) color.Palette -} diff --git a/vendor/golang.org/x/image/draw/gen.go b/vendor/golang.org/x/image/draw/gen.go index 0fed47437..65a712350 100644 --- a/vendor/golang.org/x/image/draw/gen.go +++ b/vendor/golang.org/x/image/draw/gen.go @@ -804,7 +804,7 @@ func cOffset(x, y, sratio string) string { func ycbcrToRGB(lhs, tmp string) string { s := ` // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - $yy1 := int(src.Y[$i]) * 0x10100 + $yy1 := int(src.Y[$i]) * 0x10101 $cb1 := int(src.Cb[$j]) - 128 $cr1 := int(src.Cr[$j]) - 128 $r@ := ($yy1 + 91881*$cr1) >> 8 diff --git a/vendor/golang.org/x/image/draw/go1_8.go b/vendor/golang.org/x/image/draw/go1_8.go new file mode 100644 index 000000000..ec192b717 --- /dev/null +++ b/vendor/golang.org/x/image/draw/go1_8.go @@ -0,0 +1,49 @@ +// Copyright 2015 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +// +build !go1.9,!go1.8.typealias + +package draw + +import ( + "image" + "image/color" + "image/draw" +) + +// Drawer contains the Draw method. +type Drawer interface { + // Draw aligns r.Min in dst with sp in src and then replaces the + // rectangle r in dst with the result of drawing src on dst. + Draw(dst Image, r image.Rectangle, src image.Image, sp image.Point) +} + +// Image is an image.Image with a Set method to change a single pixel. +type Image interface { + image.Image + Set(x, y int, c color.Color) +} + +// Op is a Porter-Duff compositing operator. +type Op int + +const ( + // Over specifies ``(src in mask) over dst''. + Over Op = Op(draw.Over) + // Src specifies ``src in mask''. + Src Op = Op(draw.Src) +) + +// Draw implements the Drawer interface by calling the Draw function with +// this Op. +func (op Op) Draw(dst Image, r image.Rectangle, src image.Image, sp image.Point) { + (draw.Op(op)).Draw(dst, r, src, sp) +} + +// Quantizer produces a palette for an image. +type Quantizer interface { + // Quantize appends up to cap(p) - len(p) colors to p and returns the + // updated palette suitable for converting m to a paletted image. + Quantize(p color.Palette, m image.Image) color.Palette +} diff --git a/vendor/golang.org/x/image/draw/go1_9.go b/vendor/golang.org/x/image/draw/go1_9.go new file mode 100644 index 000000000..fc548e947 --- /dev/null +++ b/vendor/golang.org/x/image/draw/go1_9.go @@ -0,0 +1,57 @@ +// Copyright 2016 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +// +build go1.9 go1.8.typealias + +package draw + +import ( + "image/draw" +) + +// We use type aliases (new in Go 1.9) for the exported names from the standard +// library's image/draw package. This is not merely syntactic sugar for +// +// type Drawer draw.Drawer +// +// as aliasing means that the types in this package, such as draw.Image and +// draw.Op, are identical to the corresponding draw.Image and draw.Op types in +// the standard library. In comparison, prior to Go 1.9, the code in go1_8.go +// defines new types that mimic the old but are different types. +// +// The package documentation, in draw.go, explicitly gives the intent of this +// package: +// +// This package is a superset of and a drop-in replacement for the +// image/draw package in the standard library. +// +// Drop-in replacement means that I can replace all of my "image/draw" imports +// with "golang.org/x/image/draw", to access additional features in this +// package, and no further changes are required. That's mostly true, but not +// completely true unless we use type aliases. +// +// Without type aliases, users might need to import both "image/draw" and +// "golang.org/x/image/draw" in order to convert from two conceptually +// equivalent but different (from the compiler's point of view) types, such as +// from one draw.Op type to another draw.Op type, to satisfy some other +// interface or function signature. + +// Drawer contains the Draw method. +type Drawer = draw.Drawer + +// Image is an image.Image with a Set method to change a single pixel. +type Image = draw.Image + +// Op is a Porter-Duff compositing operator. +type Op = draw.Op + +const ( + // Over specifies ``(src in mask) over dst''. + Over Op = draw.Over + // Src specifies ``src in mask''. + Src Op = draw.Src +) + +// Quantizer produces a palette for an image. +type Quantizer = draw.Quantizer diff --git a/vendor/golang.org/x/image/draw/impl.go b/vendor/golang.org/x/image/draw/impl.go index d6484d734..637887be6 100644 --- a/vendor/golang.org/x/image/draw/impl.go +++ b/vendor/golang.org/x/image/draw/impl.go @@ -343,7 +343,7 @@ func (nnInterpolator) scale_RGBA_YCbCr444_Src(dst *image.RGBA, dr, adr image.Rec pj := (sr.Min.Y+int(sy)-src.Rect.Min.Y)*src.CStride + (sr.Min.X + int(sx) - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - pyy1 := int(src.Y[pi]) * 0x10100 + pyy1 := int(src.Y[pi]) * 0x10101 pcb1 := int(src.Cb[pj]) - 128 pcr1 := int(src.Cr[pj]) - 128 pr := (pyy1 + 91881*pcr1) >> 8 @@ -386,7 +386,7 @@ func (nnInterpolator) scale_RGBA_YCbCr422_Src(dst *image.RGBA, dr, adr image.Rec pj := (sr.Min.Y+int(sy)-src.Rect.Min.Y)*src.CStride + ((sr.Min.X+int(sx))/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - pyy1 := int(src.Y[pi]) * 0x10100 + pyy1 := int(src.Y[pi]) * 0x10101 pcb1 := int(src.Cb[pj]) - 128 pcr1 := int(src.Cr[pj]) - 128 pr := (pyy1 + 91881*pcr1) >> 8 @@ -429,7 +429,7 @@ func (nnInterpolator) scale_RGBA_YCbCr420_Src(dst *image.RGBA, dr, adr image.Rec pj := ((sr.Min.Y+int(sy))/2-src.Rect.Min.Y/2)*src.CStride + ((sr.Min.X+int(sx))/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - pyy1 := int(src.Y[pi]) * 0x10100 + pyy1 := int(src.Y[pi]) * 0x10101 pcb1 := int(src.Cb[pj]) - 128 pcr1 := int(src.Cr[pj]) - 128 pr := (pyy1 + 91881*pcr1) >> 8 @@ -472,7 +472,7 @@ func (nnInterpolator) scale_RGBA_YCbCr440_Src(dst *image.RGBA, dr, adr image.Rec pj := ((sr.Min.Y+int(sy))/2-src.Rect.Min.Y/2)*src.CStride + (sr.Min.X + int(sx) - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - pyy1 := int(src.Y[pi]) * 0x10100 + pyy1 := int(src.Y[pi]) * 0x10101 pcb1 := int(src.Cb[pj]) - 128 pcr1 := int(src.Cr[pj]) - 128 pr := (pyy1 + 91881*pcr1) >> 8 @@ -759,7 +759,7 @@ func (nnInterpolator) transform_RGBA_YCbCr444_Src(dst *image.RGBA, dr, adr image pj := (sy0-src.Rect.Min.Y)*src.CStride + (sx0 - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - pyy1 := int(src.Y[pi]) * 0x10100 + pyy1 := int(src.Y[pi]) * 0x10101 pcb1 := int(src.Cb[pj]) - 128 pcr1 := int(src.Cr[pj]) - 128 pr := (pyy1 + 91881*pcr1) >> 8 @@ -803,7 +803,7 @@ func (nnInterpolator) transform_RGBA_YCbCr422_Src(dst *image.RGBA, dr, adr image pj := (sy0-src.Rect.Min.Y)*src.CStride + ((sx0)/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - pyy1 := int(src.Y[pi]) * 0x10100 + pyy1 := int(src.Y[pi]) * 0x10101 pcb1 := int(src.Cb[pj]) - 128 pcr1 := int(src.Cr[pj]) - 128 pr := (pyy1 + 91881*pcr1) >> 8 @@ -847,7 +847,7 @@ func (nnInterpolator) transform_RGBA_YCbCr420_Src(dst *image.RGBA, dr, adr image pj := ((sy0)/2-src.Rect.Min.Y/2)*src.CStride + ((sx0)/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - pyy1 := int(src.Y[pi]) * 0x10100 + pyy1 := int(src.Y[pi]) * 0x10101 pcb1 := int(src.Cb[pj]) - 128 pcr1 := int(src.Cr[pj]) - 128 pr := (pyy1 + 91881*pcr1) >> 8 @@ -891,7 +891,7 @@ func (nnInterpolator) transform_RGBA_YCbCr440_Src(dst *image.RGBA, dr, adr image pj := ((sy0)/2-src.Rect.Min.Y/2)*src.CStride + (sx0 - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - pyy1 := int(src.Y[pi]) * 0x10100 + pyy1 := int(src.Y[pi]) * 0x10101 pcb1 := int(src.Cb[pj]) - 128 pcr1 := int(src.Cr[pj]) - 128 pr := (pyy1 + 91881*pcr1) >> 8 @@ -1756,7 +1756,7 @@ func (ablInterpolator) scale_RGBA_YCbCr444_Src(dst *image.RGBA, dr, adr image.Re s00j := (sr.Min.Y+int(sy0)-src.Rect.Min.Y)*src.CStride + (sr.Min.X + int(sx0) - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s00yy1 := int(src.Y[s00i]) * 0x10100 + s00yy1 := int(src.Y[s00i]) * 0x10101 s00cb1 := int(src.Cb[s00j]) - 128 s00cr1 := int(src.Cr[s00j]) - 128 s00ru := (s00yy1 + 91881*s00cr1) >> 8 @@ -1785,7 +1785,7 @@ func (ablInterpolator) scale_RGBA_YCbCr444_Src(dst *image.RGBA, dr, adr image.Re s10j := (sr.Min.Y+int(sy0)-src.Rect.Min.Y)*src.CStride + (sr.Min.X + int(sx1) - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s10yy1 := int(src.Y[s10i]) * 0x10100 + s10yy1 := int(src.Y[s10i]) * 0x10101 s10cb1 := int(src.Cb[s10j]) - 128 s10cr1 := int(src.Cr[s10j]) - 128 s10ru := (s10yy1 + 91881*s10cr1) >> 8 @@ -1817,7 +1817,7 @@ func (ablInterpolator) scale_RGBA_YCbCr444_Src(dst *image.RGBA, dr, adr image.Re s01j := (sr.Min.Y+int(sy1)-src.Rect.Min.Y)*src.CStride + (sr.Min.X + int(sx0) - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s01yy1 := int(src.Y[s01i]) * 0x10100 + s01yy1 := int(src.Y[s01i]) * 0x10101 s01cb1 := int(src.Cb[s01j]) - 128 s01cr1 := int(src.Cr[s01j]) - 128 s01ru := (s01yy1 + 91881*s01cr1) >> 8 @@ -1846,7 +1846,7 @@ func (ablInterpolator) scale_RGBA_YCbCr444_Src(dst *image.RGBA, dr, adr image.Re s11j := (sr.Min.Y+int(sy1)-src.Rect.Min.Y)*src.CStride + (sr.Min.X + int(sx1) - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s11yy1 := int(src.Y[s11i]) * 0x10100 + s11yy1 := int(src.Y[s11i]) * 0x10101 s11cb1 := int(src.Cb[s11j]) - 128 s11cr1 := int(src.Cr[s11j]) - 128 s11ru := (s11yy1 + 91881*s11cr1) >> 8 @@ -1931,7 +1931,7 @@ func (ablInterpolator) scale_RGBA_YCbCr422_Src(dst *image.RGBA, dr, adr image.Re s00j := (sr.Min.Y+int(sy0)-src.Rect.Min.Y)*src.CStride + ((sr.Min.X+int(sx0))/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s00yy1 := int(src.Y[s00i]) * 0x10100 + s00yy1 := int(src.Y[s00i]) * 0x10101 s00cb1 := int(src.Cb[s00j]) - 128 s00cr1 := int(src.Cr[s00j]) - 128 s00ru := (s00yy1 + 91881*s00cr1) >> 8 @@ -1960,7 +1960,7 @@ func (ablInterpolator) scale_RGBA_YCbCr422_Src(dst *image.RGBA, dr, adr image.Re s10j := (sr.Min.Y+int(sy0)-src.Rect.Min.Y)*src.CStride + ((sr.Min.X+int(sx1))/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s10yy1 := int(src.Y[s10i]) * 0x10100 + s10yy1 := int(src.Y[s10i]) * 0x10101 s10cb1 := int(src.Cb[s10j]) - 128 s10cr1 := int(src.Cr[s10j]) - 128 s10ru := (s10yy1 + 91881*s10cr1) >> 8 @@ -1992,7 +1992,7 @@ func (ablInterpolator) scale_RGBA_YCbCr422_Src(dst *image.RGBA, dr, adr image.Re s01j := (sr.Min.Y+int(sy1)-src.Rect.Min.Y)*src.CStride + ((sr.Min.X+int(sx0))/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s01yy1 := int(src.Y[s01i]) * 0x10100 + s01yy1 := int(src.Y[s01i]) * 0x10101 s01cb1 := int(src.Cb[s01j]) - 128 s01cr1 := int(src.Cr[s01j]) - 128 s01ru := (s01yy1 + 91881*s01cr1) >> 8 @@ -2021,7 +2021,7 @@ func (ablInterpolator) scale_RGBA_YCbCr422_Src(dst *image.RGBA, dr, adr image.Re s11j := (sr.Min.Y+int(sy1)-src.Rect.Min.Y)*src.CStride + ((sr.Min.X+int(sx1))/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s11yy1 := int(src.Y[s11i]) * 0x10100 + s11yy1 := int(src.Y[s11i]) * 0x10101 s11cb1 := int(src.Cb[s11j]) - 128 s11cr1 := int(src.Cr[s11j]) - 128 s11ru := (s11yy1 + 91881*s11cr1) >> 8 @@ -2106,7 +2106,7 @@ func (ablInterpolator) scale_RGBA_YCbCr420_Src(dst *image.RGBA, dr, adr image.Re s00j := ((sr.Min.Y+int(sy0))/2-src.Rect.Min.Y/2)*src.CStride + ((sr.Min.X+int(sx0))/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s00yy1 := int(src.Y[s00i]) * 0x10100 + s00yy1 := int(src.Y[s00i]) * 0x10101 s00cb1 := int(src.Cb[s00j]) - 128 s00cr1 := int(src.Cr[s00j]) - 128 s00ru := (s00yy1 + 91881*s00cr1) >> 8 @@ -2135,7 +2135,7 @@ func (ablInterpolator) scale_RGBA_YCbCr420_Src(dst *image.RGBA, dr, adr image.Re s10j := ((sr.Min.Y+int(sy0))/2-src.Rect.Min.Y/2)*src.CStride + ((sr.Min.X+int(sx1))/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s10yy1 := int(src.Y[s10i]) * 0x10100 + s10yy1 := int(src.Y[s10i]) * 0x10101 s10cb1 := int(src.Cb[s10j]) - 128 s10cr1 := int(src.Cr[s10j]) - 128 s10ru := (s10yy1 + 91881*s10cr1) >> 8 @@ -2167,7 +2167,7 @@ func (ablInterpolator) scale_RGBA_YCbCr420_Src(dst *image.RGBA, dr, adr image.Re s01j := ((sr.Min.Y+int(sy1))/2-src.Rect.Min.Y/2)*src.CStride + ((sr.Min.X+int(sx0))/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s01yy1 := int(src.Y[s01i]) * 0x10100 + s01yy1 := int(src.Y[s01i]) * 0x10101 s01cb1 := int(src.Cb[s01j]) - 128 s01cr1 := int(src.Cr[s01j]) - 128 s01ru := (s01yy1 + 91881*s01cr1) >> 8 @@ -2196,7 +2196,7 @@ func (ablInterpolator) scale_RGBA_YCbCr420_Src(dst *image.RGBA, dr, adr image.Re s11j := ((sr.Min.Y+int(sy1))/2-src.Rect.Min.Y/2)*src.CStride + ((sr.Min.X+int(sx1))/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s11yy1 := int(src.Y[s11i]) * 0x10100 + s11yy1 := int(src.Y[s11i]) * 0x10101 s11cb1 := int(src.Cb[s11j]) - 128 s11cr1 := int(src.Cr[s11j]) - 128 s11ru := (s11yy1 + 91881*s11cr1) >> 8 @@ -2281,7 +2281,7 @@ func (ablInterpolator) scale_RGBA_YCbCr440_Src(dst *image.RGBA, dr, adr image.Re s00j := ((sr.Min.Y+int(sy0))/2-src.Rect.Min.Y/2)*src.CStride + (sr.Min.X + int(sx0) - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s00yy1 := int(src.Y[s00i]) * 0x10100 + s00yy1 := int(src.Y[s00i]) * 0x10101 s00cb1 := int(src.Cb[s00j]) - 128 s00cr1 := int(src.Cr[s00j]) - 128 s00ru := (s00yy1 + 91881*s00cr1) >> 8 @@ -2310,7 +2310,7 @@ func (ablInterpolator) scale_RGBA_YCbCr440_Src(dst *image.RGBA, dr, adr image.Re s10j := ((sr.Min.Y+int(sy0))/2-src.Rect.Min.Y/2)*src.CStride + (sr.Min.X + int(sx1) - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s10yy1 := int(src.Y[s10i]) * 0x10100 + s10yy1 := int(src.Y[s10i]) * 0x10101 s10cb1 := int(src.Cb[s10j]) - 128 s10cr1 := int(src.Cr[s10j]) - 128 s10ru := (s10yy1 + 91881*s10cr1) >> 8 @@ -2342,7 +2342,7 @@ func (ablInterpolator) scale_RGBA_YCbCr440_Src(dst *image.RGBA, dr, adr image.Re s01j := ((sr.Min.Y+int(sy1))/2-src.Rect.Min.Y/2)*src.CStride + (sr.Min.X + int(sx0) - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s01yy1 := int(src.Y[s01i]) * 0x10100 + s01yy1 := int(src.Y[s01i]) * 0x10101 s01cb1 := int(src.Cb[s01j]) - 128 s01cr1 := int(src.Cr[s01j]) - 128 s01ru := (s01yy1 + 91881*s01cr1) >> 8 @@ -2371,7 +2371,7 @@ func (ablInterpolator) scale_RGBA_YCbCr440_Src(dst *image.RGBA, dr, adr image.Re s11j := ((sr.Min.Y+int(sy1))/2-src.Rect.Min.Y/2)*src.CStride + (sr.Min.X + int(sx1) - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s11yy1 := int(src.Y[s11i]) * 0x10100 + s11yy1 := int(src.Y[s11i]) * 0x10101 s11cb1 := int(src.Cb[s11j]) - 128 s11cr1 := int(src.Cr[s11j]) - 128 s11ru := (s11yy1 + 91881*s11cr1) >> 8 @@ -3345,7 +3345,7 @@ func (ablInterpolator) transform_RGBA_YCbCr444_Src(dst *image.RGBA, dr, adr imag s00j := (sy0-src.Rect.Min.Y)*src.CStride + (sx0 - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s00yy1 := int(src.Y[s00i]) * 0x10100 + s00yy1 := int(src.Y[s00i]) * 0x10101 s00cb1 := int(src.Cb[s00j]) - 128 s00cr1 := int(src.Cr[s00j]) - 128 s00ru := (s00yy1 + 91881*s00cr1) >> 8 @@ -3374,7 +3374,7 @@ func (ablInterpolator) transform_RGBA_YCbCr444_Src(dst *image.RGBA, dr, adr imag s10j := (sy0-src.Rect.Min.Y)*src.CStride + (sx1 - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s10yy1 := int(src.Y[s10i]) * 0x10100 + s10yy1 := int(src.Y[s10i]) * 0x10101 s10cb1 := int(src.Cb[s10j]) - 128 s10cr1 := int(src.Cr[s10j]) - 128 s10ru := (s10yy1 + 91881*s10cr1) >> 8 @@ -3406,7 +3406,7 @@ func (ablInterpolator) transform_RGBA_YCbCr444_Src(dst *image.RGBA, dr, adr imag s01j := (sy1-src.Rect.Min.Y)*src.CStride + (sx0 - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s01yy1 := int(src.Y[s01i]) * 0x10100 + s01yy1 := int(src.Y[s01i]) * 0x10101 s01cb1 := int(src.Cb[s01j]) - 128 s01cr1 := int(src.Cr[s01j]) - 128 s01ru := (s01yy1 + 91881*s01cr1) >> 8 @@ -3435,7 +3435,7 @@ func (ablInterpolator) transform_RGBA_YCbCr444_Src(dst *image.RGBA, dr, adr imag s11j := (sy1-src.Rect.Min.Y)*src.CStride + (sx1 - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s11yy1 := int(src.Y[s11i]) * 0x10100 + s11yy1 := int(src.Y[s11i]) * 0x10101 s11cb1 := int(src.Cb[s11j]) - 128 s11cr1 := int(src.Cr[s11j]) - 128 s11ru := (s11yy1 + 91881*s11cr1) >> 8 @@ -3521,7 +3521,7 @@ func (ablInterpolator) transform_RGBA_YCbCr422_Src(dst *image.RGBA, dr, adr imag s00j := (sy0-src.Rect.Min.Y)*src.CStride + ((sx0)/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s00yy1 := int(src.Y[s00i]) * 0x10100 + s00yy1 := int(src.Y[s00i]) * 0x10101 s00cb1 := int(src.Cb[s00j]) - 128 s00cr1 := int(src.Cr[s00j]) - 128 s00ru := (s00yy1 + 91881*s00cr1) >> 8 @@ -3550,7 +3550,7 @@ func (ablInterpolator) transform_RGBA_YCbCr422_Src(dst *image.RGBA, dr, adr imag s10j := (sy0-src.Rect.Min.Y)*src.CStride + ((sx1)/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s10yy1 := int(src.Y[s10i]) * 0x10100 + s10yy1 := int(src.Y[s10i]) * 0x10101 s10cb1 := int(src.Cb[s10j]) - 128 s10cr1 := int(src.Cr[s10j]) - 128 s10ru := (s10yy1 + 91881*s10cr1) >> 8 @@ -3582,7 +3582,7 @@ func (ablInterpolator) transform_RGBA_YCbCr422_Src(dst *image.RGBA, dr, adr imag s01j := (sy1-src.Rect.Min.Y)*src.CStride + ((sx0)/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s01yy1 := int(src.Y[s01i]) * 0x10100 + s01yy1 := int(src.Y[s01i]) * 0x10101 s01cb1 := int(src.Cb[s01j]) - 128 s01cr1 := int(src.Cr[s01j]) - 128 s01ru := (s01yy1 + 91881*s01cr1) >> 8 @@ -3611,7 +3611,7 @@ func (ablInterpolator) transform_RGBA_YCbCr422_Src(dst *image.RGBA, dr, adr imag s11j := (sy1-src.Rect.Min.Y)*src.CStride + ((sx1)/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s11yy1 := int(src.Y[s11i]) * 0x10100 + s11yy1 := int(src.Y[s11i]) * 0x10101 s11cb1 := int(src.Cb[s11j]) - 128 s11cr1 := int(src.Cr[s11j]) - 128 s11ru := (s11yy1 + 91881*s11cr1) >> 8 @@ -3697,7 +3697,7 @@ func (ablInterpolator) transform_RGBA_YCbCr420_Src(dst *image.RGBA, dr, adr imag s00j := ((sy0)/2-src.Rect.Min.Y/2)*src.CStride + ((sx0)/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s00yy1 := int(src.Y[s00i]) * 0x10100 + s00yy1 := int(src.Y[s00i]) * 0x10101 s00cb1 := int(src.Cb[s00j]) - 128 s00cr1 := int(src.Cr[s00j]) - 128 s00ru := (s00yy1 + 91881*s00cr1) >> 8 @@ -3726,7 +3726,7 @@ func (ablInterpolator) transform_RGBA_YCbCr420_Src(dst *image.RGBA, dr, adr imag s10j := ((sy0)/2-src.Rect.Min.Y/2)*src.CStride + ((sx1)/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s10yy1 := int(src.Y[s10i]) * 0x10100 + s10yy1 := int(src.Y[s10i]) * 0x10101 s10cb1 := int(src.Cb[s10j]) - 128 s10cr1 := int(src.Cr[s10j]) - 128 s10ru := (s10yy1 + 91881*s10cr1) >> 8 @@ -3758,7 +3758,7 @@ func (ablInterpolator) transform_RGBA_YCbCr420_Src(dst *image.RGBA, dr, adr imag s01j := ((sy1)/2-src.Rect.Min.Y/2)*src.CStride + ((sx0)/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s01yy1 := int(src.Y[s01i]) * 0x10100 + s01yy1 := int(src.Y[s01i]) * 0x10101 s01cb1 := int(src.Cb[s01j]) - 128 s01cr1 := int(src.Cr[s01j]) - 128 s01ru := (s01yy1 + 91881*s01cr1) >> 8 @@ -3787,7 +3787,7 @@ func (ablInterpolator) transform_RGBA_YCbCr420_Src(dst *image.RGBA, dr, adr imag s11j := ((sy1)/2-src.Rect.Min.Y/2)*src.CStride + ((sx1)/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s11yy1 := int(src.Y[s11i]) * 0x10100 + s11yy1 := int(src.Y[s11i]) * 0x10101 s11cb1 := int(src.Cb[s11j]) - 128 s11cr1 := int(src.Cr[s11j]) - 128 s11ru := (s11yy1 + 91881*s11cr1) >> 8 @@ -3873,7 +3873,7 @@ func (ablInterpolator) transform_RGBA_YCbCr440_Src(dst *image.RGBA, dr, adr imag s00j := ((sy0)/2-src.Rect.Min.Y/2)*src.CStride + (sx0 - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s00yy1 := int(src.Y[s00i]) * 0x10100 + s00yy1 := int(src.Y[s00i]) * 0x10101 s00cb1 := int(src.Cb[s00j]) - 128 s00cr1 := int(src.Cr[s00j]) - 128 s00ru := (s00yy1 + 91881*s00cr1) >> 8 @@ -3902,7 +3902,7 @@ func (ablInterpolator) transform_RGBA_YCbCr440_Src(dst *image.RGBA, dr, adr imag s10j := ((sy0)/2-src.Rect.Min.Y/2)*src.CStride + (sx1 - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s10yy1 := int(src.Y[s10i]) * 0x10100 + s10yy1 := int(src.Y[s10i]) * 0x10101 s10cb1 := int(src.Cb[s10j]) - 128 s10cr1 := int(src.Cr[s10j]) - 128 s10ru := (s10yy1 + 91881*s10cr1) >> 8 @@ -3934,7 +3934,7 @@ func (ablInterpolator) transform_RGBA_YCbCr440_Src(dst *image.RGBA, dr, adr imag s01j := ((sy1)/2-src.Rect.Min.Y/2)*src.CStride + (sx0 - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s01yy1 := int(src.Y[s01i]) * 0x10100 + s01yy1 := int(src.Y[s01i]) * 0x10101 s01cb1 := int(src.Cb[s01j]) - 128 s01cr1 := int(src.Cr[s01j]) - 128 s01ru := (s01yy1 + 91881*s01cr1) >> 8 @@ -3963,7 +3963,7 @@ func (ablInterpolator) transform_RGBA_YCbCr440_Src(dst *image.RGBA, dr, adr imag s11j := ((sy1)/2-src.Rect.Min.Y/2)*src.CStride + (sx1 - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - s11yy1 := int(src.Y[s11i]) * 0x10100 + s11yy1 := int(src.Y[s11i]) * 0x10101 s11cb1 := int(src.Cb[s11j]) - 128 s11cr1 := int(src.Cr[s11j]) - 128 s11ru := (s11yy1 + 91881*s11cr1) >> 8 @@ -4729,7 +4729,7 @@ func (z *kernelScaler) scaleX_YCbCr444(tmp [][4]float64, src *image.YCbCr, sr im pj := (sr.Min.Y+int(y)-src.Rect.Min.Y)*src.CStride + (sr.Min.X + int(c.coord) - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - pyy1 := int(src.Y[pi]) * 0x10100 + pyy1 := int(src.Y[pi]) * 0x10101 pcb1 := int(src.Cb[pj]) - 128 pcr1 := int(src.Cr[pj]) - 128 pru := (pyy1 + 91881*pcr1) >> 8 @@ -4776,7 +4776,7 @@ func (z *kernelScaler) scaleX_YCbCr422(tmp [][4]float64, src *image.YCbCr, sr im pj := (sr.Min.Y+int(y)-src.Rect.Min.Y)*src.CStride + ((sr.Min.X+int(c.coord))/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - pyy1 := int(src.Y[pi]) * 0x10100 + pyy1 := int(src.Y[pi]) * 0x10101 pcb1 := int(src.Cb[pj]) - 128 pcr1 := int(src.Cr[pj]) - 128 pru := (pyy1 + 91881*pcr1) >> 8 @@ -4823,7 +4823,7 @@ func (z *kernelScaler) scaleX_YCbCr420(tmp [][4]float64, src *image.YCbCr, sr im pj := ((sr.Min.Y+int(y))/2-src.Rect.Min.Y/2)*src.CStride + ((sr.Min.X+int(c.coord))/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - pyy1 := int(src.Y[pi]) * 0x10100 + pyy1 := int(src.Y[pi]) * 0x10101 pcb1 := int(src.Cb[pj]) - 128 pcr1 := int(src.Cr[pj]) - 128 pru := (pyy1 + 91881*pcr1) >> 8 @@ -4870,7 +4870,7 @@ func (z *kernelScaler) scaleX_YCbCr440(tmp [][4]float64, src *image.YCbCr, sr im pj := ((sr.Min.Y+int(y))/2-src.Rect.Min.Y/2)*src.CStride + (sr.Min.X + int(c.coord) - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - pyy1 := int(src.Y[pi]) * 0x10100 + pyy1 := int(src.Y[pi]) * 0x10101 pcb1 := int(src.Cb[pj]) - 128 pcr1 := int(src.Cr[pj]) - 128 pru := (pyy1 + 91881*pcr1) >> 8 @@ -5759,7 +5759,7 @@ func (q *Kernel) transform_RGBA_YCbCr444_Src(dst *image.RGBA, dr, adr image.Rect pj := (ky-src.Rect.Min.Y)*src.CStride + (kx - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - pyy1 := int(src.Y[pi]) * 0x10100 + pyy1 := int(src.Y[pi]) * 0x10101 pcb1 := int(src.Cb[pj]) - 128 pcr1 := int(src.Cr[pj]) - 128 pru := (pyy1 + 91881*pcr1) >> 8 @@ -5883,7 +5883,7 @@ func (q *Kernel) transform_RGBA_YCbCr422_Src(dst *image.RGBA, dr, adr image.Rect pj := (ky-src.Rect.Min.Y)*src.CStride + ((kx)/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - pyy1 := int(src.Y[pi]) * 0x10100 + pyy1 := int(src.Y[pi]) * 0x10101 pcb1 := int(src.Cb[pj]) - 128 pcr1 := int(src.Cr[pj]) - 128 pru := (pyy1 + 91881*pcr1) >> 8 @@ -6007,7 +6007,7 @@ func (q *Kernel) transform_RGBA_YCbCr420_Src(dst *image.RGBA, dr, adr image.Rect pj := ((ky)/2-src.Rect.Min.Y/2)*src.CStride + ((kx)/2 - src.Rect.Min.X/2) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - pyy1 := int(src.Y[pi]) * 0x10100 + pyy1 := int(src.Y[pi]) * 0x10101 pcb1 := int(src.Cb[pj]) - 128 pcr1 := int(src.Cr[pj]) - 128 pru := (pyy1 + 91881*pcr1) >> 8 @@ -6131,7 +6131,7 @@ func (q *Kernel) transform_RGBA_YCbCr440_Src(dst *image.RGBA, dr, adr image.Rect pj := ((ky)/2-src.Rect.Min.Y/2)*src.CStride + (kx - src.Rect.Min.X) // This is an inline version of image/color/ycbcr.go's YCbCr.RGBA method. - pyy1 := int(src.Y[pi]) * 0x10100 + pyy1 := int(src.Y[pi]) * 0x10101 pcb1 := int(src.Cb[pj]) - 128 pcr1 := int(src.Cr[pj]) - 128 pru := (pyy1 + 91881*pcr1) >> 8 diff --git a/vendor/golang.org/x/image/draw/stdlib_test.go b/vendor/golang.org/x/image/draw/stdlib_test.go index c45f78c2e..9015bfd6f 100644 --- a/vendor/golang.org/x/image/draw/stdlib_test.go +++ b/vendor/golang.org/x/image/draw/stdlib_test.go @@ -2,14 +2,14 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -// +build go1.5 +// +build go1.9 package draw // This file contains tests that depend on the exact behavior of the // image/color package in the standard library. The color conversion formula -// from YCbCr to RGBA changed between Go 1.4 and Go 1.5, so this file's tests -// are only enabled for Go 1.5 and above. +// from YCbCr to RGBA changed between Go 1.4 and Go 1.5, and between Go 1.8 and +// Go 1.9, so this file's tests are only enabled for Go 1.9 and above. import ( "bytes" |