jhplot.jadraw
Class JaBox

java.lang.Object
  extended by jhplot.jadraw.JaObject
      extended by jhplot.jadraw.JaFillObject
          extended by jhplot.jadraw.JaBox
All Implemented Interfaces:
java.io.Serializable

public class JaBox
extends JaFillObject

A box object.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class jhplot.jadraw.JaObject
BB_MAX_X, BB_MAX_Y, BB_MIN_X, BB_MIN_Y, COPY, D_FORMAT, INIT_SIZE, LENGTH, MOVE, RESIZE, SELECT_BODY, SELECT_LL, SELECT_LR, SELECT_NONE, SELECT_P1, SELECT_P2, SELECT_P3, SELECT_UL, SELECT_UR
 
Constructor Summary
JaBox()
          Constructor: sets the width, height, getRelw() and getRelh() to a default value of 25.
JaBox(double x1, double y1, double x2, double y2, java.lang.String what)
          Build a box.
 
Method Summary
 JaObject copy()
          Returns an exact copy of this Label.
 void drawHandles(java.awt.Graphics2D g2)
          Draws the handles of this box object.
 boolean editPanel()
          Brings up the edit panel that allows to change the parameters of this object.
 int getGrabbedHandle(int clickX, int clickY, int editmode)
          Determines where on this JaObject a mouse click has ocurred.
 float getTransparency()
          Get the transparency of it
 int[] getXYCoord(int x, int y, int relw, int relh)
          Get coordinates of the box
 boolean isCopy(JaObject comp)
          Returns true if all serializable variables of this JaObject and those of the specified one are equal.
 boolean isFilled()
          Get the filled style
 void jaxoDraw(java.awt.Graphics2D g2, boolean drawToScreen)
          The method that draws this Label.
 java.lang.String latexCommand(float scale, java.awt.Dimension canvasDim)
          The LaTeX command that is necessary to draw the given Label using the axodraw.sty package.
 void rescaleObject(int orx, int ory, float scale)
          Rescales this Label by the scale factor scale, keeping the point (orx, ory) fixed.
 void setFilled(boolean fill)
          Fill or not the object
 void setLocationXY(int xin, int yin, int xfin, int yfin)
          Set box location in pixel coordinates
 void setTransparency(float transp)
          Set transparency of this object
 
Methods inherited from class jhplot.jadraw.JaFillObject
getFillColor, getStroke, latexWidth, setFillColor, setStroke
 
Methods inherited from class jhplot.jadraw.JaObject
drawVisualAid, getBoundingBox, getColor, getGeneralPath, getHeight, getRelh, getRelHndc, getRelHuser, getRelSize, getRelw, getRelWndc, getRelWuser, getSize, getWidth, getX, getXndc, getXuser, getY, getYndc, getYuser, isMarked, isUser, moveBy, scalePoint, setAsMarked, setBoundingBox, setColor, setLocation, setLocation, setRelh, setRelw, setRelWAndH, setRelWH, setSize, setX, setY, updateCoor, updateNDC
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JaBox

public JaBox()
Constructor: sets the width, height, getRelw() and getRelh() to a default value of 25.


JaBox

public JaBox(double x1,
             double y1,
             double x2,
             double y2,
             java.lang.String what)
Build a box.

Parameters:
x1 - starting x
y1 - starting y
x2 - end of x
y2 - end of y
what - if "NDC", coordinate in NDC (from 0 to 1), if "USER" coordinates are in the user system given by the axes.
Method Detail

getXYCoord

public int[] getXYCoord(int x,
                        int y,
                        int relw,
                        int relh)
Get coordinates of the box

Parameters:
x -
y -
relw -
relh -
Returns:

setLocationXY

public void setLocationXY(int xin,
                          int yin,
                          int xfin,
                          int yfin)
Set box location in pixel coordinates

Parameters:
xin - min x
yin - max x
xfin - min y
yfin - max y

setFilled

public void setFilled(boolean fill)
Fill or not the object

Parameters:
fill - true is filled

isFilled

public boolean isFilled()
Get the filled style

Returns:

setTransparency

public void setTransparency(float transp)
Set transparency of this object

Parameters:
transp - transparency from 0 to 1

getTransparency

public float getTransparency()
Get the transparency of it

Returns:
transparency

copy

public final JaObject copy()
Returns an exact copy of this Label.

Specified by:
copy in class JaObject
Returns:
A copy of this Label.

isCopy

public final boolean isCopy(JaObject comp)
Returns true if all serializable variables of this JaObject and those of the specified one are equal.

Specified by:
isCopy in class JaObject
Parameters:
comp - A JaObject to compare with.
Returns:
True if the objects are equal, false otherwise.

getGrabbedHandle

public final int getGrabbedHandle(int clickX,
                                  int clickY,
                                  int editmode)
Determines where on this JaObject a mouse click has ocurred.

Specified by:
getGrabbedHandle in class JaObject
Parameters:
clickX - The x position of the point where the mouse click ocurred.
clickY - The y position of the point where the mouse click ocurred.
editmode - The current edit mode as defined in JaxoMainPanel.
Returns:
An integer specifying whether the click ocurred on one of the handles and if yes, on which.

drawHandles

public final void drawHandles(java.awt.Graphics2D g2)
Draws the handles of this box object.

Specified by:
drawHandles in class JaObject
Parameters:
g2 - The current graphics context.

jaxoDraw

public final void jaxoDraw(java.awt.Graphics2D g2,
                           boolean drawToScreen)
The method that draws this Label.

Specified by:
jaxoDraw in class JaObject
Parameters:
g2 - The graphics context where the Label has to be drawn.
drawToScreen - A boolean variable that indicates whether the drawing is done on the screen or somewhere else. This is used for exporting/printing, where the object handles should not be painted, even if they are visible on the screen.

latexCommand

public final java.lang.String latexCommand(float scale,
                                           java.awt.Dimension canvasDim)
The LaTeX command that is necessary to draw the given Label using the axodraw.sty package.

Specified by:
latexCommand in class JaObject
Parameters:
scale - A scale factor to translate Java coordinates to LaTeX coordinates.
canvasDim - The current dimension of the canvas.
Returns:
The corresponding axodraw LaTeX command.

rescaleObject

public final void rescaleObject(int orx,
                                int ory,
                                float scale)
Rescales this Label by the scale factor scale, keeping the point (orx, ory) fixed.

Specified by:
rescaleObject in class JaObject
Parameters:
orx - The x - coordinate of the fixed point
ory - The y - coordinate of the fixed point
scale - The scale parameter

editPanel

public final boolean editPanel()
Brings up the edit panel that allows to change the parameters of this object.

Specified by:
editPanel in class JaObject
Returns:
True if the editing actually changed the object, false if the object has not been changed.


jHepWork 1.1 (C) Chekanov