8#ifndef skgpu_graphite_geom_EdgeAAQuad_DEFINED
9#define skgpu_graphite_geom_EdgeAAQuad_DEFINED
40 : fXs{rect.fLeft, rect.fRight, rect.fRight, rect.fLeft}
41 , fYs{rect.fTop, rect.fTop, rect.fBottom, rect.fBottom}
45 : fXs{
skvx::shuffle<0,2,2,0>(rect.ltrb())}
46 , fYs{
skvx::shuffle<1,1,3,3>(rect.ltrb())}
63 return Rect({fXs[0], fYs[0]}, {fXs[2], fYs[2]});
76 bool isRect()
const {
return fIsRect; }
static const int points[]
#define SK_MAKE_BITMASK_OPS(E)
EdgeAAQuad(const Rect &rect, SkEnumBitMask< Flags > edgeFlags)
const skvx::float4 & ys() const
EdgeAAQuad(const SkPoint points[4], SkEnumBitMask< Flags > edgeFlags)
EdgeAAQuad(const SkRect &rect, SkEnumBitMask< Flags > edgeFlags)
const skvx::float4 & xs() const
SkEnumBitMask< Flags > edgeFlags() const
EdgeAAQuad(const skvx::float4 &xs, const skvx::float4 &ys, SkEnumBitMask< Flags > edgeFlags)
static AI Rect LTRB(float4 ltrb)
AI Rect makeSorted() const
AI Rect makeJoin(Rect rect) const