com.quinncurtis.chart3djava
Class ChartZoom

java.lang.Object
  extended by com.quinncurtis.chart3djava.ChartObj
      extended by com.quinncurtis.chart3djava.GraphObj
          extended by com.quinncurtis.chart3djava.ChartMouseListener
              extended by com.quinncurtis.chart3djava.ChartZoom
All Implemented Interfaces:
ChartConstants, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.lang.Cloneable, java.util.EventListener, javax.swing.event.MouseInputListener

public class ChartZoom
extends ChartMouseListener

This class implements a chart zoom class using the Java MouseInputListener interface. The mouse is used to define a zoom rectangle within one or more PhysicalCoordinates objects, and the PhysicalCoordinates objects are re-scaled to match the extents of the zoom rectangle.


Field Summary
 
Fields inherited from interface com.quinncurtis.chart3djava.ChartConstants
ABOVE_CENTERED_PLOTAREA, ABOVE_REFERENCED_TEXT, ABSTRACT_DATASET, ACTUAL_SIZE, ALARM_TRANSITION_DECREASING_FROM_HIGH, ALARM_TRANSITION_DECREASING_TO_LOW, ALARM_TRANSITION_INCREASING_FROM_LOW, ALARM_TRANSITION_INCREASING_TO_HIGH, ALARM_TRANSITION_NONE_HIGH, ALARM_TRANSITION_NONE_LOW, ALARM_TRANSITION_NONE_NORMAL, ALTBARMODE, APRIL, ARC2D_OBJ, ARROW, ARROW_PLOT, ARROW3D, AUGUST, AUTO_RESIZE_OBJECTS, AUTOAXES_EXACT, AUTOAXES_FAR, AUTOAXES_NEAR, AUTOAXES_STACKED, AUTOAXES_UNSTACKED, AUTOCHART, AUTOSCALE, AXIS, AXIS_CENTER, AXIS_MAX, AXIS_MIN, AXISLABELS, AXISTITLE, BACKGROUND, BACKGROUND_ELLIPSE, BACKGROUND_RECTANGLE, BACKGROUND_ROUNDEDRECTANGLE, BAR_PLOT, BARDATAPOINTVALUE, BELOW_CENTERED_PLOTAREA, BELOW_REFERENCED_TEXT, BOTH_AXES, BOTTOM_BORDER, BOTTOM_SIDE, BUBBLE_PLOT, BUBBLELEGEND, BUBLELEGENDITEM, BUFFERED_IMAGE_RENDERING, BUFFEREDIMAGE, BUSINESSFORMAT, CANDLESTICK, CARTESIAN_COORDINATES, CELL_PLOT, CENTER_GRAPH, CENTER_PLOT, CENTER_RADIUS_BOTTOM, CENTER_RADIUS_LEFT, CENTER_RADIUS_RIGHT, CENTER_RADIUS_TOP, CENTERED_BAR, CHART_FOOTER, CHART_HEADER, CHART_SUBHEAD, CHARTATTRIBUTE, CHARTBRUSHES, CHARTCALENDAR, CHARTPENS, CIRCLE, COLUMN_MAJOR, COMBINE_DATASET_ADD, COMBINE_DATASET_DIVIDE, COMBINE_DATASET_MULTIPLY, COMBINE_DATASET_SUBTRACT, COMBINE_DATASET_X, COMBINE_DATASET_XY, COMBINE_DATASET_Y, CONE3D, CONTOUR_DATASET, CONTOUR_DATASET3D, CONTOUR_FILL, CONTOUR_LINE, CONTOUR_LINEANDFILL, CONTOUR_LINEPOLYGON, CONTOUR_LINEWALK, CONTOURLINE, COORD_SIZE, CROSS, CROSSOVER_DAY, CROSSOVER_MONTH, CROSSOVER_NONE, CROSSOVER_WEEK, CROSSOVER_YEAR, CUBE3D, CURRENCYBUSINESSFORMAT, CURRENCYFORMAT, CUSTOM_POSITION, CUSTOMAXIS, CUSTOMSYMBOL, CYLINDER3D, DATA_MOVEABLE, DATA_TOOLTIP_CUSTOM, DATA_TOOLTIP_GROUP_MULTILINE, DATA_TOOLTIP_OHLC, DATA_TOOLTIP_X, DATA_TOOLTIP_XY_ONELINE, DATA_TOOLTIP_XY_TWOLINE, DATA_TOOLTIP_XYZ_ONELINE, DATA_TOOLTIP_XYZ_THREELINE, DATA_TOOLTIP_Y, DATA_TOOLTIP_Z, DATACOMPRESS_AVERAGE, DATACOMPRESS_MAX, DATACOMPRESS_MIN, DATACOMPRESS_MINMAX, DATACOMPRESS_NONE, DATACOMPRESS_SKIP, DATACOMPRESS_SUM, DATACURSOR, DATAVALUE_SYMBOL_SELECTON, DATE, DAY_OF_MONTH, DAY_OF_WEEK, DAY_OF_YEAR, DECEMBER, DECIMALFORMAT, DEFAULTFORMAT, DEV_POS, DIAMOND, DIAMOND3D, DOWNTRIANGLE, EmptyColor, ENGINEERINGFORMAT, ERROR_ARRAY_NEW, ERROR_ARRAY_NEW_STRING, ERROR_AUTOSCALE, ERROR_AUTOSCALE_DATASET, ERROR_AUTOSCALE_DATASET_STRING, ERROR_AUTOSCALE_DATASETSARRAY, ERROR_AUTOSCALE_DATASETSARRAY_STRING, ERROR_AUTOSCALE_STRING, ERROR_AUTOSCALE_TRANSFORM, ERROR_AUTOSCALE_TRANSFORM_STRING, ERROR_AXIS, ERROR_AXIS_STRING, ERROR_AXISLABLES, ERROR_AXISLABLES_STRING, ERROR_AXISRANGE, ERROR_AXISRANGE_STRING, ERROR_AXISTICKS, ERROR_AXISTICKS_STRING, ERROR_BAD_POLYSURFACE, ERROR_BAD_POLYSURFACE_STRING, ERROR_BARDATAVALUE, ERROR_BARDATAVALUE_STRING, ERROR_BORDER, ERROR_BORDER_STRING, ERROR_COMPONENT, ERROR_COMPONENT_STRING, ERROR_CONTOURDATASET, ERROR_CONTOURDATASET_STRING, ERROR_DATASET, ERROR_DATASET_STRING, ERROR_DATASETSIZE, ERROR_DATASETSIZE_STRING, ERROR_DELAUNAY, ERROR_DELAUNAY_STRING, ERROR_FILECLOSE, ERROR_FILECLOSE_STRING, ERROR_FILEIO, ERROR_FILEIO_STRING, ERROR_FILEOPEN, ERROR_FILEOPEN_STRING, ERROR_FILEREAD, ERROR_FILEREAD_STRING, ERROR_FILEWRITE, ERROR_FILEWRITE_STRING, ERROR_FONT, ERROR_FONT_STRING, ERROR_GRID_ROW_COL, ERROR_GRID_ROW_COL_STRING, ERROR_GROUPDATASET, ERROR_GROUPDATASET_STRING, ERROR_IMAGE, ERROR_IMAGE_STRING, ERROR_INVALID_ALARM_EVENT_ARGUEMENT, ERROR_INVALID_ALARM_EVENT_ARGUEMENT_STRING, ERROR_INVALID_ROUNDED_RECTANGLE_ARGUEMENT, ERROR_INVALID_ROUNDED_RECTANGLE_ARGUEMENT_STRING, ERROR_LEGEND, ERROR_LEGEND_STRING, ERROR_LEGENDITEMSYMBOL, ERROR_LEGENDITEMSYMBOL_STRING, ERROR_LEGENDITEMTEXT, ERROR_LEGENDITEMTEXT_STRING, ERROR_NONE, ERROR_NONE_STRING, ERROR_NULL_ANNUNCIATOR_RECT, ERROR_NULL_ANNUNCIATOR_RECT_STRING, ERROR_NULL_METER_INDICATOR, ERROR_NULL_METER_INDICATOR_STRING, ERROR_NULL_PLOT_TEMPLATE, ERROR_NULL_PLOT_TEMPLATE_STRING, ERROR_NULL_PROCESSVAR, ERROR_NULL_PROCESSVAR_STRING, ERROR_NULLBASEAXIS, ERROR_NULLBASEAXIS_STRING, ERROR_NULLVIEWPORT, ERROR_NULLVIEWPORT_STRING, ERROR_OBJ_NEW, ERROR_OBJ_NEW_STRING, ERROR_OBJECTMISMATCH, ERROR_OBJECTMISMATCH_STRING, ERROR_PLOTOBJ, ERROR_PLOTOBJ_STRING, ERROR_POLARAXES, ERROR_POLARAXES_STRING, ERROR_SCALERANGE, ERROR_SCALERANGE_STRING, ERROR_SCALING, ERROR_SCALING_STRING, ERROR_SHAPE, ERROR_SHAPE_STRING, ERROR_SIMPLEDATASET, ERROR_SIMPLEDATASET_STRING, ERROR_SimpleDataset3D, ERROR_SMALLVIEWPORT, ERROR_SMALLVIEWPORT_STRING, ERROR_SUPERZOOM, ERROR_SUPERZOOM_STRING, ERROR_SYMBOL, ERROR_SYMBOL_STRING, ERROR_TEXT, ERROR_TEXT_STRING, ERROR_TIMELABEL, ERROR_TIMELABEL_STRING, ERROR_WRONGAXISTYPE, ERROR_WRONGAXISTYPE_STRING, ERRORBAR, EXPONENTFORMAT, FASTCLIP_X, FASTCLIP_Y, FEBRUARY, FIRST_IN_SERIES, FIXED_X_ASPECT_RATIO_CORRECTION, FIXED_Y_ASPECT_RATIO_CORRECTION, FLOATING_STACKED_BAR, FLOATINGBAR, FNP_DIST, FNP_NORMDIST, FNP_NORMX, FNP_NORMY, FNP_X, FNP_Y, FRIDAY, FRONT_BORDER, FRONT_FACE_SELECTION, FULL_PLOTAREA_CLIPPING, FULL_POLYSURFACE_SELECTION, GRAPH_AREA_CLIPPING, GRAPH_BACKGROUND, GRAPHAREA_BOTTOM, GRAPHAREA_LEFT, GRAPHAREA_RIGHT, GRAPHAREA_TOP, GRAPHTITLE, GRID, GRID_ALL, GRID_MAJOR, GRID_MINOR, GROUP_DATASET_OBJ, GROUP_DATASET3D_OBJ, GROUPBAR, HBAR, HBAR3D, HIGHLIGHT_COLOR, HISTOGRAM_PLOT, HORIZ_DIR, HOUR, HOUR_OF_DAY, HOURGLASS3D, ICHARTOBJECTPLOT, IMAGE, INDEPENDENT_IN_SERIES, INHERIT_CLIPPING, INSET_3D_LOOK, INSIDE_BAR, INSIDE_BARBASE, INSIDE_INDICATOR, INSIDE_PLOTAREA_MAX, INSIDE_PLOTAREA_MIN, INSIDE_RADIUS_BOTTOM, INSIDE_RADIUS_TOP, JANUARY, JULY, JUNE, JUSTIFY_CENTER, JUSTIFY_MAX, JUSTIFY_MIN, LABEL_ALL, LABEL_INTERCEPT, LABEL_MAX, LABEL_MIN, LABEL_ORIGIN, LAST_IN_SERIES, LEFT_BORDER, LEFT_BUTTON, LEFT_CENTERED_PLOTAREA, LEFT_REFERENCED_TEXT, LEFT_SIDE, LEGEND, LEGEND_FOOTER, LEGEND_HEADER, LEGEND_SUBHEAD, LEGENDITEM, LIGHT_LOWER_LEFT, LIGHT_LOWER_RIGHT, LIGHT_NONE, LIGHT_STRAIGHT_ON, LIGHT_UPPER_LEFT, LIGHT_UPPER_RIGHT, LINE, LINE_MARKER_PLOT, LINE_PLOT, LINEAR_AUTOSCALE, LINEAR_SCALE, LINEAR_SCALE_OBJ, LINEARAXIS, LINEGAP, LM_S, LOG_AUTOSCALE, LOG_SCALE, LOG_SCALE_OBJ, LOGAXIS, LS_DASH_2_2, LS_DASH_4_2, LS_DASH_4_4, LS_DASH_8_4, LS_DASH_DOT, LS_DOT_1_1, LS_DOT_1_2, LS_DOT_1_4, LS_DOT_1_8, LS_SOLID, MANUAL_RESIZE_OBJECTS, MARCH, MARKER, MARKER_BOX, MARKER_CROSS, MARKER_HLINE, MARKER_HVLINE, MARKER_NULL, MARKER_VLINE, MAX_LOG_VALUE, MAY, METER_LABEL_HORIZONTAL, METER_LABEL_PERPENDICULAR, METER_LABEL_RADIAL_1, METER_LABEL_RADIAL_2, MIDDLE_OF_SERIES, MILLISECOND, MIN_LOG_VALUE, MINUTE, MONDAY, MONTH, MOVE_X, MOVE_XY, MOVE_Y, MOVING_AVERAGE_X, MOVING_AVERAGE_XY, MOVING_AVERAGE_Y, MTICKS, MULTI_RIBBON_PLOT, MULTILINE, NEITHER_AXIS, NO_ASPECT_RATIO_CORRECTION, NO_AUTOSCALE, NO_CLIPPING, NO_DATECROSSOVER, NO_FASTCLIP, NO_RESIZE_OBJECTS, NO_SELECTION, NO_STEP, NOOBJECT, NORM_GRAPH_POS, NORM_PLOT_POS, NORM_PROBABILITY_SCALE_OBJ, NOSYMBOL, NOT_MOVEABLE, NOT_SPECIALCONTROL_TYPE, NOVEMBER, NUMERIC_COORDINATE, NUMERICAXISLABELS, NUMERICLABEL, OBJECT_DISABLE, OBJECT_ENABLE, OBJECT_ENABLE_NODRAW, OBJECT_MOVEABLE, OCTOBER, OHLC, OHLC_BAR_PLOT, OHLC_MODE_BARS, OHLC_MODE_FLAGS, OUTSET_3D_LOOK, OUTSIDE_BAR, OUTSIDE_BARBASE, OUTSIDE_INDICATOR, OUTSIDE_PLOTAREA_MAX, OUTSIDE_PLOTAREA_MIN, OUTSIDE_RADIUS_BOTTOM, OUTSIDE_RADIUS_TOP, OVERLAP_LABEL_DELETE, OVERLAP_LABEL_DRAW, OVERLAP_LABEL_STAGGER, PERCENT_NOPERCENTSIGN_FORMAT, PERCENTFORMAT, PHYS_POS, PHYSICAL_COORDINATES, PICTUREBOX_TYPE, PIECHART, PIELABEL_INSLICE, PIELABEL_NONE, PIELABEL_NUMVALUE, PIELABEL_OUTSLICE, PIELABEL_STRING, PIELABEL_STRINGNUMVAL, PIPE_LINE_PLOT, PLOT_AREA_CLIPPING, PLOT_BACKGROUND, PLOTAREA_CENTER, PLUS, PLUS3D, POLAR_AXIS, POLAR_COORDINATES, POLAR_LINE_PLOT, POLAR_POS, POLAR_SCATTER_PLOT, POLARAXES, POLARAXESLABELS, POLARGRID, POLYSURFACE_SQUAREGRID, POLYSURFACE_TRIANGLEGRID, PRE_RENDER_ALL, PRE_RENDER_AXES, PRE_RENDER_NONE, PRE_RENDER_ZORDER_CHANGE, PRINTER_RENDERING, PROBABILITY_AUTOSCALE, PROBABILITY_AXIS, PROBABILITY_COORDINATES, PROBABILITY_SCALE, PROBABILITY_SIGMA_AXIS, PRT_EXACT, PRT_MAX, PRT_PROP, PRT_RECT, PYRAMID3D, RADIOBUTTON_TYPE, RADIUS_BOTTOM, RADIUS_CENTER, RADIUS_LEFT, RADIUS_RIGHT, RADIUS_TOP, rBadDataValue, REAR_BORDER, RENDER_HIGHQUALITY, RENDER_LOWQUALITY, RENDER_STANDARDQUALITY, REPLACE_DATECROSSOVER, RIBBON_PLOT, RIGHT_BORDER, RIGHT_BUTTON, RIGHT_CENTERED_PLOTAREA, RIGHT_REFERENCED_TEXT, RIGHT_SIDE, ROUNDED_RECTANGLE2D, ROW_MAJOR, RT_3DFRAME, RT_ALARM, RT_ALARM_GREATERTHAN, RT_ALARM_INDICATOR, RT_ALARM_LIMIT_BACKGROUND_INDICATOR, RT_ALARM_LIMIT_LINE_INDICATOR, RT_ALARM_LIMIT_SYMBOL_INDICATOR, RT_ALARM_LOWERTHAN, RT_ALARM_NONE, RT_ALARM_PANEL_METER, RT_ANNUNCIATOR_PLOT, RT_AUTO_BARGRAPH, RT_AUTO_METER, RT_AUTO_SCROLL_GRAPH, RT_AUTOSCALE_X, RT_AUTOSCALE_X_CURRENT_SCALE, RT_AUTOSCALE_X_MAX, RT_AUTOSCALE_X_MIN, RT_AUTOSCALE_X_MINMAX, RT_AUTOSCALE_Y, RT_AUTOSCALE_Y_CURRENT_SCALE, RT_AUTOSCALE_Y_MAX, RT_AUTOSCALE_Y_MIN, RT_AUTOSCALE_Y_MINMAX, RT_BAR_INDICATOR, RT_BAR_NUMERIC_VALUE, RT_BAR_SEGMENTED_SUBTYPE, RT_BAR_SINGLE_SEGMENT_SUBTYPE, RT_BAR_SOLID_SUBTYPE, RT_BAR_TIME_VALUE, RT_BARTAG, RT_BOTTOM_HIGH_ALARM_SYMBOL, RT_BOTTOM_LOW_ALARM_SYMBOL, RT_BOTTOM_SETPOINT_SYMBOL, RT_CEILING_VALUE, RT_COMBO_PROCESSVAR, RT_CONTROL_BUTTON_TYPE, RT_CONTROL_MOMENTARYBUTTON_SUBTYPE, RT_CONTROL_RADIOBUTTON_SUBTYPE, RT_CONTROL_SCROLLBAR_TYPE, RT_CONTROL_TOGGLEBUTTON_SUBTYPE, RT_CONTROL_TRACKBAR_TYPE, RT_CUSTOM_STRING, RT_DATASET, RT_DETALED_DESCRIPTION_STRING, RT_DISPLAY_ALL_ALARMS, RT_DISPLAY_NO_ALARM, RT_DISPLAY_PRIMARY_ALARM, RT_FIXEDEXTENT_AUTOWRAP_AUTOSCROLL, RT_FIXEDEXTENT_MOVINGSTART_AUTOSCROLL, RT_FIXEDNUMPOINT_AUTOSCROLL, RT_FLOOR_VALUE, RT_FORM_CONTROL, RT_FORM_CONTROL_GRID, RT_FORM_CONTROL_PANEL_METER, RT_GEN_SHAPE, RT_GRAPH_OBJ, RT_GROUP_DATASET, RT_GROUP_MULTIVALUE_PLOT, RT_INDICATOR_COLOR_CHANGE_ON_ALARM, RT_INDICATOR_COLOR_NO_ALARM_CHANGE, RT_INDICATORRECT_CONTROL_SIZE, RT_LEFT_HIGH_ALARM_SYMBOL, RT_LEFT_LOW_ALARM_SYMBOL, RT_LEFT_SETPOINT_SYMBOL, RT_MAXEXTENT_FIXEDSTART_AUTOSCROLL, RT_METER_ARC_BAND_SUBTYPE, RT_METER_ARC_FLAT_CAP, RT_METER_ARC_INDICATOR, RT_METER_ARC_RADIUS_CAP, RT_METER_ARC_WEDGE_WIDTH_CAP, RT_METER_AXIS, RT_METER_AXIS_LABELS, RT_METER_COORDINATES, RT_METER_FACEPLATE, RT_METER_INDICATOR, RT_METER_NEEDLE_ARROW_SUBTYPE, RT_METER_NEEDLE_INDICATOR, RT_METER_NEEDLE_PIEWEDGE_SUBTYPE, RT_METER_NEEDLE_SIMPLE_SUBTYPE, RT_METER_SEGMENTED_ARC_SUBTYPE, RT_METER_SINGLE_SEGMENT_ARC_SUBTYPE, RT_METER_SINGLE_SYMBOL_SUBTYPE, RT_METER_STRING_AXIS_LABELS, RT_METER_SYMBOL_ARC_SUBTYPE, RT_METER_SYMBOL_INDICATOR, RT_MIN_CONTROL_SIZE, RT_MONOTONIC_X_MODE, RT_MULTIALARM_INDICATOR, RT_MULTIBAR_INDICATOR, RT_MULTIPOINTER_INDICATOR, RT_MULTIVALUE_ANNUNCIATOR, RT_MULTIVALUE_INDICATOR, RT_NMETER, RT_NO_ALARM_LIMIT_INDICATOR, RT_NO_AUTOSCALE_X, RT_NO_AUTOSCALE_Y, RT_NO_SYMBOL, RT_NOT_MONOTONIC_X_MODE, RT_NUMERIC_PANEL_METER, RT_ORIG_CONTROL_SIZE, RT_PIDCONTROL, RT_PLOT, RT_POINTER_INDICATOR, RT_POINTER_SUBTYPE, RT_PROCESSVAR, RT_PROCESSVAR_ALARM, RT_RIGHT_HIGH_ALARM_SYMBOL, RT_RIGHT_LOW_ALARM_SYMBOL, RT_RIGHT_SETPOINT_SYMBOL, RT_ROUND_VALUE, RT_SCROLL_FRAME, RT_SETPOINT_VALUE, RT_SHAPE_ELLIPSE, RT_SHAPE_RECTANGLE, RT_SHAPE_ROUNDEDRECTANGLE, RT_SHORT_DESCRIPTION_STRING, RT_SIMPLE_DATASET, RT_SIMPLE_SINGLEVALUE_PLOT, RT_SINGLE_CHANNEL_PANEL_METER, RT_SINGLE_VALUE_INDICATOR, RT_STRING_PANEL_METER, RT_SYMBOL, RT_TAG_STRING, RT_TEXT_BACKGROUND_COLOR_CHANGE_ON_ALARM, RT_TEXTFRAME, RT_TIME_GROUP_DATASET, RT_TIME_PANEL_METER, RT_TIME_SIMPLE_DATASET, RT_TOP_HIGH_ALARM_SYMBOL, RT_TOP_LOW_ALARM_SYMBOL, RT_TOP_SETPOINT_SYMBOL, RT_TRACKBAR_HORIZONTAL_CENTER_POINTER, RT_TRACKBAR_HORIZONTAL_DOWN_POINTER, RT_TRACKBAR_VERTICAL_CENTER_POINTER, RT_TRACKBAR_VERTICAL_RIGHT_POINTER, RT_UNIQUEID_STRING, RT_UNITS_STRING, RTPID_POSITIONCONTROL, RTPID_VELOCITYCONTROL, SATURDAY, SCALE_FACTOR_SIZE, SCATTER_PLOT, SCIENTIFICFORMAT, SCREEN_POS, SCREEN_RENDERING, SCROLLBAR_TYPE, SECOND, SECONDSPERDAY, SEPTEMBER, SHADOW_COLOR, SHAPE, SIGMA_FORMAT, SIMPLE_DATASET, SIMPLE_DATASET3D, SIMPLE_PLOTAREA_CLIPPING, SIMPLEBUTTON_TYPE, SIMPLECOLORMODE, SIMPLEGRADIENTMODE, SIZE_BUBBLE_AREA, SIZE_BUBBLE_RADIUS, sizeOfDouble, SPHERE3D, SQUARE, STACKED_RIBBON_PLOT, STACKEDBAR, STACKEDLINE, STAR, STEP_END, STEP_NO_RISE_LINE, STEP_START, STRINGAXISLABELS, STRINGLABEL, SUNDAY, SYMBOL, TEXT, THURSDAY, TICK_MAJOR, TICK_MINOR, TICKS, TIME_AUTOSCALE, TIME_COORDINATE, TIME_COORDINATES, TIME_GROUP_DATASET, TIME_GROUP_DATASET3D, TIME_SCALE, TIME_SCALE_OBJ, TIME_SIMPLE_DATASET, TIME_SIMPLE_DATASET3D, TIMEAXIS, TIMEAXIS_10MINUTEMINUTE, TIMEAXIS_10SECONDSECOND, TIMEAXIS_10YEARYEAR, TIMEAXIS_12HOURHOUR, TIMEAXIS_15MINUTEMINUTE, TIMEAXIS_15SECONDSECOND, TIMEAXIS_20YEAR5YEAR, TIMEAXIS_2HOURHOUR, TIMEAXIS_2MINUTEMINUTE, TIMEAXIS_2SECONDSECOND, TIMEAXIS_30MINUTEMINUTE, TIMEAXIS_30SECONDSECOND, TIMEAXIS_4HOURHOUR, TIMEAXIS_50YEAR10YEAR, TIMEAXIS_5MINUTEMINUTE, TIMEAXIS_5SECONDSECOND, TIMEAXIS_5YEARYEAR, TIMEAXIS_8HOURHOUR, TIMEAXIS_DAY, TIMEAXIS_DAY12HOUR, TIMEAXIS_DAY2HOUR, TIMEAXIS_DAY4HOUR, TIMEAXIS_DAY8HOUR, TIMEAXIS_DAYHOUR, TIMEAXIS_HOUR, TIMEAXIS_HOUR10MINUTE, TIMEAXIS_HOUR15MINUTE, TIMEAXIS_HOUR2MINUTE, TIMEAXIS_HOUR30MINUTE, TIMEAXIS_HOUR5MINUTE, TIMEAXIS_HOURMINUTE, TIMEAXIS_MILLISECOND, TIMEAXIS_MILLISECOND1, TIMEAXIS_MILLISECOND2, TIMEAXIS_MILLISECOND3, TIMEAXIS_MINUTE, TIMEAXIS_MINUTE10SECOND, TIMEAXIS_MINUTE15SECOND, TIMEAXIS_MINUTE2SECOND, TIMEAXIS_MINUTE30SECOND, TIMEAXIS_MINUTE5SECOND, TIMEAXIS_MINUTESECOND, TIMEAXIS_MONTH, TIMEAXIS_MONTHDAY, TIMEAXIS_MONTHWEEK, TIMEAXIS_QUARTER, TIMEAXIS_QUARTERMONTH, TIMEAXIS_SECOND, TIMEAXIS_SECONDMILLISECOND, TIMEAXIS_WEEK, TIMEAXIS_WEEKDAY, TIMEAXIS_YEAR, TIMEAXIS_YEARMONTH, TIMEAXIS_YEARQUARTER, TIMEAXISLABELS, TIMEBASE_DAY, TIMEBASE_HOUR, TIMEBASE_MILLISECOND, TIMEBASE_MINUTE, TIMEBASE_MONTH, TIMEBASE_SECOND, TIMEBASE_TICKS, TIMEBASE_WEEK, TIMEBASE_YEAR, TIMEDATEFORMAT, TIMEDATEFORMAT_12HM, TIMEDATEFORMAT_12HMS, TIMEDATEFORMAT_12HMSD, TIMEDATEFORMAT_12HMSDD, TIMEDATEFORMAT_24HM, TIMEDATEFORMAT_24HMS, TIMEDATEFORMAT_24HMSD, TIMEDATEFORMAT_24HMSDD, TIMEDATEFORMAT_D, TIMEDATEFORMAT_DDD, TIMEDATEFORMAT_DDDD, TIMEDATEFORMAT_DMY, TIMEDATEFORMAT_DMY2000, TIMEDATEFORMAT_M, TIMEDATEFORMAT_MDY, TIMEDATEFORMAT_MDY2000, TIMEDATEFORMAT_MMM, TIMEDATEFORMAT_MMMM, TIMEDATEFORMAT_MS, TIMEDATEFORMAT_MSD, TIMEDATEFORMAT_MSDD, TIMEDATEFORMAT_MSDDD, TIMEDATEFORMAT_MY, TIMEDATEFORMAT_MY2000, TIMEDATEFORMAT_NONE, TIMEDATEFORMAT_Q, TIMEDATEFORMAT_STANDARD, TIMEDATEFORMAT_Y, TIMEDATEFORMAT_Y2000, TIMELABEL, TOP_BORDER, TOP_SIDE, TRACKBAR_TYPE, TRANSFORM_3D, TransparentColor, TUESDAY, UNDECIMBER, UNDER_DATECROSSOVER, UPTRIANGLE, USER_COORD_MAX, USER_COORDINATES, USER_POS, USERGRADIENTMODE, USERTEXTUREMODE, VBAR, VBAR3D, VERT_DIR, WALL3D, WEDNESDAY, WEEK_5D, WEEK_7D, WEEK_OF_MONTH, WEEK_OF_YEAR, WORKING_COORDINATES, WORLD_COORDINATES, X_AXIS, XY_MAXZ_PLANE, XY_MINZ_PLANE, XY_PLANE, XZ_MAXY_PLANE, XZ_MINY_PLANE, XZ_PLANE, Y_AXIS, YEAR, YZ_MAXX_PLANE, YZ_MINX_PLANE, YZ_PLANE, Z_AXIS, ZOOM
 
