NovaSVG 0.10.0
A header-only SVG library
Loading...
Searching...
No Matches
novasvg::SVGPathElement Class Referencefinal

#include <svgelement.h>

Inheritance diagram for novasvg::SVGPathElement:
Collaboration diagram for novasvg::SVGPathElement:

Public Member Functions

 SVGPathElement (Document *document)
 
Rect updateShape (Path &path) final
 
- Public Member Functions inherited from novasvg::SVGGeometryElement
 SVGGeometryElement (Document *document, ElementID id)
 
bool isGeometryElement () const final
 
Rect fillBoundingBox () const override
 
Rect strokeBoundingBox () const override
 
void layoutElement (const SVGLayoutState &state) override
 
bool isRenderable () const
 
FillRule fill_rule () const
 
FillRule clip_rule () const
 
void updateMarkerPositions (SVGMarkerPositionList &positions, const SVGLayoutState &state)
 
void render (SVGRenderState &state) const override
 
const Path & path () const
 
- Public Member Functions inherited from novasvg::SVGGraphicsElement
 SVGGraphicsElement (Document *document, ElementID id)
 
bool isGraphicsElement () const final
 
const SVGTransform & transform () const
 
Transform localTransform () const override
 
SVGPaintServer getPaintServer (const Paint &paint, float opacity) const
 
StrokeData getStrokeData (const SVGLayoutState &state) const
 
- Public Member Functions inherited from novasvg::SVGElement
 SVGElement (Document *document, ElementID id)
 
virtual ~SVGElement ()=default
 
bool hasAttribute (std::string_view name) const
 
const std::string & getAttribute (std::string_view name) const
 
bool setAttribute (std::string_view name, const std::string &value)
 
const Attribute * findAttribute (PropertyID id) const
 
bool hasAttribute (PropertyID id) const
 
const std::string & getAttribute (PropertyID id) const
 
bool setAttribute (int specificity, PropertyID id, const std::string &value)
 
void setAttributes (const AttributeList &attributes)
 
bool setAttribute (const Attribute &attribute)
 
virtual void parseAttribute (PropertyID id, const std::string &value)
 
SVGElement * previousElement () const
 
SVGElement * nextElement () const
 
SVGNode * addChild (std::unique_ptr< SVGNode > child)
 
SVGNode * firstChild () const
 
SVGNode * lastChild () const
 
ElementID id () const
 
const AttributeList & attributes () const
 
const SVGPropertyList & properties () const
 
const SVGNodeList & children () const
 
virtual Rect paintBoundingBox () const
 
SVGMarkerElement * getMarker (std::string_view id) const
 
SVGClipPathElement * getClipper (std::string_view id) const
 
SVGMaskElement * getMasker (std::string_view id) const
 
SVGFilterElement * getFilterElement (std::string_view id) const
 
SVGPaintElement * getPainter (std::string_view id) const
 
SVGElement * elementFromPoint (float x, float y)
 
template<typename T >
void transverse (T callback)
 
void addProperty (SVGProperty &value)
 
SVGProperty * getProperty (PropertyID id) const
 
Size currentViewportSize () const
 
float font_size () const
 
void cloneChildren (SVGElement *parentElement) const
 
std::unique_ptr< SVGNode > clone (bool deep) const final
 
virtual void build ()
 
void layoutChildren (SVGLayoutState &state)
 
virtual void layout (SVGLayoutState &state)
 
void renderChildren (SVGRenderState &state) const
 
virtual std::shared_ptr< Canvas > applyFilterPrimitive (SVGFilterContext &context) const
 
bool isDisplayNone () const
 
bool isOverflowHidden () const
 
bool isVisibilityHidden () const
 
bool isHiddenElement () const
 
bool isPointableElement () const
 
const SVGClipPathElement * clipper () const
 
const SVGMaskElement * masker () const
 
const SVGFilterElement * filterElement () const
 
float opacity () const
 
MixBlendMode mixBlendMode () const
 
bool isElement () const final
 
- Public Member Functions inherited from novasvg::SVGNode
 SVGNode (Document *document)
 
virtual ~SVGNode ()=default
 
virtual bool isTextNode () const
 
virtual bool isPaintElement () const
 
virtual bool isTextPositioningElement () const
 
Document * document () const
 
SVGRootElement * rootElement () const
 
SVGElement * parentElement () const
 
void setParentElement (SVGElement *parent)
 
bool isRootElement () const
 

Additional Inherited Members

- Static Public Member Functions inherited from novasvg::SVGElement
static std::unique_ptr< SVGElement > create (Document *document, ElementID id)
 

Detailed Description

Definition at line 2025 of file svgelement.h.

Constructor & Destructor Documentation

◆ SVGPathElement()

NOVASVG_INLINE novasvg::SVGPathElement::SVGPathElement ( Document *  document)

Definition at line 3839 of file svgelement.h.

References novasvg::SVGElement::addProperty().

Member Function Documentation

◆ updateShape()

NOVASVG_INLINE Rect novasvg::SVGPathElement::updateShape ( Path &  path)
finalvirtual

Implements novasvg::SVGGeometryElement.

Definition at line 3846 of file svgelement.h.

References novasvg::SVGPath::value().


The documentation for this class was generated from the following file: