Lines Matching defs:a_

55         rgba(double r_, double g_, double b_, double a_=1.0) :
56 r(r_), g(g_), b(b_), a(a_) {}
59 rgba(const rgba& c, double a_) : r(c.r), g(c.g), b(c.b), a(a_) {}
75 const rgba& opacity(double a_)
77 if(a_ < 0.0) a_ = 0.0;
78 if(a_ > 1.0) a_ = 1.0;
79 a = a_;
99 const rgba& premultiply(double a_)
101 if(a <= 0.0 || a_ <= 0.0)
106 a_ /= a;
107 r *= a_;
108 g *= a_;
109 b *= a_;
110 a = a_;
122 double a_ = 1.0 / a;
123 r *= a_;
124 g *= a_;
125 b *= a_;
246 rgba8(unsigned r_, unsigned g_, unsigned b_, unsigned a_=base_mask) :
250 a(value_type(a_)) {}
253 rgba8(const rgba& c, double a_) :
257 a((value_type)uround(a_ * double(base_mask))) {}
260 rgba8(const self_type& c, unsigned a_) :
261 r(c.r), g(c.g), b(c.b), a(value_type(a_)) {}
284 const self_type& opacity(double a_)
286 if(a_ < 0.0) a_ = 0.0;
287 if(a_ > 1.0) a_ = 1.0;
288 a = (value_type)uround(a_ * double(base_mask));
314 AGG_INLINE const self_type& premultiply(unsigned a_)
316 if(a == base_mask && a_ >= base_mask) return *this;
317 if(a == 0 || a_ == 0)
322 calc_type r_ = (calc_type(r) * a_) / a;
323 calc_type g_ = (calc_type(g) * a_) / a;
324 calc_type b_ = (calc_type(b) * a_) / a;
325 r = value_type((r_ > a_) ? a_ : r_);
326 g = value_type((g_ > a_) ? a_ : g_);
327 b = value_type((b_ > a_) ? a_ : b_);
328 a = value_type(a_);
494 rgba16(unsigned r_, unsigned g_, unsigned b_, unsigned a_=base_mask) :
498 a(value_type(a_)) {}
501 rgba16(const self_type& c, unsigned a_) :
502 r(c.r), g(c.g), b(c.b), a(value_type(a_)) {}
512 rgba16(const rgba& c, double a_) :
516 a((value_type)uround(a_ * double(base_mask))) {}
526 rgba16(const rgba8& c, unsigned a_) :
530 a(value_type(( a_ << 8) | c.a)) {}
546 AGG_INLINE const self_type& opacity(double a_)
548 if(a_ < 0.0) a_ = 0.0;
549 if(a_ > 1.0) a_ = 1.0;
550 a = (value_type)uround(a_ * double(base_mask));
576 AGG_INLINE const self_type& premultiply(unsigned a_)
578 if(a == base_mask && a_ >= base_mask) return *this;
579 if(a == 0 || a_ == 0)
584 calc_type r_ = (calc_type(r) * a_) / a;
585 calc_type g_ = (calc_type(g) * a_) / a;
586 calc_type b_ = (calc_type(b) * a_) / a;
587 r = value_type((r_ > a_) ? a_ : r_);
588 g = value_type((g_ > a_) ? a_ : g_);
589 b = value_type((b_ > a_) ? a_ : b_);
590 a = value_type(a_);