Constructor Summary
ChartZoom()
          The default ChartZoom constructor.
ChartZoom(ChartView component, PhysicalCoordinates[] transforms, int numtransforms, boolean brescale)
          This constructor creates a new ChartZoom object using the specified component and scales.
ChartZoom(ChartView component, PhysicalCoordinates transform, boolean brescale)
          This constructor creates a new ChartZoom object using the specified component and scale.
 
Method Summary
 void addZoomListener()
          This method installs the Zoom object by adding it to the mouse listener list of the ChartView component.
 boolean checkIntersection(ChartPoint3D testpoint, NearestPointData np)
          The checkIntersection method.
 java.lang.Object clone()
           Returns an object that is a clone of this ChartZoom object.
 void copy(ChartZoom source)
          Copies the source zoom object.
 void draw(java.awt.Graphics2D g2)
          The draw method for this class.
 int errorCheck(int nerror)
          Checks the zoom object for common errors.
 int getButtonMask()
          This method returns what mouse button is trapped as the mouse zoom button.
 boolean getZoomEnable()
          This method return true if the Zoom object event listener is active.
 ChartPoint3D getZoomMax(int nmode)
          This method returns the final zoom rectangle maximum values using the coordinate system specified by nmode.
 ChartPoint3D getZoomMin(int nmode)
          This method returns the final zoom rectangle minimum values using the coordinate system specified by nmode.
 boolean getZoomObjActive()
          Returns True if a zoom operation underway.
 ChartDimension3D getZoomRangeLimitsRatio()
          This method returns the zoom range limits ratio placed on the zoom operation.
 boolean getZoomStackEnable()
          Returns True if the zoom stack is on.
 boolean getZoomXEnable()
          Returns true if the x dimension is affected by the zoom operation.
 int getZoomXRoundMode()
          Returns the zoom rounding mode for x dimension.
 boolean getZoomYEnable()
          Returns true if the y dimension is affected by the zoom operation.
 int getZoomYRoundMode()
          Returns the zoom rounding mode for y dimension.
