Package heronarts.lx.pattern.image
Class SlideshowPattern
java.lang.Object
heronarts.lx.LXComponent
heronarts.lx.LXModulatorComponent
heronarts.lx.LXModelComponent
heronarts.lx.LXLayeredComponent
heronarts.lx.LXDeviceComponent
heronarts.lx.pattern.LXPattern
heronarts.lx.pattern.image.SlideshowPattern
- All Implemented Interfaces:
LXEffect.Container,LXComponent.Renamable,LXLoopTask,LXPath,LXPresetComponent,LXSerializable,LXMidiListener,LXModulationContainer,LXOscComponent,LXParameterListener
@LXCategory("Image")
@Description("Animate transitions between a set of 2D images")
public class SlideshowPattern
extends LXPattern
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumclassstatic enumstatic interfaceNested classes/interfaces inherited from class heronarts.lx.pattern.LXPattern
LXPattern.Placeholder, LXPattern.ProfilerNested classes/interfaces inherited from class heronarts.lx.LXDeviceComponent
LXDeviceComponent.MidiNested classes/interfaces inherited from class heronarts.lx.LXComponent
LXComponent.Description, LXComponent.Hidden, LXComponent.Name, LXComponent.PluginRequired, LXComponent.RenamableNested classes/interfaces inherited from interface heronarts.lx.LXSerializable
LXSerializable.Utils -
Field Summary
FieldsModifier and TypeFieldDescriptionfinal BooleanParameterWhether auto pattern transition is enabled on this channelAuto-cycle to a random pattern, not the next onefinal BoundedParameterTime in seconds after which transition thru the image set is automatically initiated.final DiscreteParameterfinal List<SlideshowPattern.Image> final ObjectParameter<LXBlend> final BooleanParameterfinal BoundedParameterFields inherited from class heronarts.lx.pattern.LXPattern
compositeLevel, compositeMode, customCycleTimeSecs, effects, enabled, hasCustomCycleTime, launch, mutableEffects, PATH_EFFECT, profiler, recall, runMsFields inherited from class heronarts.lx.LXDeviceComponent
automationChildren, controlsExpanded, controlsExpandedAux, controlsExpandedCue, controlSurfaceSemaphore, crashed, DEVICE_CATEGORY_NAME_SORT, DEVICE_VERSION_UNSPECIFIED, KEY_DEVICE_VERSION, midiFilter, modulation, modulationExpanded, remoteControlsChanged, view, viewPriorityFields inherited from class heronarts.lx.LXLayeredComponent
colors, layers, paletteFields inherited from class heronarts.lx.LXModelComponent
modelFields inherited from class heronarts.lx.LXModulatorComponent
modulatorsFields inherited from class heronarts.lx.LXComponent
childArrays, children, internalParameters, KEY_CHILDREN, KEY_CLASS, KEY_COMPONENT_ID, KEY_ID, KEY_INTERNAL, KEY_PARAMETER_PATH, KEY_PARAMETERS, KEY_PATH, KEY_RESET, label, legacyInternalParameters, legacyParameters, lx, modulationColor, modulationControlsExpanded, modulationsExpanded, parameters, presetFileFields inherited from interface heronarts.lx.LXPath
DEFAULT_SEPARATOR, ROOT, ROOT_PREFIX, ROOT_SLASH -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddImage()addImage(int index) addImage(int index, JsonObject imageObj) voidaddListener(SlideshowPattern.Listener listener) voiddispose()Invoked when a component is being removed from the system and will no longer be used at all.doubleReturn progress towards making a cycledoubleReturn progress through a transitiongoImage(int index) final SlideshowPatternvoidload(LX lx, JsonObject obj) Loads the LX component.voidmoveImage(SlideshowPattern.Image image, int index) voidvoidremoveListener(SlideshowPattern.Listener listener) protected voidrun(double deltaMs) Main pattern loop function.voidsave(LX lx, JsonObject obj) Serializes the LX component.Methods inherited from class heronarts.lx.pattern.LXPattern
activate, addEffect, addListener, applyEffects, clearInterval, deactivate, getChannel, getCompositeDampingLevel, getEffects, getIndex, getPath, handleOscMessage, hasInterval, initCompositeDamping, isAutoCycleEligible, isHiddenControl, isInInterval, isSnapshotControl, midiDispatch, moveEffect, onActive, onInactive, onLoop, onTransitionEnd, onTransitionStart, removeEffect, removeListener, setAutoCycleEligible, setChannel, setIndex, setInterval, toggleAutoCycleEligible, updateCompositeBlendOptions, updateCompositeDampingMethods inherited from class heronarts.lx.LXDeviceComponent
addAutomationChild, addControlSurface, clearCustomRemoteControls, getControlSurfaces, getCrash, getCrashStackTrace, getCustomRemoteControls, getDeviceDescription, getDeviceVersion, getModelView, getModulationEngine, getModulationExpanded, getRemoteControls, loop, removeControlSurface, removeCustomRemoteControl, resetRemoteControls, setCustomRemoteControls, setRemoteControlsMethods inherited from class heronarts.lx.LXLayeredComponent
addColor, addColor, addLayer, afterLayers, blendColor, blendColor, clearColors, getBuffer, getColor, getColor, getColors, getLayers, removeLayer, setBuffer, setBuffer, setColor, setColor, setColor, setColors, subtractColorMethods inherited from class heronarts.lx.LXModelComponent
getModel, onModelChanged, setModelMethods inherited from class heronarts.lx.LXModulatorComponent
addModulator, addModulator, addModulator, addModulator, addModulator, constructProfiler, getModulator, getModulators, moveModulator, removeModulator, startModulatorMethods inherited from class heronarts.lx.LXComponent
addArray, addChild, addInternalParameter, addLegacyInternalParameter, addLegacyParameter, addParameter, addParameter, addParameters, assertDisposed, contains, copyParameters, getCategory, getChild, getComponentDescription, getComponentName, getComponentName, getComponentName, getDescription, getId, getLabel, getLX, getOscAddress, getOscLabel, getOscPath, getParameter, getParameters, getParent, hasParameter, isValidOscParameter, loadParameters, loadPreset, onParameterChanged, removeParameter, removeParameter, removeParameter, removeParameter, savePreset, setDescription, setParent, toOscQuery, toOscQuery, toOscQuery, toString, toStringMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface heronarts.lx.effect.LXEffect.Container
addEffect, getEffect, getEffect, loadEffectMethods inherited from interface heronarts.lx.midi.LXMidiListener
aftertouchReceived, controlChangeReceived, midiPanicReceived, noteOffReceived, noteOnReceived, pitchBendReceived, programChangeReceived, sysexReceivedMethods inherited from interface heronarts.lx.osc.LXOscComponent
getOscAddressMethods inherited from interface heronarts.lx.LXPath
getCanonicalLabel, getCanonicalLabel, getCanonicalLabel, getCanonicalLabel, getCanonicalLabel, getCanonicalPath, getCanonicalPath, isDescendantMethods inherited from interface heronarts.lx.LXPresetComponent
getPresetClass, postProcessPreset
-
Field Details
-
images
-
autoCycleEnabled
Whether auto pattern transition is enabled on this channel -
autoCycleMode
Auto-cycle to a random pattern, not the next one -
autoCycleTimeSecs
Time in seconds after which transition thru the image set is automatically initiated. -
transitionTimeSecs
-
transitionEnabled
-
transitionBlendMode
-
focusedImage
-
-
Constructor Details
-
SlideshowPattern
-
-
Method Details
-
getActiveImage
-
getNextImage
-
getTargetImage
-
goImage
-
goNextImage
-
goRandomImage
-
getFocusedImage
-
addImage
-
addImage
-
addImage
-
removeImage
-
moveImage
-
addListener
-
removeListener
-
getAutoCycleProgress
public double getAutoCycleProgress()Return progress towards making a cycle- Returns:
- amount of progress towards the next cycle
-
getTransitionProgress
public double getTransitionProgress()Return progress through a transition- Returns:
- amount of progress thru current transition
-
run
protected void run(double deltaMs) Description copied from class:LXPatternMain pattern loop function. Invoked in a render loop. Subclasses must implement this function. -
save
Description copied from class:LXComponentSerializes the LX component. By default, all internal and user-facing parameters are serialized, as well as any explicitly registered child components. Note that child arrays are not serialized, or any other dynamic components. Subclasses may override to perform more saving, and are expected to callsuper.save(lx, obj)at the appropriate time.- Specified by:
savein interfaceLXSerializable- Overrides:
savein classLXPattern- Parameters:
lx- LX instanceobj- Object to serialize into
-
load
Description copied from class:LXComponentLoads the LX component. Restores the ID of the component, as well as its internal and user-facing parameters. Any explicitly registered children will be automatically loaded, so long as they are direct descendants. Dynamic arrays will not be automatically loaded, this is left to subclasses to implement.- Specified by:
loadin interfaceLXSerializable- Overrides:
loadin classLXPattern- Parameters:
lx- LX instanceobj- Object to deserialize
-
dispose
public void dispose()Description copied from class:LXComponentInvoked when a component is being removed from the system and will no longer be used at all. This unregisters the component and should free up any resources and parameter listeners. Ideally after this method is called the object should be eligible for garbage collection. Subclasses are generally expected to override this method to handle their particular cleanup work. They should also generally callsuper.dispose()at the appropriate time to perform the basic cleanup, which may need to happen either before or after cleaning up other objects.
-