Class AbstractViewport
- java.lang.Object
 - 
- jadex.extension.envsupport.observer.graphics.AbstractViewport
 
 
- 
- All Implemented Interfaces:
 IViewport
- Direct Known Subclasses:
 ViewportJ2D
public abstract class AbstractViewport extends java.lang.Object implements IViewport
 
- 
- 
Nested Class Summary
Nested Classes Modifier and Type Class Description protected classAbstractViewport.MouseController 
- 
Field Summary
Fields Modifier and Type Field Description protected Vector2DoubleareaSize_Maximum displayable areaprotected java.awt.ColorbgColor_The background color.protected java.awt.Canvascanvas_Canvas for graphical output.protected java.util.SetdrawObjects_Known drawable Objects.protected IVector2inversionFlag_Axis inversion flagprotected java.util.SortedSetobjectLayers_Registered object layers.protected java.util.ListobjectList_List of objects that should be drawn.protected floatobjShiftX_Object shift x-coordinate.protected floatobjShiftY_Object shift y-coordinate.protected Vector2DoublepaddedSize_Real size of the viewport including padding.protected IPerspectiveperspectiveIPropertyObject holding properties for layers.protected IVector2pixPosition_Pixel-corrected viewport position.protected IVector2position_Virtual Viewport position.protected Layer[]postLayers_Layers applied after drawable renderingprotected Layer[]preLayers_Layers applied before drawable renderingprotected booleanpreserveAR_Flag aspect ratio preservation.protected booleanrenderingFlag to indicate that rendering is in progress.protected Vector2Doublesize_Size of the viewport without padding.protected ISpaceControllerspacecontrollerThe Space Controller 
- 
Constructor Summary
Constructors Constructor Description AbstractViewport(IPerspective perspective) 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddViewportListener(IViewportListener listener)Adds a IViewportListenerIVector2getAreaSize()Gets the maximum displayable size.java.awt.CanvasgetCanvas()Returns the canvas that is used for displaying the objects.IVector2getCanvasSize()Returns the size of the canvas as a vector.java.awt.RectanglegetClippingBox()Returns the clipping box.booleangetInvertX()Returns true if the x-axis is inverted (right-left instead of left-right).booleangetInvertY()Returns true if the y-axis is inverted (top-down instead of bottom-up).IVector2getObjectShift()Gets the shift of all objects.IVector2getPaddedSize()Returns the padded sizeIPerspectivegetPerspective()Get the perspective.IVector2getPixelSize()Returns the size of a pixel.IVector2getPosition()Gets the position of the viewport.IVector2getSize()Gets the size of the display area.ISpaceControllergetSpaceController()voidgetSpaceController(ISpaceController spacecontroller)IVector2getWorldCoordinates(int pixelX, int pixelY)Converts pixel coordinates into world coordinatesbooleanisShowing()Checks if this IViewport is showing on screen.voidrefreshCanvasSize()Refreshes the size of the canvas.voidremoveViewportListener(IViewportListener listener)Removes a IViewportListenervoidsetAreaSize(IVector2 areaSize)Sets the maximum displayable size.voidsetBackground(java.awt.Color bgColor)Sets the background color.voidsetInvertX(boolean b)If set to true, inverts the x-axis (right-left instead of left-right).voidsetInvertY(boolean b)If set to true, inverts the y-axis (top-down instead of bottom-up).voidsetObjectList(java.util.List objectList)Sets the current objects to draw.voidsetObjectShift(IVector2 objectShift)Sets the shift of all objects.voidsetPosition(IVector2 pos)Sets the position of the viewport.voidsetPostLayers(Layer[] layers)Sets the post-layers for the viewport.voidsetPreLayers(Layer[] layers)Sets the pre-layers for the viewport.voidsetPreserveAspectRation(boolean preserveAR)Sets whether the viewport should preserve the aspect ratio of the size by padding.voidsetSize(IVector2 size)Sets the size of the display area.voidsetZoomLimit(double zoomlimit)Sets the maximum zoom.- 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait 
- 
Methods inherited from interface jadex.extension.envsupport.observer.graphics.IViewport
dispose, drawPrimitive, refresh 
 - 
 
 - 
 
- 
- 
Field Detail
- 
spacecontroller
protected ISpaceController spacecontroller
The Space Controller 
- 
inversionFlag_
protected IVector2 inversionFlag_
Axis inversion flag 
- 
canvas_
protected java.awt.Canvas canvas_
Canvas for graphical output. 
- 
bgColor_
protected java.awt.Color bgColor_
The background color. 
- 
position_
protected IVector2 position_
Virtual Viewport position. 
- 
pixPosition_
protected IVector2 pixPosition_
Pixel-corrected viewport position. 
- 
objShiftX_
protected float objShiftX_
Object shift x-coordinate. 
- 
objShiftY_
protected float objShiftY_
Object shift y-coordinate. 
- 
preserveAR_
protected boolean preserveAR_
Flag aspect ratio preservation. 
- 
size_
protected Vector2Double size_
Size of the viewport without padding. 
- 
areaSize_
protected Vector2Double areaSize_
Maximum displayable area 
- 
paddedSize_
protected Vector2Double paddedSize_
Real size of the viewport including padding. 
- 
drawObjects_
protected java.util.Set drawObjects_
Known drawable Objects. 
- 
objectLayers_
protected java.util.SortedSet objectLayers_
Registered object layers. 
- 
objectList_
protected java.util.List objectList_
List of objects that should be drawn. 
- 
preLayers_
protected Layer[] preLayers_
Layers applied before drawable rendering 
- 
postLayers_
protected Layer[] postLayers_
Layers applied after drawable rendering 
- 
perspective
protected IPerspective perspective
IPropertyObject holding properties for layers. 
- 
rendering
protected volatile boolean rendering
Flag to indicate that rendering is in progress. 
 - 
 