static void interpolatepoint3D(ChartPoint3D known1, ChartPoint3D known2, ChartPoint3D partknown, int plane)
          Uses linear interpolation to determine the values of a 3D point based one the values of other points in the same plane.
static void interpolatepoint3D2(ChartPoint3D known1, ChartPoint3D known2, ChartPoint3D known3, ChartPoint3D partknown, int plane)
          Uses linear interpolation to determine the values of a 3D point based one the values of other points in the same plane.
 void mouseClicked(java.awt.event.MouseEvent event)
          The dummy mouseClicked event method for this object.
 void mouseDragged(java.awt.event.MouseEvent event)
          The mouseDragged event listener for this object.
 void mouseEntered(java.awt.event.MouseEvent event)
          The dummy mouseEntered event method for this object.
 void mouseExited(java.awt.event.MouseEvent event)
          Dummy event listener for this object.
 void mouseMoved(java.awt.event.MouseEvent event)
          The dummy mouseMoved event method for this object.
 void mousePressed(java.awt.event.MouseEvent event)
          The mousePressed event listener for this object.
 void mouseReleased(java.awt.event.MouseEvent event)
          The mouseReleased event listener for this object.
 int popZoomStack()
          Pop a set of zoom coordinate systems from the zoom stack and initialize the current scale with these value, and re-scale the associated axes to match.
 int pushZoomStack()
          Push a set of coordinate systems onto the zoom stack.
 void removeZoomListener()
          This method uninstalls the Zoom object by removing it from the mouse listener list of the ChartView component.
 void setButtonMask(int buttonmask)
          This method specifies what mouse button is trapped as the mouse zoom button.
 void setZoomEnable(boolean enable)
          Once the Zoom object is created and installed using the addMouseMoveListener method, it can be turned on/off using this method.
 void setZoomRangeLimits(ChartDimension3D limits)
          This method sets the zoom range limits placed on the zoom operation.
 void setZoomRangeLimits(double x, double y)
          This method sets the zoom range limits placed on the zoom operation.
 void setZoomRangeLimitsRatio(ChartDimension3D ratio)
          This method sets the zoom range limits placed on the zoom operation.
 void setZoomStackEnable(boolean on)
          Turns on/off the zoom stack.
 void setZoomXEnable(boolean bzoomx)
          True signifies that the x dimension is affected by the zoom operation.
 void setZoomXRoundMode(int nzoomx)
          Sets the zoom rounding mode for x dimension.
 void setZoomYEnable(boolean bzoomy)
          True signifies that the y dimension is affected by the zoom operation.
 void setZoomYRoundMode(int nzoomy)
          Sets the zoom rounding mode for y dimension.
 
