Lines Matching defs:quad
21 // Resolve disagreements between the overall requested AA type and the per-edge quad AA flags.
24 const GrQuad& quad, GrAAType* outAAtype, GrQuadAAFlags* outEdgeFlags);
27 * Clip the device vertices of 'quad' to be in front of the W = 0 plane (w/in epsilon). The
29 * of clipped quads that need to be drawn: 0 if 'quad' was entirely behind the plane, 1 if
30 * 'quad' did not need to be clipped or if 2 or 3 vertices were clipped, or 2 if 'quad' had one
31 * vertex clipped (producing a pentagonal shape spanned by 'quad' and 'extraVertices').
33 int ClipToW0(DrawQuad* quad, DrawQuad* extraVertices);
36 * Crops quad to the provided device-space axis-aligned rectangle. If the intersection of this
37 * quad (projected) and cropRect results in a quadrilateral, this returns true. If not, this
38 * quad may be updated to be a smaller quad of the same type such that its intersection with
39 * cropRect is visually the same. This function assumes that the 'quad' coordinates are finite.
43 * updated device coordinates of this quad.
45 * If 'computeLocal' is false, the local coordinates in 'quad' will not be modified.
47 bool CropToRect(const SkRect& cropRect, GrAA cropAA, DrawQuad* quad, bool computeLocal=true);
49 inline void Outset(const skvx::Vec<4, float>& edgeDistances, GrQuad* quad);
51 bool WillUseHairline(const GrQuad& quad, GrAAType aaType, GrQuadAAFlags edgeFlags);
69 // original quad.
71 // Note: the edge distances are in device pixel units, so after rendering the new quad
72 // edge's shortest distance to the original quad's edge would be equal to provided edge dist
83 // Compute the edge equations of the original device space quad passed to 'reset()'. The
85 // a positive distance indicates the interior of the quad. Edges are ordered L, B, T, R,
91 // Compute the edge lengths of the original device space quad passed to 'reset()'. The
95 // Determine if the original device space quad has vertices closer than 1px to its opposing
102 // pertaining to the edge vectors of the input quad, projected into 2D device coordinates.
104 // for the projected corners of the quad.
109 // Normalized edge vectors of the device space quad, ordered L, B, T, R
112 // Reciprocal of edge length of the device space quad, i.e. 1 / sqrt(dx*dx + dy*dy)
123 // a * x + b * y + c = 0; positive distance is inside the quad; ordered LBTR.
135 // of effective vertices in the degenerate quad.
142 // Positive edge distances to move each edge of the quad. These distances represent the
147 // The quad may be degenerate because of the original geometry (near colinear edges), or
159 // U, V, and R coordinates representing local quad.
220 void GrQuadUtils::Outset(const skvx::Vec<4, float>& edgeDistances, GrQuad* quad) {
222 outsetter.reset(*quad, nullptr);
223 outsetter.outset(edgeDistances, quad, nullptr);