Donner SVG Editor & Engine
SVG-native editor and embeddable SVG2 + CSS3 engine in C++20, with GPU (WebGPU) and compact CPU renderers, built for correctness, security, and performance.
Loading...
Searching...
No Matches
MarkerComponent.h File Reference
Include dependency graph for MarkerComponent.h:

Classes

struct  donner::svg::components::MarkerComponent
 Stores the marker data for an SVG element. More...

Namespaces

namespace  donner
 Top-level Donner namespace, which is split into different sub-namespaces such as donner::svg and donner::css.
namespace  donner::svg
 Donner SVG library, which can load, manipulate and render SVG files.
namespace  donner::svg::components
 Contains the implementation of the Donner ECS,.

Class Documentation

◆ donner::svg::components::MarkerComponent

struct donner::svg::components::MarkerComponent

Stores the marker data for an SVG element.

Lengths are stored unresolved (Lengthd) so that percentage units - which resolve against the viewport of the element referencing the marker - are computed at render time. markerWidth/refX resolve against the viewport width (Lengthd::Extent::X) and markerHeight/refY against the viewport height (Lengthd::Extent::Y).

Class Members
Lengthd markerHeight {3.0, Lengthd::Unit::None} Height of the marker viewport.
MarkerUnits markerUnits Coordinate system for marker attributes and contents.
Lengthd markerWidth {3.0, Lengthd::Unit::None} Width of the marker viewport.
MarkerOrient orient Orientation of the marker.
Lengthd refX {0.0, Lengthd::Unit::None} X coordinate for the reference point.
Lengthd refY {0.0, Lengthd::Unit::None} Y coordinate for the reference point.