Methods inherited from class com.quinncurtis.chart3djava.ChartMouseListener
addChartMouseListener, copy, getEnable, getMouseListenerEnable, removeChartMouseListener, setEnable, setMouseListenerEnable
 
Methods inherited from class com.quinncurtis.chart3djava.GraphObj
addInternalObjects, copy, defaultCheckIntersection, getBoundingBox, getChartObjAttributes, getChartObjClipping, getChartObjComponent, getChartObjEnable, getChartObjScale, getColor, getDefaultChartFont, getGraphObj3D, getImplicitDepthValue, getImplicitZValue, getIntersectionTestDistance, getLineColor, getLineStyle, getLineWidth, getLocalRendering, getLocation, getLocation, getLocation, getMoveableType, getPositionType, getResizeMultiplier, getUpdateFlag, getZOrder, moveRel, moveRel, prePlot, renderGraph3DObject, renderSolidGraph3DObject, renderSolidGraph3DObject2, setChartObjAttributes, setChartObjClipping, setChartObjComponent, setChartObjEnable, setChartObjScale, setColor, setDefaultChartFont, setGraphObj3D, setImplicitDepthValue, setImplicitZValue, setIntersectionTestDistance, setLineColor, setLineStyle, setLineWidth, setLocalRendering, setLocation, setLocation, setLocation, setLocation, setLocation, setLocation, setLocation, setLocation, setPositionType, setResizeMultiplier, setUpdateFlag, setZOrder
 
