Package gwt.g2d.client.graphics.shapes

Source Code of gwt.g2d.client.graphics.shapes.CircleShape

package gwt.g2d.client.graphics.shapes;


import com.google.gwt.canvas.dom.client.Context2d;

import gwt.g2d.client.graphics.Surface;
import gwt.g2d.client.math.Circle;
import gwt.g2d.client.math.MathHelper;
import gwt.g2d.shared.math.Vector2;

/**
* Represents a circular shape.
*
* @author hao1300@gmail.com
*/
public class CircleShape extends Shape {
 
  // center
  private Vector2 fCenter;
 
  // radius
  private double fRadius;
 
  public CircleShape(double centerX, double centerY, double radius) {
    this(new Vector2(centerX, centerY), radius);
  }
 
  public CircleShape(Vector2 center, double radius) {
    fCenter = center;
    fRadius = radius;
  }
 
  public CircleShape(Circle circle) {
    this(circle.getCenter(), circle.getRadius());
  }
 
  public Vector2 getCenter() {
    return fCenter;
  }
 
  public void setCenter(Vector2 center) {
    fCenter = center;
  }

  @Override
  public void draw(Surface surface) {
    Context2d context = surface.getContext();
    context.beginPath();
    context.arc(fCenter.x, fCenter.y, fRadius, 0, MathHelper.TWO_PI, true);
    context.closePath();
  }
}
TOP

Related Classes of gwt.g2d.client.graphics.shapes.CircleShape

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.