Lines Matching defs:curve
247 // given a line, see if the opposite curve's convex hull is all on one side
295 // If the curve's control point in its original position is on one side of a compared line,
302 // This should support all curve types, but only bug that requires this has lines
354 // compute the perpendicular to the endpoints and see where it intersects the opposite curve
517 // if the curve is a line, then the line and the ray intersect only at their crossing
552 // If this point is on the curve, it should have been detected earlier by ordinary
553 // curve intersection. This may be hard to determine in general, but for lines,
580 const SkDCurve& curve = index ? rh->fPart.fCurve : this->fPart.fCurve;
583 minX = std::min(minX, curve[idx2].fX);
584 minY = std::min(minY, curve[idx2].fY);
585 maxX = std::max(maxX, curve[idx2].fX);
586 maxY = std::max(maxY, curve[idx2].fY);
595 // curve causes the cross product of any control point or end point to change
596 // sign with regard to the opposite curve's hull, treat the curves as parallel.
603 // see if original curve is on one side of hull; translated is on the other
623 const SkDCurve& curve = sIndex ? rh->fPart.fCurve : this->fPart.fCurve;
626 SkDVector mid = segment.dPtAtT(tStart + (sCeptT - tStart) / 2) - curve[0];
665 const SkDCurve& curve = rh->fPart.fCurve;
668 minX = std::min(minX, curve[idx2].fX);
669 minY = std::min(minY, curve[idx2].fY);
670 maxX = std::max(maxX, curve[idx2].fX);
671 maxY = std::max(maxY, curve[idx2].fY);
981 SkDEBUGCODE(fPart.fCurve.fVerb = segment->verb()); // set the curve type for real