Methods inherited from class com.quinncurtis.chart3djava.ChartObj
copy, getChartObjIDCntr, getChartObjType, getThisChartObjID
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ChartZoom

public ChartZoom()
The default ChartZoom constructor.


ChartZoom

public ChartZoom(ChartView component,
                 PhysicalCoordinates transform,
                 boolean brescale)
This constructor creates a new ChartZoom object using the specified component and scale. Since only one PhysicalCoordinates object is specified this constructor implements simple zooming.

Parameters:
component - A reference to the ChartView object that the chart is placed in.
transform - The PhysicalCoordinates object associated with the scale being zoomed.
brescale - True designates that the scale should be re-scaled, once the final zoom rectangle is ascertained.

ChartZoom

public ChartZoom(ChartView component,
                 PhysicalCoordinates[] transforms,
                 int numtransforms,
                 boolean brescale)
This constructor creates a new ChartZoom object using the specified component and scales. Since an array of PhysicalCoordinates objects are specified this constructor implements super zooming.

Parameters:
component - A reference to the ChartView object that the chart is placed in.
transforms - An array, size numtransforms, of the PhysicalCoordinates objects associated with the zoom operation.
numtransforms - The number of PhysicalCoordinates objects in the transforms array.
brescale - True designates that the all of the scales should be re-scaled, once the final zoom rectangle is ascertained.
Method Detail

