Home | History | Annotate | Download | only in utils

Lines Matching refs:phase

16 static SkScalar find_first_interval(const SkScalar intervals[], SkScalar phase,
19 if (phase > intervals[i]) {
20 phase -= intervals[i];
23 return intervals[i] - phase;
26 // If we get here, phase "appears" to be larger than our length. This
34 void SkDashPath::CalcDashParameters(SkScalar phase, const SkScalar intervals[], int32_t count,
44 if ((len > 0) && SkScalarIsFinite(phase) && SkScalarIsFinite(len)) {
46 // Adjust phase to be between 0 and len, "flipping" phase if negative.
47 // e.g., if len is 100, then phase of -20 (or -120) is equivalent to 80
49 if (phase < 0) {
50 phase = -phase;
51 if (phase > len) {
52 phase = SkScalarMod(phase, len);
54 phase = len - phase;
56 // Due to finite precision, it's possible that phase == len,
57 // even after the subtract (if len >>> phase), so fix that here.
59 SkASSERT(phase <= len);
60 if (phase == len) {
61 phase = 0;
63 } else if (phase >= len) {
64 phase = SkScalarMod(phase, len);
66 *adjustedPhase = phase;
68 SkASSERT(phase >= 0 && phase < len);
70 *initialDashLength = find_first_interval(intervals, phase,
129 // right of the bounds (keeping our new line "in phase" with the dash,