A drawable object which renders a filled or outlined shape.
For details on how to change the fill and stroke, see the DrawableShape class.
Public Member Functions | |
| DrawablePath ()=default | |
| Creates a DrawablePath. | |
| DrawablePath (const DrawablePath &)=default | |
| void | setPath (const Path &newPath) |
| Changes the path that will be drawn. | |
| void | setPath (Path &&newPath) |
| Changes the path that will be drawn. | |
| const Path & | getPath () const |
| Returns the current path. | |
| const Path & | getStrokePath () const |
| Returns the current path for the outline. | |
| std::unique_ptr< Drawable > | createCopy () const override |
| Creates a deep copy of this Drawable object. | |
| Public Member Functions inherited from juce::DrawableShape | |
| void | setFill (const FillType &newFill) |
| Sets a fill type for the path. | |
| const FillType & | getFill () const noexcept |
| Returns the current fill type. | |
| void | setStrokeFill (const FillType &newStrokeFill) |
| Sets the fill type with which the outline will be drawn. | |
| const FillType & | getStrokeFill () const noexcept |
| Returns the current stroke fill. | |
| void | setStrokeType (const PathStrokeType &newStrokeType) |
| Changes the properties of the outline that will be drawn around the path. | |
| void | setStrokeThickness (float newThickness) |
| Changes the stroke thickness. | |
| PathStrokeType | getStrokeType () const noexcept |
| Returns the current outline style. | |
| void | setDashLengths (Span< const float > newDashLengths) |
| Provides a set of dash lengths to use for stroking the path. | |
| void | setDashOffset (float dashOffset) |
| Provides an offset on the rendering of the associated dash array. | |
| Span< const float > | getDashLengths () const & |
| Returns the set of dash lengths that the path is using. | |
| Span< const float > | getDashLengths () const &&=delete |
| Rectangle< float > | getDrawableBoundsUntransformed () const override |
| Returns the area that this drawable covers in its original coordinate system. | |
| bool | hitTest (Point< float >) const override |
| Tests whether a given point is inside the Drawable. | |
| bool | replaceColour (Colour originalColour, Colour replacementColour) override |
| Recursively replaces a colour that might be used for filling or stroking. | |
| Path | getOutlineAsPath () const override |
| Creates a path that describes the outline of this drawable. | |
| Public Member Functions inherited from juce::Drawable | |
| Drawable ()=default | |
| Constructor. | |
| Drawable (const Drawable &other) | |
| Copy constructor. | |
| virtual | ~Drawable ()=default |
| Destructor. | |
| void | draw (Graphics &g, float opacity, const AffineTransform &transform=AffineTransform()) const |
| Renders this Drawable object. | |
| void | drawAt (Graphics &g, float x, float y, float opacity) const |
| Renders the Drawable at a given offset within the Graphics context. | |
| void | drawWithin (Graphics &g, Rectangle< float > destArea, RectanglePlacement placement, float opacity) const |
| Renders the Drawable within a rectangle, scaling it to fit neatly inside without changing its aspect-ratio. | |
| void | setClipPath (std::unique_ptr< Drawable > drawableClipPath) |
| Sets a the clipping region of this drawable using another drawable. | |
| Rectangle< float > | getDrawableBounds () const |
| Returns the area that this drawable covers. | |
| int | getWidth () const |
| Returns the width of the drawable bounds rounded up to the nearest integer. | |
| int | getHeight () const |
| Returns the height of the drawable bounds rounded up to the nearest integer. | |
| void | setDrawableTransform (const AffineTransform &transform) |
| Sets a transformation that applies to the same coordinate system in which the rest of the draw calls are made. | |
| void | setDrawableTransformToFit (const Rectangle< float > &area, RectanglePlacement placement) |
| Calls setDrawableTransform() with a transform that will position this Drawable within the specified area in the untransformed coordinate system of the Drawable. | |
| AffineTransform | getDrawableTransform () const |
| Returns the transform that is currently being applied to this drawable. | |
| const String & | getName () const |
| Returns the name of this Drawable object. | |
| void | setName (const String &newName) |
| Sets the name of this drawable object. | |
| void | addListener (Listener *newListener) |
| Adds a listener. | |
| void | removeListener (Listener *listenerToRemove) |
| Removes a listener. | |
| virtual bool | isImage () const |
| virtual std::optional< String > | getContainedText () const |
| virtual bool | requiresBlendBuffer () const |
Additional Inherited Members | |
| Static Public Member Functions inherited from juce::Drawable | |
| static std::unique_ptr< Drawable > | createFromImageData (const void *data, size_t numBytes) |
| Tries to turn some kind of image file into a drawable. | |
| static std::unique_ptr< Drawable > | createFromImageDataStream (InputStream &dataSource) |
| Tries to turn a stream containing some kind of image data into a drawable. | |
| static std::unique_ptr< Drawable > | createFromImageFile (const File &file) |
| Tries to turn a file containing some kind of image data into a drawable. | |
| static std::unique_ptr< Drawable > | createFromSVGFile (const File &svgFile) |
| Attempts to parse an SVG (Scalable Vector Graphics) document from a file, and to turn this into a Drawable tree. | |
| static std::unique_ptr< DrawableComposite > | createFromSVGString (const String &svgString) |
| Attempts to parse an SVG (Scalable Vector Graphics) document from a string, and to turn this into a Drawable tree. | |
| static Path | parseSVGPath (const String &svgPath) |
| Parses an SVG path string and returns it. | |
| Protected Member Functions inherited from juce::DrawableShape | |
| DrawableShape ()=default | |
| DrawableShape (const DrawableShape &)=default | |
| void | pathChanged () |
| Called when the cached path should be updated. | |
| void | strokeChanged () |
| Called when the cached stroke should be updated. | |
| bool | isStrokeVisible () const noexcept |
| True if there's a stroke with a non-zero thickness and non-transparent colour. | |
| Protected Member Functions inherited from juce::Drawable | |
| virtual AffineTransform | getTransform () const |
| void | callListeners () |
| Protected Attributes inherited from juce::DrawableShape | |
| StrokeOptions | strokeOptions = StrokeOptions{}.withWidth (0.0f) |
| Path | path |
| Path | strokePath |
|
default |
Creates a DrawablePath.
Referenced by createCopy(), and DrawablePath().
|
default |
References DrawablePath().
| void juce::DrawablePath::setPath | ( | const Path & | newPath | ) |
Changes the path that will be drawn.
| void juce::DrawablePath::setPath | ( | Path && | newPath | ) |
Changes the path that will be drawn.
| const Path & juce::DrawablePath::getPath | ( | ) | const |
Returns the current path.
| const Path & juce::DrawablePath::getStrokePath | ( | ) | const |
Returns the current path for the outline.
|
overridevirtual |
Creates a deep copy of this Drawable object.
Use this to create a new copy of this and any sub-objects in the tree.
Implements juce::Drawable.
References DrawablePath().