net.sf.latexdraw.glib.models.impl
Class LPicture

java.lang.Object
  extended by net.sf.latexdraw.glib.models.impl.LShape
      extended by net.sf.latexdraw.glib.models.impl.LPositionShape
          extended by net.sf.latexdraw.glib.models.impl.LPicture
All Implemented Interfaces:
IArrowable, IPicture, IPositionShape, IShape, Modifiable

 class LPicture
extends LPositionShape
implements IPicture

Defines a model of a picture.

This file is part of LaTeXDraw.
Copyright (c) 2005-2012 Arnaud BLOUIN

LaTeXDraw is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
LaTeXDraw is distributed without any warranty; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

07/05/2009

Since:
3.0
Version:
3.0
Author:
Arnaud BLOUIN

Nested Class Summary
 
Nested classes/interfaces inherited from interface net.sf.latexdraw.glib.models.interfaces.IShape
IShape.BorderPos, IShape.FillingStyle, IShape.LineStyle, IShape.Position
 
Field Summary
protected  java.awt.Image image
          The buffered image.
protected  java.lang.String pathSource
          The path of the source image.
protected  java.lang.String pathTarget
          The path of the eps image.
 
Fields inherited from class net.sf.latexdraw.glib.models.impl.LShape
arrows, bordersPosition, dashSepBlack, dashSepWhite, dbleBordCol, dbleBordSep, dotSep, fillingCol, fillingStyle, gradAngle, gradColEnd, gradColStart, gradMidPt, hasDbleBord, hasShadow, hatchingsAngle, hatchingsCol, hatchingsSep, hatchingsWidth, id, lineColour, lineStyle, modified, opacity, points, rotationAngle, shadowAngle, shadowCol, shadowSize, showPts, thickness
 
Fields inherited from interface net.sf.latexdraw.glib.models.interfaces.IShape
GOLDEN_ANGLE, PPC
 
Constructor Summary
protected LPicture(boolean isUniqueID, IPoint pt)
          Creates a picture and the corresponding EPS picture.
 
Method Summary
 void copy(IShape sh)
          Copies a shape using another.
protected  void createEPSImage()
          Creates an EPS image from the source one.
 IPicture duplicate()
          Creates a duplicate of the shape (however id are not the same).
 int getHeight()
           
 java.awt.Image getImage()
           
 java.lang.String getPathSource()
           
 java.lang.String getPathTarget()
           
 int getWidth()
           
 boolean isColourable()
           
protected  void loadImage()
          Loads the image using the source path and creates the eps picture.
 void setPathSource(java.lang.String pathSource)
          Sets the new picture.
 
Methods inherited from class net.sf.latexdraw.glib.models.impl.LPositionShape
getPosition, getX, getY, setPosition, setPosition, setX, setY
 
Methods inherited from class net.sf.latexdraw.glib.models.impl.LShape
addToRotationAngle, copyArrows, copyPoints, getArrowAt, getArrowInset, getArrowLength, getArrowLine, getArrows, getArrowSizeDim, getArrowSizeNum, getArrowStyle, getBorderGap, getBordersPosition, getBottomLeftPoint, getBottomRightPoint, getBracketNum, getDashSepBlack, getDashSepWhite, getDbleBordCol, getDbleBordSep, getDotSep, getDotSizeDim, getDotSizeNum, getFillingCol, getFillingStyle, getFullBottomRightPoint, getFullTopLeftPoint, getGradAngle, getGradColEnd, getGradColStart, getGradMidPt, getGravityCentre, getHatchingsAngle, getHatchingsCol, getHatchingsSep, getHatchingsWidth, getId, getLineColour, getLineStyle, getNbPoints, getOpacity, getPoints, getPtAt, getRBracketNum, getRotationAngle, getShadowAngle, getShadowCol, getShadowGap, getShadowSize, getTBarSizeDim, getTBarSizeNum, getThickness, getTopLeftPoint, getTopRightPoint, hasDbleBord, hasGradient, hasHatchings, hasShadow, isArrowable, isBordersMovable, isDbleBorderable, isFillable, isFilled, isInteriorStylable, isLineStylable, isModified, isParametersEquals, isShadowable, isShowPts, isShowPtsable, isThicknessable, mirrorHorizontal, mirrorVertical, rotate, scale, scaleSetPoints, setArrowInset, setArrowLength, setArrowSizeDim, setArrowSizeNum, setArrowStyle, setBordersPosition, setBracketNum, setDashSepBlack, setDashSepWhite, setDbleBordCol, setDbleBordSep, setDotSep, setDotSizeDim, setDotSizeNum, setFilled, setFillingCol, setFillingStyle, setGradAngle, setGradColEnd, setGradColStart, setGradMidPt, setHasDbleBord, setHasShadow, setHatchingsAngle, setHatchingsCol, setHatchingsSep, setHatchingsWidth, setId, setLineColour, setLineStyle, setModified, setNewId, setOpacity, setRBracketNum, setRotationAngle, setShadowAngle, setShadowCol, setShadowSize, setShowPts, setTBarSizeDim, setTBarSizeNum, setThickness, shadowFillsShape, translate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface net.sf.latexdraw.glib.models.interfaces.IPositionShape
getPosition, getX, getY, setPosition, setPosition, setX, setY
 
