|
JUCE-7.0.12-0-g4f43011b96 JUCE-7.0.12-0-g4f43011b96
JUCE — C++ application framework with suport for VST, VST3, LV2 audio plug-ins
« « « Anklang Documentation |
Describes a type of stroke used to render a solid outline along a path. More...
#include "juce_PathStrokeType.h"
Public Types | |
| enum | JointStyle { mitered , curved , beveled } |
| The type of shape to use for the corners between two adjacent line segments. More... | |
| enum | EndCapStyle { butt , square , rounded } |
| The type shape to use for the ends of lines. More... | |
Public Member Functions | |
| PathStrokeType (float strokeThickness) noexcept | |
| Creates a stroke type with a given line-width, and default joint/end styles. | |
| PathStrokeType (float strokeThickness, JointStyle jointStyle, EndCapStyle endStyle=butt) noexcept | |
| Creates a stroke type. | |
| PathStrokeType (const PathStrokeType &) noexcept | |
| Creates a copy of another stroke type. | |
| PathStrokeType & | operator= (const PathStrokeType &) noexcept |
| Copies another stroke onto this one. | |
| ~PathStrokeType () noexcept | |
| Destructor. | |
| void | createStrokedPath (Path &destPath, const Path &sourcePath, const AffineTransform &transform=AffineTransform(), float extraAccuracy=1.0f) const |
| Applies this stroke type to a path and returns the resultant stroke as another Path. | |
| void | createDashedStroke (Path &destPath, const Path &sourcePath, const float *dashLengths, int numDashLengths, const AffineTransform &transform=AffineTransform(), float extraAccuracy=1.0f) const |
| Applies this stroke type to a path, creating a dashed line. | |
| void | createStrokeWithArrowheads (Path &destPath, const Path &sourcePath, float arrowheadStartWidth, float arrowheadStartLength, float arrowheadEndWidth, float arrowheadEndLength, const AffineTransform &transform=AffineTransform(), float extraAccuracy=1.0f) const |
| Applies this stroke type to a path and returns the resultant stroke as another Path. | |
| float | getStrokeThickness () const noexcept |
| Returns the stroke thickness. | |
| void | setStrokeThickness (float newThickness) noexcept |
| Sets the stroke thickness. | |
| JointStyle | getJointStyle () const noexcept |
| Returns the joint style. | |
| void | setJointStyle (JointStyle newStyle) noexcept |
| Sets the joint style. | |
| EndCapStyle | getEndStyle () const noexcept |
| Returns the end-cap style. | |
| void | setEndStyle (EndCapStyle newStyle) noexcept |
| Sets the end-cap style. | |
| bool | operator== (const PathStrokeType &) const noexcept |
| Compares the stroke thickness, joint and end styles of two stroke types. | |
| bool | operator!= (const PathStrokeType &) const noexcept |
| Compares the stroke thickness, joint and end styles of two stroke types. | |
Describes a type of stroke used to render a solid outline along a path.
A PathStrokeType object can be used directly to create the shape of an outline around a path, and is used by Graphics::strokePath to specify the type of stroke to draw.
@tags{Graphics}
Definition at line 41 of file juce_PathStrokeType.h.
The type shape to use for the ends of lines.
Definition at line 59 of file juce_PathStrokeType.h.
The type of shape to use for the corners between two adjacent line segments.
Definition at line 46 of file juce_PathStrokeType.h.
|
explicitnoexcept |
Creates a stroke type with a given line-width, and default joint/end styles.
Definition at line 29 of file juce_PathStrokeType.cpp.
|
noexcept |
Creates a stroke type.
| strokeThickness | the width of the line to use |
| jointStyle | the type of joints to use for corners |
| endStyle | the type of end-caps to use for the ends of open paths. |
Definition at line 34 of file juce_PathStrokeType.cpp.
|
noexcept |
Creates a copy of another stroke type.
Definition at line 39 of file juce_PathStrokeType.cpp.
|
noexcept |
Destructor.
Definition at line 54 of file juce_PathStrokeType.cpp.
| void juce::PathStrokeType::createDashedStroke | ( | Path & | destPath, |
| const Path & | sourcePath, | ||
| const float * | dashLengths, | ||
| int | numDashLengths, | ||
| const AffineTransform & | transform = AffineTransform(), |
||
| float | extraAccuracy = 1.0f |
||
| ) | const |
Applies this stroke type to a path, creating a dashed line.
This is similar to createStrokedPath, but uses the array passed in to break the stroke up into a series of dashes.
| destPath | the resultant stroked outline shape will be copied into this path. Note that it's ok for the source and destination Paths to be the same object, so you can easily turn a path into a stroked version of itself. |
| sourcePath | the path to use as the source |
| dashLengths | An array of alternating on/off lengths. E.g. { 2, 3, 4, 5 } will create a line of length 2, then skip a length of 3, then add a line of length 4, skip 5, and keep repeating this pattern. |
| numDashLengths | The number of lengths in the dashLengths array. This should really be an even number, otherwise the pattern will get out of step as it repeats. |
| transform | an optional transform to apply to the points from the source path as they are being used |
| extraAccuracy | if this is greater than 1.0, it will subdivide the path to a higher resolution, which improves the quality if you'll later want to enlarge the stroked path. So for example, if you're planning on drawing the stroke at 3x the size that you're creating it, you should set this to 3. |
Definition at line 665 of file juce_PathStrokeType.cpp.
| void juce::PathStrokeType::createStrokedPath | ( | Path & | destPath, |
| const Path & | sourcePath, | ||
| const AffineTransform & | transform = AffineTransform(), |
||
| float | extraAccuracy = 1.0f |
||
| ) | const |
Applies this stroke type to a path and returns the resultant stroke as another Path.
| destPath | the resultant stroked outline shape will be copied into this path. Note that it's ok for the source and destination Paths to be the same object, so you can easily turn a path into a stroked version of itself. |
| sourcePath | the path to use as the source |
| transform | an optional transform to apply to the points from the source path as they are being used |
| extraAccuracy | if this is greater than 1.0, it will subdivide the path to a higher resolution, which improves the quality if you'll later want to enlarge the stroked path. So for example, if you're planning on drawing the stroke at 3x the size that you're creating it, you should set this to 3. |
Definition at line 658 of file juce_PathStrokeType.cpp.
| void juce::PathStrokeType::createStrokeWithArrowheads | ( | Path & | destPath, |
| const Path & | sourcePath, | ||
| float | arrowheadStartWidth, | ||
| float | arrowheadStartLength, | ||
| float | arrowheadEndWidth, | ||
| float | arrowheadEndLength, | ||
| const AffineTransform & | transform = AffineTransform(), |
||
| float | extraAccuracy = 1.0f |
||
| ) | const |
Applies this stroke type to a path and returns the resultant stroke as another Path.
| destPath | the resultant stroked outline shape will be copied into this path. Note that it's ok for the source and destination Paths to be the same object, so you can easily turn a path into a stroked version of itself. |
| sourcePath | the path to use as the source |
| arrowheadStartWidth | the width of the arrowhead at the start of the path |
| arrowheadStartLength | the length of the arrowhead at the start of the path |
| arrowheadEndWidth | the width of the arrowhead at the end of the path |
| arrowheadEndLength | the length of the arrowhead at the end of the path |
| transform | an optional transform to apply to the points from the source path as they are being used |
| extraAccuracy | if this is greater than 1.0, it will subdivide the path to a higher resolution, which improves the quality if you'll later want to enlarge the stroked path. So for example, if you're planning on drawing the stroke at 3x the size that you're creating it, you should set this to 3. |
Definition at line 730 of file juce_PathStrokeType.cpp.
|
noexcept |
Returns the end-cap style.
Definition at line 185 of file juce_PathStrokeType.h.
|
noexcept |
Returns the joint style.
Definition at line 179 of file juce_PathStrokeType.h.
|
noexcept |
Returns the stroke thickness.
Definition at line 173 of file juce_PathStrokeType.h.
|
noexcept |
Compares the stroke thickness, joint and end styles of two stroke types.
Definition at line 64 of file juce_PathStrokeType.cpp.
|
noexcept |
Copies another stroke onto this one.
Definition at line 46 of file juce_PathStrokeType.cpp.
|
noexcept |
Compares the stroke thickness, joint and end styles of two stroke types.
Definition at line 58 of file juce_PathStrokeType.cpp.
|
noexcept |
Sets the end-cap style.
Definition at line 188 of file juce_PathStrokeType.h.
|
noexcept |
Sets the joint style.
Definition at line 182 of file juce_PathStrokeType.h.
Sets the stroke thickness.
Definition at line 176 of file juce_PathStrokeType.h.