Mako 7.3.0 API

DOM interfaces for path geometry, figures and segments. More...

Classes

class  PointTmpl< PointType >
 Geometry primitives including: point, rectangle and matrix types supporting both integer and floating point values within. More...
 
class  BoxTmpl< PointType >
 Template for a PDF-style box. Similar to a rectangle but specified using a left, bottom, right and top coordinate. More...
 
class  IDOMPathNode
 Interface to an EDL path node. A path node specifies a geometry that can be filled with a brush. More...
 
class  IDOMPathSegment
 Interface to path segment element. The path segment is the smallest unit in a path geometry. More...
 
class  IDOMArcSegment
 Interface to Arc Segment element. More...
 
class  IDOMPolyLineSegment
 Interface to a polyline segment node. A polyline segment describes a polygonal drawing containing an arbitrary number of individual vertices. The Points attribute defines the vertices. More...
 
class  IDOMPolyBezierSegment
 Interface to a path segment node describing a set of cubic Bézier curves. More...
 
class  IDOMPolyQuadraticBezierSegment
 Interface to a polyqualdratic Bézier segment. A polyqualdratic Bézier segment describes a set of quadratic Bézier curves from the starting point defined in the IDOMPathFigure, or from the end point of the previous segment, through a set of vertices, using specified control points. The Points attribute stores an off-curve control point (x2n-1, y2n-1) followed by the end point (x2n, y2n) for each quadratic Bézier curve (where n represents the quadratic Bézier curve). More...
 
class  IDOMPathFigure
 Interface to the path figure element. A path figure is a single shape comprised of continuous path segments. One or more path figures collectively define an entire path geometry. A path geometry may define the fill algorithm to be used on the component path figures. Instances of this type use exceptions of IEDLError for error handling. More...
 
class  IDOMPathGeometry
 Interface to a path geometry node. More...
 
class  IDOMPathGeometryBuilder
 Interface to a path geometry builder. More...
 
class  IDOMShape
 Interface to an IDOMShape. More...
 
class  IDOMShape::CShapeDetails
 Provides a view into the regions that comprise the shape. A region consists of a series of spans, each representing a series of rectangles that share the same y span. More...
 
struct  IDOMShape::CShapeDetails::CSpan
 Representation of a series of rectangles sharing the same y span. More...
 

Enumerations

enum  CTransformMatrix< TItem >::eOperationTypes { CTransformMatrix< TItem >::eDoesTranslate = 0x1 , CTransformMatrix< TItem >::eDoesScale = 0x2 , CTransformMatrix< TItem >::eDoesRotate = 0x4 , CTransformMatrix< TItem >::eIsComplex = 0x8 }
 Classification of operation type flags of the transform. More...
 
enum  IDOMPathNode::eStrokeLineJoin { IDOMPathNode::eMiterJoin , IDOMPathNode::eBevelJoin , IDOMPathNode::eRoundJoin }
 Specifies the different ways in which the lines in the path could be joined. More...
 
enum  IDOMPathNode::eStrokeMiterLimitTreatment { IDOMPathNode::eClipLongMiters , IDOMPathNode::eBevelLongMiters }
 Chooses how miters that extend beyond the miter limit should be treated. ClipLongMiters specifies XPS style behaviour, where miters extending beyond the limit are clipped to the limit. BevelLongMiters specifies PDF/PS style behaviour where miters longer than the limit are instead replaced with a bevel join. More...
 
enum  IDOMPathNode::eStrokeLineCap { IDOMPathNode::eFlatCap , IDOMPathNode::eSquareCap , IDOMPathNode::eRoundCap , IDOMPathNode::eTriangleCap }
 Specifies the different types of line end caps available. More...
 
enum  IDOMArcSegment::eSweepDirection
 The direction of the sweep-clockwise or counter clockwise-between the start and end points. More...
 
enum  IDOMPathGeometry::eFillRule { IDOMPathGeometry::eFREvenOdd , IDOMPathGeometry::eFRNonZero }
 Specifies the algorithm to determine whether or not a point is inside a shape on the canvas. More...
 

Detailed Description

DOM interfaces for path geometry, figures and segments.

Enumeration Type Documentation

◆ eFillRule

Specifies the algorithm to determine whether or not a point is inside a shape on the canvas.

      "Insideness" is determined by drawing a ray from the point to infinity in any direction and counting
      the number of segments from the given shape that the ray crosses.

      The EvenOdd algorithm determines the "insideness" of a point on the canvas by drawing a ray
      from the point to infinity in any direction and counting the number of segments from the given
      shape that the ray crosses. If this number is odd, the point is inside; if it is even, the point is outside.
      This is the default rule.

      The NonZero rule determines the "insideness" of a point on the canvas by drawing a ray from the
      point to infinity in any direction and then examining the places where a segment of the shape
      crosses the ray. Starting with a count of zero, add one each time a segment crosses the ray from
      left to right and subtract one each time a path segment crosses the ray from right to left. After
      counting the crossings, if the result is zero then the point is outside the path; otherwise, it is inside.
Enumerator
eFREvenOdd 

Use the even/odd fill algorithm.

eFRNonZero 

Use the non-zero fill algorithm.

◆ eOperationTypes

template<typename TItem >
enum CTransformMatrix::eOperationTypes

Classification of operation type flags of the transform.

Enumerator
eDoesTranslate 

Does translate

eDoesScale 

Does scale

eDoesRotate 

Does rotate

eIsComplex 

Is complex

◆ eStrokeLineCap

Specifies the different types of line end caps available.

Enumerator
eFlatCap 

Flat end caps.

eSquareCap 

Square end caps.

eRoundCap 

Round end caps.

eTriangleCap 

Triangular end caps.

◆ eStrokeLineJoin

Specifies the different ways in which the lines in the path could be joined.

Enumerator
eMiterJoin 

Use mitered joins.

eBevelJoin 

Use bevelled joins.

eRoundJoin 

Use rounded joins.

◆ eStrokeMiterLimitTreatment

Chooses how miters that extend beyond the miter limit should be treated. ClipLongMiters specifies XPS style behaviour, where miters extending beyond the limit are clipped to the limit. BevelLongMiters specifies PDF/PS style behaviour where miters longer than the limit are instead replaced with a bevel join.

Enumerator
eClipLongMiters 

Clip long miters.

eBevelLongMiters 

Bevel long miters.

◆ eSweepDirection

The direction of the sweep-clockwise or counter clockwise-between the start and end points.

      The intersection of two ellipses produces four line segments.  Generally speaking, two segments will
      have a sweep of more than 180 degrees, and two segments will have a sweep of less than 180 degrees.
      Of each pair of segments, one will be drawn in a clockwise direction from the starting point
      the other in a counter clockwise direction.  SweepDirection is used in conjunction with the
      Boolean member isLargeArc to specify which of the four arcs is required (see getIsLargeArc()).