- All Implemented Interfaces:
Cloneable
In addition to controlling the stacking order (z-order) and visibility, this factory can configure an animation layer by providing the ability to add standard graphic objects to it, including the following:
- Arcs.
- Cubic curves.
- Ellipses.
- Images. (The actual image is specified via a URL, and may be scaled, translated, and rotated as desired).
- Lines.
- Quadratic paths.
- Rectangles.
- Round Rectangles.
- Spline paths. (A subclass of
Path2D.Double
that can use splines to provide smooth curves through a specified set of points.) - Text.
While there are a few factory parameters that apply to an
animation layer as a whole, most of the parameters are
subparameters of the object
parameter. These
parameters have integer keys, with the parameter
object.type
indicating the type of the object. For
each type, a specific set of subparameters is used. With the
exception of spline paths, each object is represented by a set of
parameters with a common integer-valued key. For spline paths, the
keys are also integer-valued, but multiple keys are needed to
describe a path. Each path is delimited by entries with a
PATH_START
and PATH_END
object type. In
between are a series of path segments separated by entries with a
SEG_END
, SEG_END_PREV
,
SEG_END_NEXT
or SEG_CLOSE
object type.
Each segment can optionally contain one or two control points (the
object type is CONTROL_POINT
, corresponding to
quadratic or cubic Bézier curves. Alternatively, a path
segment can contain a series of entries whose object type is
SPLINE_POINT
or SPLINE_FUNCTION
. The
allowed sequences of object.type
values for these
paths are shown in the following diagram:

The parameters this factory supports are shown in the following table
(the documentation for
object.type
describes which "object" parameters are used for a given type):
-
Nested Class Summary
Nested classes/interfaces inherited from class org.bzdev.obnaming.NamedObjectFactory
NamedObjectFactory.ConfigException, NamedObjectFactory.IndexedSetter, NamedObjectFactory.ParmNameIterator
-
Constructor Summary
ConstructorsConstructorDescriptionConstructor for service provider.Constructor. -
Method Summary
Methods inherited from class org.bzdev.anim2d.AbstrAnimLayer2DFactory
clear, initObject
Methods inherited from class org.bzdev.anim2d.AnimationObject2DFactory
addToTimelineRequest, getAnimation, getVisibility, getZorder, setAnimationObjectDefaults
Methods inherited from class org.bzdev.devqsim.SimObjectFactory
addToTimelineResponse, getSimulation
Methods inherited from class org.bzdev.obnaming.NamedObjectFactory
add, add, add, add, add, add, add, add, addDocResourceBundle, addDocResourceBundle, addJDoc, addJDoc, addLabelResourceBundle, addLabelResourceBundle, addTipResourceBundle, addTipResourceBundle, arrayInit, canAdd3, clear, configure, configureSupported, containsParm, createObject, createObject, createObject, createObject, createObjects, createObjects, createObjects, createObjects, createObjects, createObjects, doAfterInits, endObjectCreation, getDoc, getFactoryClass, getGLB, getLabel, getLayoutResource, getListedFactories, getLUB, getNextName, getNextNameIndex, getObjectNamer, getParmKeyType, getParmPrefix, getRVMode, getTemplateKeyMap, getTemplateKeyMapForFactories, getTemplateKeyMapForFactories, getTemplateKeyMapForFactories, getTip, getType, glbInRange, initParm, initParms, initParms, isClearOnly, isNamedObject, isRandomVariable, keyType, lubInRange, mustAdd, newConfigExceptionInstance, newConfigExceptionInstance, newConfigExceptionInstance, newConfigExceptionInstance, newConfigExceptionInstance, newConfigExceptionInstance, newConfigExceptionInstance, newInstance, newInstance, parmNames, parmNameSet, parmPrefixes, remove, remove, remove, remove, remove, remove, remove, remove, removeParm, removeParms, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, set, setDocAPIBase, setInterned, setLayoutResource, setLayoutResource, setNameRoot, setTarget, startObjectCreation, unset, unset, unset, unset, unset, unset, willIntern
-
Constructor Details
-
AnimationLayer2DFactory
Constructor.- Parameters:
a2d
- the animation
-
AnimationLayer2DFactory
public AnimationLayer2DFactory()Constructor for service provider. This constructor should not be used directly. It is necessary because of the introduction of modules in Java 9, and is used by a service provider that allows factories to be listed, possibly with documentation regarding their parameters. It jst calls the default constructor with a null argument.
-
-
Method Details
-
newObject
Description copied from class:NamedObjectFactory
Construct a new object. The object will not be initialized. This method is called bycreateObject()
andcreateObjects
unless these methods are overridden. Subclasses should callwillIntern()
to determine if the object will interned or not, andgetObjectNamer()
to find the object namer. Some subclasses (e.g., org.devqsim.SimObjectFactory) provide a method that will return the object namer cast to the type needed by constructors. In the case of SimObjectFactory, this method is named getSimulation(). For a subclass of SimObjectFactory to create a new object of typeFoo
,newObject
will execute the expression
or an equivalent expression, wherenew Foo(getSimulation(), name, willIntern())
name
is the argument passed tonewObject
.- Specified by:
newObject
in classNamedObjectFactory<AnimationObject2DFactory<AnimationLayer2D>,
Simulation, SimObject, AnimationLayer2D> - Parameters:
name
- the name of the object to be created- Returns:
- the new object
- See Also:
-