errorCheck

public int errorCheck(int nerror)
Checks the zoom object for common errors.

Overrides:
errorCheck in class ChartMouseListener
Parameters:
nerror - Current error state
Returns:
Returns an error code.

copy

public void copy(ChartZoom source)
Copies the source zoom object.

Parameters:
source - The source zoom object.

clone

public java.lang.Object clone()
 Returns an object that is a clone of this ChartZoom object.

Overrides:
clone in class ChartMouseListener
Returns:
Returns a clone of this ChartZoom object.

pushZoomStack

public int pushZoomStack()
Push a set of coordinate systems onto the zoom stack. Handles both simple and super zooming.

Returns:
Returns the current number of scales in the zoom stack.

popZoomStack

public int popZoomStack()
Pop a set of zoom coordinate systems from the zoom stack and initialize the current scale with these value, and re-scale the associated axes to match.

Returns:
Returns the current number of levels in the zoom stack.

setZoomEnable

public void setZoomEnable(boolean enable)
Once the Zoom object is created and installed using the addMouseMoveListener method, it can be turned on/off using this method.

Parameters:
enable - True turns the mouse listener on.

addZoomListener

public void addZoomListener()
This method installs the Zoom object by adding it to the mouse listener list of the ChartView component.


removeZoomListener

public void removeZoomListener()
This method uninstalls the Zoom object by removing it from the mouse listener list of the ChartView component.


