Home | History | Annotate | Download | only in gradients

Lines Matching full:interval

31 Interval::Interval(SkPMColor c0, SkScalar p0,
48 Interval::Interval(const Sk4f& c0, const Sk4f& dc,
58 Interval::contains(SkScalar fx) const {
73 // The main job here is to build an interval list. Intervals are a different
81 // It also means that the interval order matches the color stops when dx >= 0,
85 // avoid this if interval storage size becomes a concern.
91 // interpolation space (note: the interval color storage is SkPM4f, but
109 // interval series - then the iterator operates just as in the
150 // synthetic edge interval: -/+inf .. P0)
202 // synthetic edge interval: Pn .. +/-inf
213 const Interval& interval = fIntervals[i];
214 const SkScalar p0 = interval.fP0;
215 const SkScalar p1 = interval.fP1;
216 Sk4f dc = Sk4f::Load(interval.fDc.fVec);
217 Sk4f c = Sk4f::Load(interval.fC0.fVec) + dc * Sk4f(p1 - p0);
224 // To achieve the expected monotonic interval order, we need to
227 // the initial interval buildup.
239 const SkGradientShaderBase::GradientShaderBase4fContext::Interval*
245 // Linear search, using the last scanline interval as a starting point.
260 const Interval* i0 = fIntervals.begin();
261 const Interval* i1 = fIntervals.end() - 1;
267 const Interval* i = i0 + ((i1 - i0) >> 1);