Class HtmlGridPanel

java.lang.Object
nl.tudelft.simulation.dsol.web.animation.d2.HtmlGridPanel
All Implemented Interfaces:
ImageObserver
Direct Known Subclasses:
HtmlAnimationPanel

public class HtmlGridPanel extends Object implements ImageObserver
The VisualizationPanel introduces the gridPanel.

Copyright (c) 2003-2024 Delft University of Technology, Jaffalaan 5, 2628 BX Delft, the Netherlands. All rights reserved. BSD-style license. See OpenTrafficSim License.

Author:
Niels Lang , Peter Jacobs
  • Field Details

    • UP

      public static final int UP
      the UP directions for moving/zooming.
      See Also:
    • DOWN

      public static final int DOWN
      the DOWN directions for moving/zooming.
      See Also:
    • LEFT

      public static final int LEFT
      the LEFT directions for moving/zooming.
      See Also:
    • ZOOMFACTOR

      public static final double ZOOMFACTOR
      the ZOOM factor.
      See Also:
    • GRIDCOLOR

      protected static final Color GRIDCOLOR
      gridColor.
    • extent

      protected org.djutils.draw.bounds.Bounds2d extent
      the extent of this panel.
    • homeExtent

      protected org.djutils.draw.bounds.Bounds2d homeExtent
      the extent of this panel.
    • showGrid

      protected boolean showGrid
      show the grid.
    • gridSizeX

      protected double gridSizeX
      the gridSize for the X-direction in world Units.
    • gridSizeY

      protected double gridSizeY
      the gridSize for the Y-direction in world Units.
    • formatter

      protected NumberFormat formatter
      the formatter to use.
    • lastDimension

      protected Dimension lastDimension
      the last computed Dimension.
    • size

      protected Dimension size
      the last computed Dimension.
    • preferredSize

      protected Dimension preferredSize
      the last computed Dimension.
    • worldCoordinate

      protected org.djutils.draw.point.Point2d worldCoordinate
      the last known world coordinate of the mouse.
    • showToolTip

      protected boolean showToolTip
      whether to show a tooltip with the coordinates or not.
    • htmlGraphics2D

      protected HtmlGraphics2d htmlGraphics2D
      the HTMLGraphics2D 'shadow' canvas.
    • renderableScale

      protected nl.tudelft.simulation.dsol.animation.d2.RenderableScale renderableScale
      the renderable scale (X/Y ratio) to use.
  • Constructor Details

    • HtmlGridPanel

      public HtmlGridPanel(org.djutils.draw.bounds.Bounds2d extent)
      constructs a new VisualizationPanel.
      Parameters:
      extent - Bounds2d; the extent to show.
    • HtmlGridPanel

      public HtmlGridPanel(org.djutils.draw.bounds.Bounds2d extent, Dimension size)
      constructs a new VisualizationPanel.
      Parameters:
      extent - Bounds2d; the initial extent.
      size - Dimension; the size of the panel in pixels.
  • Method Details

    • getDrawingCommands

      public String getDrawingCommands()
      Return the set of drawing commands.
      Returns:
      the set of drawing commands
    • paintComponent

      public void paintComponent(HtmlGraphics2d g)
      Draw the grid.
      Parameters:
      g - HTMLGraphics2D; the virtual Graphics2D canvas to enable writing to the browser
    • showGrid

      public final void showGrid(boolean bool)
      show the grid?
      Parameters:
      bool - boolean; true/false
    • getExtent

      public final org.djutils.draw.bounds.Bounds2d getExtent()
      returns the extent of this panel.
      Returns:
      Bounds2d
    • setExtent

      public final void setExtent(org.djutils.draw.bounds.Bounds2d extent)
      set a new extent for this panel.
      Parameters:
      extent - Bounds2d; set a new extent
    • setWorldCoordinate

      public final void setWorldCoordinate(org.djutils.draw.point.Point2d point)
      Set the world coordinates based on a mouse move.
      Parameters:
      point - Point2d; the x,y world coordinates
    • getWorldCoordinate

      public final org.djutils.draw.point.Point2d getWorldCoordinate()
      Returns:
      worldCoordinate
    • displayWorldCoordinateToolTip

      public final void displayWorldCoordinateToolTip()
      Display a tooltip with the last known world coordinates of the mouse, in case the tooltip should be displayed.
    • isShowToolTip

      public final boolean isShowToolTip()
      Returns:
      showToolTip
    • setShowToolTip

      public final void setShowToolTip(boolean showToolTip)
      Parameters:
      showToolTip - boolean; set showToolTip
    • pan

      public final void pan(int direction, double percentage)
      pans the panel in a specified direction.
      Parameters:
      direction - int; the direction
      percentage - double; the percentage
    • home

      public final void home()
      resets the panel to its original extent.
    • isShowGrid

      public final boolean isShowGrid()
      Returns:
      Returns the showGrid.
    • setShowGrid

      public final void setShowGrid(boolean showGrid)
      Parameters:
      showGrid - boolean; The showGrid to set.
    • zoom

      public final void zoom(double factor)
      zooms in/out.
      Parameters:
      factor - double; The zoom factor
    • zoom

      public final void zoom(double factor, int mouseX, int mouseY)
      zooms in/out.
      Parameters:
      factor - double; The zoom factor
      mouseX - int; x-position of the mouse around which we zoom
      mouseY - int; y-position of the mouse around which we zoom
    • drawGrid

      protected void drawGrid(Graphics g)
      Added to make sure the recursive render-call calls THIS render method instead of a potential super-class defined 'paintComponent' render method.
      Parameters:
      g - Graphics; the graphics object
    • getRenderableScale

      public final nl.tudelft.simulation.dsol.animation.d2.RenderableScale getRenderableScale()
      Returns:
      renderableScale
    • setRenderableScale

      public final void setRenderableScale(nl.tudelft.simulation.dsol.animation.d2.RenderableScale renderableScale)
      Parameters:
      renderableScale - RenderableScale; set renderableScale
    • repaint

      public void repaint()
      Repaint the shadow canvas.
    • getSize

      public final Dimension getSize()
      Returns:
      size
    • setSize

      public final void setSize(Dimension size)
      Parameters:
      size - Dimension; set size
    • getBackground

      public final Color getBackground()
      Returns:
      background
    • setBackground

      public final void setBackground(Color background)
      Parameters:
      background - Color; set background
    • getWidth

      public final int getWidth()
      Returns:
      width
    • getHeight

      public final int getHeight()
      Returns:
      height
    • getPreferredSize

      public final Dimension getPreferredSize()
      Returns:
      preferredSize
    • setPreferredSize

      public final void setPreferredSize(Dimension preferredSize)
      Parameters:
      preferredSize - Dimension; set preferredSize
    • getToolTipText

      public final String getToolTipText()
      Returns:
      toolTipText
    • setToolTipText

      public final void setToolTipText(String toolTipText)
      Parameters:
      toolTipText - String; set toolTipText
    • isShowing

      public final boolean isShowing()
      Returns:
      showing
    • setShowing

      public final void setShowing(boolean showing)
      Parameters:
      showing - boolean; set showing
    • getFont

      public final Font getFont()
      Returns:
      font
    • setFont

      public final void setFont(Font font)
      Parameters:
      font - Font; set font
    • getFontMetrics

      public final FontMetrics getFontMetrics(Font font)
      Parameters:
      font - Font; the font to calculate the fontmetrics for
      Returns:
      fontMetrics
    • isDirty

      public final boolean isDirty()
      Returns:
      dirty
    • imageUpdate

      public boolean imageUpdate(Image img, int infoflags, int x, int y, int width, int height)
      Specified by:
      imageUpdate in interface ImageObserver