getZoomEnable

public boolean getZoomEnable()
This method return true if the Zoom object event listener is active.

Returns:
Returns the zoom enable flag.

mouseMoved

public void mouseMoved(java.awt.event.MouseEvent event)
The dummy mouseMoved event method for this object.

Specified by:
mouseMoved in interface java.awt.event.MouseMotionListener
Overrides:
mouseMoved in class ChartMouseListener
Parameters:
event - The mouse event contains status information about the mouse.

mouseDragged

public void mouseDragged(java.awt.event.MouseEvent event)
The mouseDragged event listener for this object. It causes the current zoom rectangle object to track the mouse cursor.

Specified by:
mouseDragged in interface java.awt.event.MouseMotionListener
Overrides:
mouseDragged in class ChartMouseListener
Parameters:
event - The mouse event contains status information about the mouse.

mousePressed

public void mousePressed(java.awt.event.MouseEvent event)
The mousePressed event listener for this object. Once the specified mouse button is pressed, the zoom rectangle starts tracking the mouse cursor.

Specified by:
mousePressed in interface java.awt.event.MouseListener
Overrides:
mousePressed in class ChartMouseListener
Parameters:
event - The mouse event contains status information about the mouse.

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent event)
The dummy mouseClicked event method for this object.

Specified by:
mouseClicked in interface java.awt.event.MouseListener
Overrides:
mouseClicked in class ChartMouseListener
Parameters:
event - The mouse event contains status information about the mouse.

mouseExited

public void mouseExited(java.awt.event.MouseEvent event)
Dummy event listener for this object. In the current implementation mouse messages are only trapped while a mouse button is held down (dragged).

Specified by:
mouseExited in interface java.awt.event.MouseListener
Overrides:
mouseExited in class ChartMouseListener
Parameters:
event - The mouse event contains status information about the mouse.

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent event)
The dummy mouseEntered event method for this object.

Specified by:
mouseEntered in interface java.awt.event.MouseListener
Overrides:
mouseEntered in class ChartMouseListener
Parameters:
event - The mouse event contains status information about the mouse.

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent event)
The mouseReleased event listener for this object. Once the specified mouse button is pressed, then released, the zoom rectangle tracking the mouse cursor disappears.

Specified by:
mouseReleased in interface java.awt.event.MouseListener
Overrides:
mouseReleased in class ChartMouseListener
Parameters:
event - The mouse event contains status information about the mouse.

interpolatepoint3D

public static void interpolatepoint3D(ChartPoint3D known1,
                                      ChartPoint3D known2,
                                      ChartPoint3D partknown,
                                      int plane)
Uses linear interpolation to determine the values of a 3D point based one the values of other points in the same plane.

Parameters:
known1 - Known 3D point #1 on plane.
known2 - Known 3D point #2 on plane.
partknown - A 3D point with either only one parameter (x, y or z) known.
plane - Specifies what plane to solve for