- 
Constructor Detail
- 
AbstractViewport
public AbstractViewport(IPerspective perspective)
 
 - 
 
- 
Method Detail
- 
setBackground
public void setBackground(java.awt.Color bgColor)
Sets the background color.- Specified by:
 setBackgroundin interfaceIViewport- Parameters:
 bgColor- the background color
 
- 
setObjectList
public void setObjectList(java.util.List objectList)
Sets the current objects to draw.- Specified by:
 setObjectListin interfaceIViewport- Parameters:
 objectList- objects that should be drawn
 
- 
getCanvas
public java.awt.Canvas getCanvas()
Returns the canvas that is used for displaying the objects. 
- 
setPreLayers
public void setPreLayers(Layer[] layers)
Sets the pre-layers for the viewport.- Specified by:
 setPreLayersin interfaceIViewport- Parameters:
 layers- the pre-layers
 
- 
setPostLayers
public void setPostLayers(Layer[] layers)
Sets the post-layers for the viewport.- Specified by:
 setPostLayersin interfaceIViewport- Parameters:
 layers- the post-layers
 
- 
getSize
public IVector2 getSize()
Gets the size of the display area. 
- 
setSize
public void setSize(IVector2 size)
Sets the size of the display area. 
- 
getAreaSize
public IVector2 getAreaSize()
Gets the maximum displayable size.- Specified by:
 getAreaSizein interfaceIViewport- Returns:
 - maximum area size.
 
 
- 
setAreaSize
public void setAreaSize(IVector2 areaSize)
Sets the maximum displayable size.- Specified by:
 setAreaSizein interfaceIViewport- Parameters:
 areaSize- maximum area size.
 
- 
getPaddedSize
public IVector2 getPaddedSize()
Returns the padded size- Returns:
 - padded size
 
 
- 
getClippingBox
public java.awt.Rectangle getClippingBox()
Returns the clipping box.- Returns:
 - clipping box
 
 
- 
getPixelSize
public IVector2 getPixelSize()
Returns the size of a pixel. 
- 
getCanvasSize
public IVector2 getCanvasSize()
Returns the size of the canvas as a vector.- Returns:
 - size of the canvas in pixel
 
 
- 
refreshCanvasSize
public void refreshCanvasSize()
Refreshes the size of the canvas.- Specified by:
 refreshCanvasSizein interfaceIViewport
 
- 
getPosition
public IVector2 getPosition()
Gets the position of the viewport.- Specified by:
 getPositionin interfaceIViewport
 
- 
setPosition
public void setPosition(IVector2 pos)
Sets the position of the viewport.- Specified by:
 setPositionin interfaceIViewport
 
- 
setPreserveAspectRation
public void setPreserveAspectRation(boolean preserveAR)
Description copied from interface:IViewportSets whether the viewport should preserve the aspect ratio of the size by padding.- Specified by:
 setPreserveAspectRationin interfaceIViewport- Parameters:
 preserveAR- true to preserve aspect ratio, false otherwise
 
- 
getInvertX
public boolean getInvertX()
Returns true if the x-axis is inverted (right-left instead of left-right).- Specified by:
 getInvertXin interfaceIViewport- Returns:
 - true, if the x-axis is inverted
 
 
- 
getInvertY
public boolean getInvertY()
Returns true if the y-axis is inverted (top-down instead of bottom-up).- Specified by:
 getInvertYin interfaceIViewport- Returns:
 - true, if the y-axis is inverted
 
 
- 
setInvertX
public void setInvertX(boolean b)
If set to true, inverts the x-axis (right-left instead of left-right).- Specified by:
 setInvertXin interfaceIViewport- Parameters:
 b- if true, inverts the x-axis
 
- 
setInvertY
public void setInvertY(boolean b)
If set to true, inverts the y-axis (top-down instead of bottom-up).- Specified by:
 setInvertYin interfaceIViewport- Parameters:
 b- if true, inverts the y-axis
 
- 
getObjectShift
public IVector2 getObjectShift()
Gets the shift of all objects. 
- 
setObjectShift
public void setObjectShift(IVector2 objectShift)
Sets the shift of all objects.- Specified by:
 setObjectShiftin interfaceIViewport
 
- 
setZoomLimit
public void setZoomLimit(double zoomlimit)
Sets the maximum zoom.- Specified by:
 setZoomLimitin interfaceIViewport- Parameters:
 zoomlimit- the zoom limit
 
- 
isShowing
public boolean isShowing()
Checks if this IViewport is showing on screen. 
- 
addViewportListener
public void addViewportListener(IViewportListener listener)
Adds a IViewportListener- Specified by:
 addViewportListenerin interfaceIViewport- Parameters:
 listener- new listener
 
- 
removeViewportListener
public void removeViewportListener(IViewportListener listener)
Removes a IViewportListener- Specified by:
 removeViewportListenerin interfaceIViewport- Parameters:
 listener- the listener
 
- 
getPerspective
public IPerspective getPerspective()
Get the perspective.- Specified by:
 getPerspectivein interfaceIViewport- Returns:
 - The perspective.
 
 
- 
getWorldCoordinates
public IVector2 getWorldCoordinates(int pixelX, int pixelY)
Converts pixel coordinates into world coordinates- Specified by:
 getWorldCoordinatesin interfaceIViewport- Parameters:
 pixelX- pixel x-coordinatepixelY- pixel y-coordinate- Returns:
 - world coordinates
 
 
- 
getSpaceController
public ISpaceController getSpaceController()
- Specified by:
 getSpaceControllerin interfaceIViewport- Returns:
 - the spacecontroller
 
 
- 
getSpaceController
public void getSpaceController(ISpaceController spacecontroller)
 
 - 
 
 -