57 #ifndef __PCL_BUILDING_PIXINSIGHT_APPLICATION
106 ForwardDiagonalHatch,
107 BackwardDiagonalHatch,
128 namespace GradientSpreadMode
136 NumberOfGradientSpreadModes
142 #ifndef __PCL_BUILDING_PIXINSIGHT_APPLICATION
144 class PCL_CLASS Bitmap;
165 using style = BrushStyle::value_type;
170 Brush(
RGBA color = 0xff000000, style = BrushStyle::Solid );
253 return Style() == BrushStyle::Solid;
262 return Style() == BrushStyle::Empty;
281 return Style() == BrushStyle::Stipple;
322 void* CloneHandle()
const override;
324 friend class GraphicsContextBase;
325 friend class Graphics;
326 friend class VectorGraphics;
327 friend class GradientBrush;
349 using spread_mode = GradientSpreadMode::value_type;
373 : position(
Range( p, 0.0, 1.0 ) )
432 GradientBrush(
const GradientBrush& x ) : Brush( x )
436 GradientBrush( GradientBrush&& x ) : Brush( std::move( x ) )
481 spread_mode spread = GradientSpreadMode::Pad );
492 spread_mode spread = GradientSpreadMode::Pad );
503 spread_mode spread = GradientSpreadMode::Pad );
531 SetHandle( b.handle );
563 GetParameters( r.
x0, r.
y0, r.
x1, r.
y1 );
612 spread_mode spread = GradientSpreadMode::Pad );
623 spread_mode spread = GradientSpreadMode::Pad );
634 spread_mode spread = GradientSpreadMode::Pad );
662 SetHandle( b.handle );
684 void GetParameters(
double& cx,
double& cy,
double& r,
double& fx,
double& fy )
const;
697 GetParameters( c.
x, c.
y, r, f.
x, f.
y );
775 SetHandle( b.handle );
809 GetParameters( c.
x, c.
y, a );
Client-side interface to a PixInsight Bitmap object.
Client-side interface to a PixInsight Brush object.
virtual bool IsGradient() const
Brush(RGBA color=0xff000000, style=BrushStyle::Solid)
void SetStipple(const Bitmap &)
bool IsTransparent() const
void GetParameters(DPoint &c, double &a) const
ConicalGradientBrush(const DPoint &c, double a, const stop_list &stops=stop_list())
void GetParameters(double &cx, double &cy, double &a) const
ConicalGradientBrush(const Point &c, double a, const stop_list &stops=stop_list())
ConicalGradientBrush(ConicalGradientBrush &&x)
ConicalGradientBrush(double cx, double cy, double a, const stop_list &stops=stop_list())
ConicalGradientBrush(const ConicalGradientBrush &b)
A generic point in the two-dimensional space.
component x
Abscissa (horizontal, or X-axis coordinate).
component y
Ordinate (vertical, or Y-axis coordinate).
A generic rectangle in the two-dimensional space.
component x1
Horizontal coordinate of the lower right corner.
component y1
Vertical coordinate of the lower right corner.
component y0
Vertical coordinate of the upper left corner.
component x0
Horizontal coordinate of the upper left corner.
Base class of PCL gradient brushes.
GradientSpreadMode::value_type spread_mode
bool IsGradient() const override
spread_mode SpreadMode() const
LinearGradientBrush(const Rect &r, const stop_list &stops=stop_list(), spread_mode spread=GradientSpreadMode::Pad)
LinearGradientBrush(const LinearGradientBrush &b)
LinearGradientBrush(LinearGradientBrush &&x)
void GetParameters(double &x1, double &y1, double &x2, double &y2) const
LinearGradientBrush(const DRect &r, const stop_list &stops=stop_list(), spread_mode spread=GradientSpreadMode::Pad)
LinearGradientBrush(double x1, double y1, double x2, double y2, const stop_list &stops=stop_list(), spread_mode spread=GradientSpreadMode::Pad)
RadialGradientBrush(RadialGradientBrush &&x)
RadialGradientBrush(const RadialGradientBrush &b)
RadialGradientBrush(double cx, double cy, double r, double fx=uint32_max, double fy=uint32_max, const stop_list &stops=stop_list(), spread_mode spread=GradientSpreadMode::Pad)
void GetParameters(DPoint &c, double &r, DPoint &f) const
RadialGradientBrush(const DPoint &c, double r, const DPoint &f=DPoint(uint32_max), const stop_list &stops=stop_list(), spread_mode spread=GradientSpreadMode::Pad)
void GetParameters(double &cx, double &cy, double &r, double &fx, double &fy) const
RadialGradientBrush(const Point &c, double r, const Point &f=Point(uint32_max), const stop_list &stops=stop_list(), spread_mode spread=GradientSpreadMode::Pad)
Root base class for all user interface objects.
bool operator==(const Array< T, A > &x1, const Array< T, A > &x2) noexcept
bool operator<(const Array< T, A > &x1, const Array< T, A > &x2) noexcept
constexpr const T & Range(const T &x, const T &a, const T &b) noexcept
Stop(const Stop &)=default
RGBA color
Stop color encoded as a 32-bit AARRGGBB value.
double position
Stop position in the [0,1] range, where 0 and 1 correspond, respectively, to the starting and end loc...