java.lang.Object
com.github.weisj.jsvg.nodes.AbstractSVGNode
com.github.weisj.jsvg.nodes.RenderableSVGNode
com.github.weisj.jsvg.nodes.ShapeNode
- All Implemented Interfaces:
HasClip
,HasFilter
,HasFontContext
,HasGeometryContext
,HasGeometryContext.ByDelegate
,HasPaintContext
,HasShape
,HasVectorEffects
,Instantiator
,Renderable
,Transformable
,SVGNode
public abstract class ShapeNode
extends RenderableSVGNode
implements HasShape, HasPaintContext, HasFontContext, HasVectorEffects, Instantiator
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.github.weisj.jsvg.nodes.prototype.HasGeometryContext
HasGeometryContext.ByDelegate
Nested classes/interfaces inherited from interface com.github.weisj.jsvg.nodes.prototype.HasShape
HasShape.Box
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate FontSize
private Length
private Marker
private Marker
private Marker
private PaintContext
private Length
private MeasurableShape
private Set
<VectorEffect> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal void
build
(@NotNull AttributeNode attributeNode) protected abstract @NotNull MeasurableShape
buildShape
(@NotNull AttributeNode attributeNode) boolean
canInstantiate
(@NotNull SVGNode node) private @NotNull Stroke
computeEffectiveStroke
(@NotNull RenderContext context) @NotNull Mutator
<MeasurableFontSpec> fontSpec()
boolean
isVisible
(@NotNull RenderContext context) @NotNull PaintContext
final void
render
(@NotNull RenderContext context, @NotNull Output output) @NotNull MeasurableShape
shape()
protected boolean
@NotNull Rectangle2D
untransformedElementBounds
(@NotNull RenderContext context, HasShape.Box box) @NotNull Shape
untransformedElementShape
(@NotNull RenderContext context) @NotNull Set
<VectorEffect> Methods inherited from class com.github.weisj.jsvg.nodes.RenderableSVGNode
geometryContextDelegate
Methods inherited from class com.github.weisj.jsvg.nodes.AbstractSVGNode
addContent, id, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.github.weisj.jsvg.nodes.prototype.HasGeometryContext.ByDelegate
clipPath, filter, mask, transform, transformOrigin
Methods inherited from interface com.github.weisj.jsvg.nodes.prototype.HasShape
elementBounds, elementShape
Methods inherited from interface com.github.weisj.jsvg.nodes.prototype.Instantiator
createContextAttributes
Methods inherited from interface com.github.weisj.jsvg.nodes.prototype.Renderable
parseIsVisible, requiresInstantiation, shouldEstablishChildContext
Methods inherited from interface com.github.weisj.jsvg.nodes.prototype.Transformable
applyTransform, shouldTransform, transformShape
-
Field Details
-
paintContext
-
fontSize
-
fontSizeAdjust
-
pathLength
-
shape
-
markerStart
-
markerMid
-
markerEnd
-
vectorEffects
-
-
Constructor Details
-
ShapeNode
public ShapeNode()
-
-
Method Details
-
paintContext
- Specified by:
paintContext
in interfaceHasPaintContext
-
fontSpec
- Specified by:
fontSpec
in interfaceHasFontContext
-
shape
-
vectorEffects
- Specified by:
vectorEffects
in interfaceHasVectorEffects
-
build
- Specified by:
build
in interfaceSVGNode
- Overrides:
build
in classRenderableSVGNode
-
buildShape
@NotNull protected abstract @NotNull MeasurableShape buildShape(@NotNull @NotNull AttributeNode attributeNode) -
untransformedElementShape
- Specified by:
untransformedElementShape
in interfaceHasShape
-
untransformedElementBounds
@NotNull public @NotNull Rectangle2D untransformedElementBounds(@NotNull @NotNull RenderContext context, HasShape.Box box) - Specified by:
untransformedElementBounds
in interfaceHasShape
-
isVisible
- Specified by:
isVisible
in interfaceRenderable
- Overrides:
isVisible
in classRenderableSVGNode
-
canInstantiate
- Specified by:
canInstantiate
in interfaceInstantiator
-
computeEffectiveStroke
-
render
- Specified by:
render
in interfaceRenderable
-
shouldPaintStartEndMarkersInMiddle
protected boolean shouldPaintStartEndMarkersInMiddle()
-