Loading...
Searching...
No Matches
FillType Class Referencefinal

Represents a colour or fill pattern to use for rendering paths. More...

Public Member Functions

 FillType () noexcept
 Creates a default fill type, of solid black.
 
 FillType (Colour colour) noexcept
 Creates a fill type of a solid colour.
 
 FillType (const ColourGradient &gradient)
 Creates a gradient fill type.
 
 FillType (ColourGradient &&gradient)
 Creates a gradient fill type.
 
 FillType (const Image &image, const AffineTransform &transform) noexcept
 Creates a tiled image fill type.
 
 FillType (const FillType &)
 Creates a copy of another FillType.
 
FillTypeoperator= (const FillType &)
 Makes a copy of another FillType.
 
 FillType (FillType &&) noexcept
 Move constructor.
 
FillTypeoperator= (FillType &&) noexcept
 Move assignment operator.
 
 ~FillType () noexcept
 Destructor.
 
bool isColour () const noexcept
 Returns true if this is a solid colour fill, and not a gradient or image.
 
bool isGradient () const noexcept
 Returns true if this is a gradient fill.
 
bool isTiledImage () const noexcept
 Returns true if this is a tiled image pattern fill.
 
void setColour (Colour newColour) noexcept
 Turns this object into a solid colour fill.
 
void setGradient (const ColourGradient &newGradient)
 Turns this object into a gradient fill.
 
void setTiledImage (const Image &image, const AffineTransform &transform) noexcept
 Turns this object into a tiled image fill type.
 
void setOpacity (float newOpacity) noexcept
 Changes the opacity that should be used.
 
float getOpacity () const noexcept
 Returns the current opacity to be applied to the colour, gradient, or image.
 
bool isInvisible () const noexcept
 Returns true if this fill type is completely transparent.
 
FillType transformed (const AffineTransform &transform) const
 Returns a copy of this fill, adding the specified transform applied to the existing transform.
 
bool operator== (const FillType &) const
 
bool operator!= (const FillType &) const
 

Public Attributes

Colour colour
 The solid colour being used.
 
std::unique_ptr< ColourGradientgradient
 Returns the gradient that should be used for filling.
 
Image image
 The image that should be used for tiling.
 
AffineTransform transform
 The transform that should be applied to the image or gradient that's being drawn.
 

Detailed Description

Represents a colour or fill pattern to use for rendering paths.

This is used by the Graphics and DrawablePath classes as a way to encapsulate a brush type. It can either be a solid colour, a gradient, or a tiled image.

See also
Graphics::setFillType, DrawablePath::setFill

Constructor & Destructor Documentation

◆ FillType() [1/7]

FillType::FillType ( )
noexcept

Creates a default fill type, of solid black.

Referenced by FillType(), FillType(), FillType(), FillType(), FillType(), FillType(), operator!=(), operator=(), operator=(), operator==(), transformed(), and ~FillType().

◆ FillType() [2/7]

FillType::FillType ( Colour colour)
noexcept

Creates a fill type of a solid colour.

See also
setColour

References colour, and FillType().

◆ FillType() [3/7]

FillType::FillType ( const ColourGradient & gradient)

Creates a gradient fill type.

See also
setGradient

References FillType(), and gradient.

◆ FillType() [4/7]

FillType::FillType ( ColourGradient && gradient)

Creates a gradient fill type.

See also
setGradient

References FillType(), and gradient.

◆ FillType() [5/7]

FillType::FillType ( const Image & image,
const AffineTransform & transform )
noexcept

Creates a tiled image fill type.

The transform allows you to set the scaling, offset and rotation of the pattern.

See also
setTiledImage

References FillType(), image, and transform.

◆ FillType() [6/7]

FillType::FillType ( const FillType & )

Creates a copy of another FillType.

References FillType().

◆ FillType() [7/7]

FillType::FillType ( FillType && )
noexcept

Move constructor.

References FillType().

◆ ~FillType()

FillType::~FillType ( )
noexcept

Destructor.

References FillType().

Member Function Documentation

◆ operator=() [1/2]

FillType & FillType::operator= ( const FillType & )

Makes a copy of another FillType.

References FillType().

◆ operator=() [2/2]

FillType & FillType::operator= ( FillType && )
noexcept

Move assignment operator.

References FillType().

◆ isColour()

bool FillType::isColour ( ) const
noexcept

Returns true if this is a solid colour fill, and not a gradient or image.

References gradient, image, and isColour().

Referenced by isColour().

◆ isGradient()

bool FillType::isGradient ( ) const
noexcept

Returns true if this is a gradient fill.

References gradient.

◆ isTiledImage()

bool FillType::isTiledImage ( ) const
noexcept

Returns true if this is a tiled image pattern fill.

References image.

◆ setColour()

void FillType::setColour ( Colour newColour)
noexcept

Turns this object into a solid colour fill.

If the object was an image or gradient, those fields will no longer be valid.

◆ setGradient()

void FillType::setGradient ( const ColourGradient & newGradient)

Turns this object into a gradient fill.

◆ setTiledImage()

void FillType::setTiledImage ( const Image & image,
const AffineTransform & transform )
noexcept

Turns this object into a tiled image fill type.

The transform allows you to set the scaling, offset and rotation of the pattern.

References image, and transform.

◆ setOpacity()

void FillType::setOpacity ( float newOpacity)
noexcept

Changes the opacity that should be used.

If the fill is a solid colour, this just changes the opacity of that colour. For gradients and image tiles, it changes the opacity that will be used for them.

◆ getOpacity()

float FillType::getOpacity ( ) const
noexcept

Returns the current opacity to be applied to the colour, gradient, or image.

See also
setOpacity

References colour.

◆ isInvisible()

bool FillType::isInvisible ( ) const
noexcept

Returns true if this fill type is completely transparent.

◆ transformed()

FillType FillType::transformed ( const AffineTransform & transform) const

Returns a copy of this fill, adding the specified transform applied to the existing transform.

References FillType(), transform, and transformed().

Referenced by transformed().

◆ operator==()

bool FillType::operator== ( const FillType & ) const

References FillType().

◆ operator!=()

bool FillType::operator!= ( const FillType & ) const

References FillType(), and JUCE_LEAK_DETECTOR.

Member Data Documentation

◆ colour

Colour FillType::colour

The solid colour being used.

If the fill type is not a solid colour, the alpha channel of this colour indicates the opacity that should be used for the fill, and the RGB channels are ignored.

Referenced by FillType(), and getOpacity().

◆ gradient

std::unique_ptr<ColourGradient> FillType::gradient

Returns the gradient that should be used for filling.

This will be nullptr if the object is some other type of fill. If a gradient is active, the overall opacity with which it should be applied is indicated by the alpha channel of the colour variable.

Referenced by FillType(), FillType(), isColour(), and isGradient().

◆ image

Image FillType::image

The image that should be used for tiling.

If an image fill is active, the overall opacity with which it should be applied is indicated by the alpha channel of the colour variable.

Referenced by FillType(), isColour(), isTiledImage(), and setTiledImage().

◆ transform

AffineTransform FillType::transform

The transform that should be applied to the image or gradient that's being drawn.

Referenced by FillType(), setTiledImage(), and transformed().

linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram