public final class SceneManager extends Object
SceneManager
class
provides global properties and functionality that apply to all Scenes
and thus affect
the rendering of every Insight3D
control. It also provides
a Textures
property for creating new textures
,
and controls the Time
of all Scenes
within an application. The Animation
property and SceneManager.setTime(agi.foundation.time.JulianDate)
method can be used to control Time
. The Primitives
and ScreenOverlays
properties allow you to
add Primitives
and
ScreenOverlays
to all Scenes
. To render these
objects in specific scenes, see the SceneDisplayCondition
class.
To render all Scenes
within an application, call the
Render
method.Modifier and Type | Method and Description |
---|---|
static void |
addRendering(EventHandler<RenderingEventArgs> value)
Adds a handler for an event that is raised when either
Render is called on a scene or
SceneManager.render() is called on the
SceneManager . |
static void |
addTimeChanged(EventHandler<TimeChangedEventArgs> value)
Adds a handler for an event that is raised when either
SceneManager.setTime(agi.foundation.time.JulianDate) or SceneManager.setTime(agi.foundation.time.JulianDate,agi.foundation.time.JulianDate) is called. |
static ForwardAnimation |
getAnimation()
Gets the
Animation class for controlling
and . |
static AntiAliasing |
getAntiAliasing()
Gets the multisample anti-aliasing (MSAA) option for all Scenes.
|
static FrameRate |
getFrameRate()
|
static GlobeOverlaySettings |
getGlobeOverlaySettings()
Gets the
GlobeOverlaySettings , which
are used to set global settings for all GlobeOverlays . |
static PrimitiveManager |
getPrimitives()
|
static List<Scene> |
getScenes()
Gets a read-only collection of
Scenes that are
associated with the SceneManager . |
static ScreenOverlayManager |
getScreenOverlays()
|
static Stereoscopic |
getStereoscopic()
Gets the stereoscopic options for all Scenes.
|
static Texture2DFactory |
getTextures()
Gets the
Texture2DFactory , which
can be used to create textures from various
sources. |
static JulianDate |
getTime()
Gets the current time of all
Scenes . |
static void |
refreshEvaluators()
Refreshes all evaluators used internally by Insight3D.
|
static void |
removeRendering(EventHandler<RenderingEventArgs> value)
Removes a handler for an event that is raised when either
Render is called on a scene or
SceneManager.render() is called on the
SceneManager . |
static void |
removeTimeChanged(EventHandler<TimeChangedEventArgs> value)
Removes a handler for an event that is raised when either
SceneManager.setTime(agi.foundation.time.JulianDate) or SceneManager.setTime(agi.foundation.time.JulianDate,agi.foundation.time.JulianDate) is called. |
static void |
render()
Renders all
Scenes within an application. |
static void |
setAnimation(ForwardAnimation animation)
Sets the
Animation class for controlling
and . |
static void |
setAntiAliasing(AntiAliasing antiAliasing)
Sets the multisample anti-aliasing (MSAA) option for all Scenes.
|
static void |
setTime(JulianDate time)
Set the current
Time of all Scenes . |
static void |
setTime(JulianDate time,
JulianDate nextTime)
|
public static final PrimitiveManager getPrimitives()
public static final ScreenOverlayManager getScreenOverlays()
public static final Texture2DFactory getTextures()
Texture2DFactory
, which
can be used to create textures
from various
sources.public static final GlobeOverlaySettings getGlobeOverlaySettings()
GlobeOverlaySettings
, which
are used to set global settings for all GlobeOverlays
.public static final JulianDate getTime()
Scenes
.
To set the current time, use the SceneManager.setTime(agi.foundation.time.JulianDate)
or SceneManager.setTime(agi.foundation.time.JulianDate,agi.foundation.time.JulianDate)
methods.public static final ForwardAnimation getAnimation()
Animation
class for controlling
and .public static final void setAnimation(ForwardAnimation animation)
Animation
class for controlling
and .public static final FrameRate getFrameRate()
public static final List<Scene> getScenes()
Scenes
that are
associated with the SceneManager
.Scene
public static final AntiAliasing getAntiAliasing()
public static final void setAntiAliasing(AntiAliasing antiAliasing)
public static final Stereoscopic getStereoscopic()
All Stereoscopic properties must be set before any other objects are created or methods are called within AGI.Foundation.Graphics. Once the options are specified, they cannot be changed for the lifetime of the application. These settings are typically best applied in a static constructor that is called early in an application's lifetime.
public static void addTimeChanged(EventHandler<TimeChangedEventArgs> value)
SceneManager.setTime(agi.foundation.time.JulianDate)
or SceneManager.setTime(agi.foundation.time.JulianDate,agi.foundation.time.JulianDate)
is called.value
- The event handler.public static void removeTimeChanged(EventHandler<TimeChangedEventArgs> value)
SceneManager.setTime(agi.foundation.time.JulianDate)
or SceneManager.setTime(agi.foundation.time.JulianDate,agi.foundation.time.JulianDate)
is called.value
- The event handler.public static void addRendering(EventHandler<RenderingEventArgs> value)
Render
is called on a scene or
SceneManager.render()
is called on the
SceneManager
.value
- The event handler.public static void removeRendering(EventHandler<RenderingEventArgs> value)
Render
is called on a scene or
SceneManager.render()
is called on the
SceneManager
.value
- The event handler.public static final void render()
public static final void setTime(JulianDate time)
Time
of all Scenes
. If you know
what the next Time
will be, use the SceneManager.setTime(agi.foundation.time.JulianDate,agi.foundation.time.JulianDate)
method.time
- The current Time
for all Scenes
.public static final void setTime(JulianDate time, JulianDate nextTime)
time
- The current Time
for all Scenes
.nextTime
- A hint for what the next Time
for all Scenes
will be.public static final void refreshEvaluators()