SVGPathSegCurvetoCubicSmooth.java :  » Graphic-Library » LaTeXDraw-2.0.8 » latexDraw » parsers » svg » elements » path » Java Open Source

Java Open Source » Graphic Library » LaTeXDraw 2.0.8 
LaTeXDraw 2.0.8 » latexDraw » parsers » svg » elements » path » SVGPathSegCurvetoCubicSmooth.java
package latexDraw.parsers.svg.elements.path;

/**
 * Defines the SVGPath smooth curveto segment.<br>
 *<br>
 * This file is part of LaTeXDraw.<br>
 * Copyright (c) 2005-2008 Arnaud BLOUIN<br>
 *<br>
 *  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.<br>
 *<br>
 *  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.<br>
 *<br>
 * 10/20/07<br>
 * @author Arnaud BLOUIN<br>
 * @version 0.1<br>
 * @since 0.1
 */
public class SVGPathSegCurvetoCubicSmooth extends SVGPathSeg
{
  /** The X-coordinate of the second point of the curve. @since 0.1 */
  protected double x;
  
  /** The Y-coordinate of the second point of the curve. @since 0.1 */
  protected double y;
  
  /** The x-coordinate of the second control point. @since 0.1 */
  protected double x2;
  
  /** The y-coordinate of the second control point. @since 0.1 */
  protected double y2;
  
  
  /**
   * The main constructor.
   * @param x The X-coordinate of the second point of the curve.
   * @param y The Y-coordinate of the second point of the curve.
   * @param x2 The x-coordinate of the second control point.
   * @param y2 The y-coordinate of the second control point.
   * @param isRelative isRelative True: the path segment is relative, false it is absolute.
   */
  public SVGPathSegCurvetoCubicSmooth(double x, double y, double x2, double y2, boolean isRelative)
  {
    super(isRelative);
    
    this.x = x;
    this.y = y;
    this.x2 = x2;
    this.y2 = y2;
  }

  
  @Override
  public String toString()
  {
    StringBuffer stringBuffer = new StringBuffer();
    
    stringBuffer.append((isRelative() ? "s" : "S"));//$NON-NLS-1$//$NON-NLS-2$
    stringBuffer.append(' ');
    stringBuffer.append(x2);
    stringBuffer.append(' ');
    stringBuffer.append(y2);
    stringBuffer.append(' ');
    stringBuffer.append(x);
    stringBuffer.append(' ');
    stringBuffer.append(y);
    
    return stringBuffer.toString();
  }
  
  
  /**
   * @return the x.
   * @since 0.1
   */
  public double getX()
  {
    return x;
  }

  
  /**
   * @return the y.
   * @since 0.1
   */
  public double getY()
  {
    return y;
  }

  
  /**
   * @return the x2.
   * @since 0.1
   */
  public double getX2()
  {
    return x2;
  }

  
  /**
   * @return the y2.
   * @since 0.1
   */
  public double getY2()
  {
    return y2;
  }

  @Override
  public PathSeg getType()
  {
    return isRelative() ? PathSeg.CURVETO_CUBIC_SMOOTH_REL : PathSeg.CURVETO_CUBIC_SMOOTH_ABS;
  }
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.