Methods inherited from interface net.sf.latexdraw.glib.models.interfaces.IShape
addToRotationAngle, getArrowAt, getArrowLine, getArrows, getArrowStyle, getBorderGap, getBordersPosition, getBottomLeftPoint, getBottomRightPoint, getDashSepBlack, getDashSepWhite, getDbleBordCol, getDbleBordSep, getDotSep, getFillingCol, getFillingStyle, getFullBottomRightPoint, getFullTopLeftPoint, getGradAngle, getGradColEnd, getGradColStart, getGradMidPt, getGravityCentre, getHatchingsAngle, getHatchingsCol, getHatchingsSep, getHatchingsWidth, getId, getLineColour, getLineStyle, getNbPoints, getOpacity, getPoints, getPtAt, getRotationAngle, getShadowAngle, getShadowCol, getShadowGap, getShadowSize, getThickness, getTopLeftPoint, getTopRightPoint, hasDbleBord, hasGradient, hasHatchings, hasShadow, isArrowable, isBordersMovable, isDbleBorderable, isFillable, isFilled, isInteriorStylable, isLineStylable, isParametersEquals, isShadowable, isShowPts, isShowPtsable, isThicknessable, mirrorHorizontal, mirrorVertical, rotate, scale, setArrowStyle, setBordersPosition, setDashSepBlack, setDashSepWhite, setDbleBordCol, setDbleBordSep, setDotSep, setFilled, setFillingCol, setFillingStyle, setGradAngle, setGradColEnd, setGradColStart, setGradMidPt, setHasDbleBord, setHasShadow, setHatchingsAngle, setHatchingsCol, setHatchingsSep, setHatchingsWidth, setId, setLineColour, setLineStyle, setNewId, setOpacity, setRotationAngle, setShadowAngle, setShadowCol, setShadowSize, setShowPts, setThickness, shadowFillsShape, translate
 
Methods inherited from interface org.malai.properties.Modifiable
isModified, setModified
 
Methods inherited from interface net.sf.latexdraw.glib.models.interfaces.IArrowable
getArrowInset, getArrowLength, getArrowSizeDim, getArrowSizeNum, getBracketNum, getDotSizeDim, getDotSizeNum, getRBracketNum, getTBarSizeDim, getTBarSizeNum, setArrowInset, setArrowLength, setArrowSizeDim, setArrowSizeNum, setBracketNum, setDotSizeDim, setDotSizeNum, setRBracketNum, setTBarSizeDim, setTBarSizeNum
 

Field Detail

image

protected java.awt.Image image
The buffered image.


pathTarget

protected java.lang.String pathTarget
The path of the eps image.


pathSource

protected java.lang.String pathSource
The path of the source image.

Constructor Detail

LPicture

protected LPicture(boolean isUniqueID,
                   IPoint pt)
Creates a picture and the corresponding EPS picture.

Parameters:
isUniqueID - True: the shape will have a unique ID.
pt - The position of the top-left point of the picture.
Throws:
java.lang.IllegalArgumentException - If the given picture path is not valid.
Method Detail

loadImage

protected void loadImage()
                  throws java.io.IOException
Loads the image using the source path and creates the eps picture.

Throws:
java.io.IOException - If the picture cannot be loaded.
Since:
3.0

copy

public void copy(IShape sh)
Description copied from interface: IShape
Copies a shape using another.

Specified by:
copy in interface IShape
Overrides:
copy in class LShape
Parameters:
sh - The shape to copy.

createEPSImage

protected void createEPSImage()
                       throws java.io.IOException
Creates an EPS image from the source one.

Throws:
java.io.IOException - If a problem while reading/writing files occurs.
java.io.IOException - If the writing is not possible.
Since:
2.0.0

getHeight

public int getHeight()
Specified by:
getHeight in interface IPicture
Returns:
The height of the picture.

getImage

public java.awt.Image getImage()
Specified by:
getImage in interface IPicture
Returns:
the image.

getPathSource

public java.lang.String getPathSource()
Specified by:
getPathSource in interface IPicture
Returns:
the pathSource.

getPathTarget

public java.lang.String getPathTarget()
Specified by:
getPathTarget in interface IPicture
Returns:
the pathTarget.

getWidth

public int getWidth()
Specified by:
getWidth in interface IPicture
Returns:
The width of the picture.

setPathSource

public void setPathSource(java.lang.String pathSource)
                   throws java.io.IOException
Description copied from interface: IPicture
Sets the new picture.

Specified by:
setPathSource in interface IPicture
Parameters:
pathSource - the pathSource to set.
Throws:
java.io.IOException - If a problem while reading/writing pictures occurs.

duplicate

public IPicture duplicate()
Description copied from interface: IShape
Creates a duplicate of the shape (however id are not the same).

Specified by:
duplicate in interface IPicture
Specified by:
duplicate in interface IShape
Overrides:
duplicate in class LShape
Returns:
The duplicata.

isColourable

public boolean isColourable()
Specified by:
isColourable in interface IShape
Overrides:
isColourable in class LShape
Returns:
True if the shape can have colours.