LMMS
Loading...
Searching...
No Matches
juce::PathStrokeHelpers Namespace Reference

Classes

struct  Arrowhead
struct  LineSection

Functions

static bool lineIntersection (const float x1, const float y1, const float x2, const float y2, const float x3, const float y3, const float x4, const float y4, float &intersectionX, float &intersectionY, float &distanceBeyondLine1EndSquared) noexcept
static void addEdgeAndJoint (Path &destPath, const PathStrokeType::JointStyle style, const float maxMiterExtensionSquared, const float width, const float x1, const float y1, const float x2, const float y2, const float x3, const float y3, const float x4, const float y4, const float midX, const float midY)
static void addLineEnd (Path &destPath, const PathStrokeType::EndCapStyle style, const float x1, const float y1, const float x2, const float y2, const float width)
static void addArrowhead (Path &destPath, const float x1, const float y1, const float x2, const float y2, const float tipX, const float tipY, const float width, const float arrowheadWidth)
static void shortenSubPath (Array< LineSection > &subPath, float amountAtStart, float amountAtEnd)
static void addSubPath (Path &destPath, Array< LineSection > &subPath, const bool isClosed, const float width, const float maxMiterExtensionSquared, const PathStrokeType::JointStyle jointStyle, const PathStrokeType::EndCapStyle endStyle, const Arrowhead *const arrowhead)
static void createStroke (const float thickness, const PathStrokeType::JointStyle jointStyle, const PathStrokeType::EndCapStyle endStyle, Path &destPath, const Path &source, const AffineTransform &transform, const float extraAccuracy, const Arrowhead *const arrowhead)

Function Documentation

◆ addArrowhead()

void juce::PathStrokeHelpers::addArrowhead ( Path & destPath,
const float x1,
const float y1,
const float x2,
const float y2,
const float tipX,
const float tipY,
const float width,
const float arrowheadWidth )
static

◆ addEdgeAndJoint()

void juce::PathStrokeHelpers::addEdgeAndJoint ( Path & destPath,
const PathStrokeType::JointStyle style,
const float maxMiterExtensionSquared,
const float width,
const float x1,
const float y1,
const float x2,
const float y2,
const float x3,
const float y3,
const float x4,
const float y4,
const float midX,
const float midY )
static

◆ addLineEnd()

void juce::PathStrokeHelpers::addLineEnd ( Path & destPath,
const PathStrokeType::EndCapStyle style,
const float x1,
const float y1,
const float x2,
const float y2,
const float width )
static

◆ addSubPath()

void juce::PathStrokeHelpers::addSubPath ( Path & destPath,
Array< LineSection > & subPath,
const bool isClosed,
const float width,
const float maxMiterExtensionSquared,
const PathStrokeType::JointStyle jointStyle,
const PathStrokeType::EndCapStyle endStyle,
const Arrowhead *const arrowhead )
static

◆ createStroke()

void juce::PathStrokeHelpers::createStroke ( const float thickness,
const PathStrokeType::JointStyle jointStyle,
const PathStrokeType::EndCapStyle endStyle,
Path & destPath,
const Path & source,
const AffineTransform & transform,
const float extraAccuracy,
const Arrowhead *const arrowhead )
static

◆ lineIntersection()

bool juce::PathStrokeHelpers::lineIntersection ( const float x1,
const float y1,
const float x2,
const float y2,
const float x3,
const float y3,
const float x4,
const float y4,
float & intersectionX,
float & intersectionY,
float & distanceBeyondLine1EndSquared )
staticnoexcept

◆ shortenSubPath()

void juce::PathStrokeHelpers::shortenSubPath ( Array< LineSection > & subPath,
float amountAtStart,
float amountAtEnd )
static