Lines Matching refs:bounds
28 // without clipping (beyond the automatic device bounds clip).
52 * Compute a conservative pixel bounds restricted to the given render target dimensions.
53 * The returned bounds represent the limits of pixels that can be drawn; anything outside of the
54 * bounds will be entirely clipped out.
61 * the draw will enable HW AA or uses the stencil buffer. On input 'bounds' is a conservative
62 * bounds of the draw that is to be clipped. If kClipped or kUnclipped is returned, the 'bounds'
63 * will have been updated to be contained within the clip bounds (or the device's, for wide-open
64 * clips). If kNoDraw is returned, 'bounds' and the applied clip are in an undetermined state
68 GrAppliedClip*, SkRect* bounds) const = 0;
71 * Perform preliminary, conservative analysis on the draw bounds as if it were provided to
82 * When set, 'result.fRRect' will intersect with the render target bounds but may extend
83 * beyond it. If the render target bounds are the only clip effect on the draw, this is reported
84 * as kUnclipped and not as a degenerate rrect that matches the bounds.
106 * For non-AA bounds edges, an edge value between 0.45 and 0.55 will round in or round out
112 * Returns true if the given draw bounds count as entirely inside the clip.
115 * @param drawBounds device-space bounds of the query region.
122 * Returns true if the given draw bounds count as entirely outside the clip.
125 * @param drawBounds device-space bounds of the query region.
136 * contained in the analytic 'bounds', using the 'aa' method, will only have non-zero
137 * coverage for pixels inside the returned bounds. Pixels outside the bounds will either
142 * Returns the largest integer pixel bounding box such that were 'bounds' to be rendered as
143 * a solid fill using 'aa', every pixel in the returned bounds will have full coverage.
153 * Convert the analytic bounds of a shape into an integer pixel bounds, where the given aa type
154 * is used when the shape is rendered. The bounds mode can be used to query exterior or interior
155 * pixel boundaries. Interior bounds only make sense when its know that the analytic bounds
159 * center outside of these bounds but will evaluate to 0 coverage. This is visually acceptable,
162 static SkIRect GetPixelIBounds(const SkRect& bounds, GrAA aa,
175 if (bounds.isEmpty()) {
180 return SkIRect::MakeLTRB(roundLow(bounds.fLeft), roundLow(bounds.fTop),
181 roundHigh(bounds.fRight), roundHigh(bounds.fBottom));
183 return SkIRect::MakeLTRB(roundHigh(bounds.fLeft), roundHigh(bounds.fTop),
184 roundLow(bounds.fRight), roundLow(bounds.fBottom));
208 * the clip. On input 'bounds' is a conservative bounds of the draw that is to be clipped. After
209 * return 'bounds' has been intersected with a conservative bounds of the clip.
211 virtual Effect apply(GrAppliedHardClip* out, SkIRect* bounds) const = 0;
219 SkRect* bounds) const final {
220 SkIRect pixelBounds = GetPixelIBounds(*bounds, GrAA(aa != GrAAType::kNone));
222 bounds->intersect(SkRect::Make(pixelBounds));