interpolatepoint3D2

public static void interpolatepoint3D2(ChartPoint3D known1,
                                       ChartPoint3D known2,
                                       ChartPoint3D known3,
                                       ChartPoint3D partknown,
                                       int plane)
Uses linear interpolation to determine the values of a 3D point based one the values of other points in the same plane.

Parameters:
known1 - Known 3D point #1 on plane.
known2 - Known 3D point #2 on plane.
known3 - Known 3D point #3 on plane.
partknown - A 3D point with either only one parameter (x, y or z) known.
plane - Specifies what plane to solve for

getZoomMin

public ChartPoint3D getZoomMin(int nmode)
This method returns the final zoom rectangle minimum values using the coordinate system specified by nmode.

Parameters:
nmode - The coordinate system of the returned values. Use one of the coordinate system constants: DEV_POS, PHYS_POS, NORM_GRAPH_POS, NORM_PLOT_POS.
Returns:
Returns the 3D point that represent the minimum value of the zoom rectangle.

getZoomMax

public ChartPoint3D getZoomMax(int nmode)
This method returns the final zoom rectangle maximum values using the coordinate system specified by nmode.

Parameters:
nmode - The coordinate system of the returned values. Use one of the coordinate system constants: DEV_POS, PHYS_POS, NORM_GRAPH_POS, NORM_PLOT_POS.
Returns:
Returns the 3D point that represent the maximum value of the zoom rectangle.

draw

public void draw(java.awt.Graphics2D g2)
The draw method for this class. It is called to draw the zoom rectangle while the mouse button is held down and the mouse dragged.

Overrides:
draw in class ChartMouseListener
Parameters:
g2 - The graphics context.

setZoomXEnable

public void setZoomXEnable(boolean bzoomx)
True signifies that the x dimension is affected by the zoom operation.

Parameters:
bzoomx - True signifies that the x dimension is affected by the zoom operation.

setZoomYEnable

public void setZoomYEnable(boolean bzoomy)
True signifies that the y dimension is affected by the zoom operation.

Parameters:
bzoomy - True signifies that the y dimension is affected by the zoom operation.

getZoomXEnable

public boolean getZoomXEnable()
Returns true if the x dimension is affected by the zoom operation.

Returns:
True signifies that the x dimension is affected by the zoom operation.

getZoomYEnable

public boolean getZoomYEnable()
Returns true if the y dimension is affected by the zoom operation.

Returns:
True signifies that the y dimension is affected by the zoom operation.

setZoomXRoundMode

public void setZoomXRoundMode(int nzoomx)
Sets the zoom rounding mode for x dimension.

Parameters:
nzoomx - Sets the zoom rounding mode for x dimension. Use one of the auto axis rounding constants: AUTOAXES_NEAR, AUTOAXES_FAR, or AUTOAXES_EXACT.

setZoomYRoundMode

public void setZoomYRoundMode(int nzoomy)
Sets the zoom rounding mode for y dimension.

Parameters:
nzoomy - Sets the zoom rounding mode for y dimension. Use one of the auto axis rounding constants: AUTOAXES_NEAR, AUTOAXES_FAR, or AUTOAXES_EXACT.

getZoomXRoundMode

public int getZoomXRoundMode()
Returns the zoom rounding mode for x dimension.

Returns:
Returns the zoom rounding mode for x dimension.

getZoomYRoundMode

public int getZoomYRoundMode()
Returns the zoom rounding mode for y dimension.

Returns:
Returns the zoom rounding mode for y dimension.

setButtonMask

public void setButtonMask(int buttonmask)
This method specifies what mouse button is trapped as the mouse zoom button.

Overrides:
setButtonMask in class ChartMouseListener
Parameters:
buttonmask - Specifies what mouse button is trapped as the mouse zoom button.

getButtonMask

public int getButtonMask()
This method returns what mouse button is trapped as the mouse zoom button.

Overrides:
getButtonMask in class ChartMouseListener
Returns:
Returns what mouse button is trapped as the mouse zoom button.

setZoomStackEnable

public void setZoomStackEnable(boolean on)
Turns on/off the zoom stack.

Parameters:
on - True turns on the zoom stack.

getZoomStackEnable

public boolean getZoomStackEnable()
Returns True if the zoom stack is on.

Returns:
Returns True if the zoom stack is on.

setZoomRangeLimits

public void setZoomRangeLimits(ChartDimension3D limits)
This method sets the zoom range limits placed on the zoom operation. Unless explicitly set, these values are set to 1/1000 of the initial x and y scale range.

Parameters:
limits - Sets the zoom range limits.

setZoomRangeLimits

public void setZoomRangeLimits(double x,
                               double y)
This method sets the zoom range limits placed on the zoom operation. Unless explicitly set, these values are set to 1/1000 of the initial x and y scale range.

Parameters:
x - Sets the x-value of the zoom range limits.
y - Sets the y-value of the zoom range limits.

getZoomRangeLimitsRatio

public ChartDimension3D getZoomRangeLimitsRatio()
This method returns the zoom range limits ratio placed on the zoom operation. Unless explicitly set, these values are set to 0.001.

Returns:
Returns the zoom range limits.

setZoomRangeLimitsRatio

public void setZoomRangeLimitsRatio(ChartDimension3D ratio)
This method sets the zoom range limits placed on the zoom operation. Unless explicitly set, these values are set to 0.001.

Parameters:
ratio - Sets the zoom range limits.

checkIntersection

public boolean checkIntersection(ChartPoint3D testpoint,
                                 NearestPointData np)
The checkIntersection method. Always returns false for zoom objects.

Overrides:
checkIntersection in class ChartMouseListener
Parameters:
np - Nearest point information for data based objects.
testpoint - The test point.
Returns:
Returns true if the test point intersects the object.

getZoomObjActive

public boolean getZoomObjActive()
Returns True if a zoom operation underway. In multi-threaded applications useful to avoid updates from other threads.

Returns:
Returns True if a zoom operation underway.