content: package edu.stanford.rsl.conrad.geometry.shapes.simple;
  
  import edu.stanford.rsl.conrad.numerics.SimpleVector;
  
  /**
   * Class to model a 3D point which contains a vector value.  Point can be used to model a vector in space or a colored point in space.
   * 
   * @author akmaier
   *
   */
  public class VectorPoint3D extends Point3D {
  
  	private static final long serialVersionUID = 3854685720292206922L;
  	protected SimpleVector vector;
  
  	/**
  	 * Creates a new VectorPoint3D at coordinates (x, y, z).
  	 * @param x the x coordinate
  	 * @param y the y coordinate
  	 * @param z the z coordinate
  	 * @param vector the vector as list of double values
  	 */
  	public VectorPoint3D(double x, double y, double z, double... vector){
  		this(x, y, z, new SimpleVector(vector));
  	}
  	
  	/**
  	 * Creates a new VectorPoint3D at coordinates (x, y, z).
  	 * @param x the x coordinate
  	 * @param y the y coordinate
  	 * @param z the z coordinate
  	 * @param vector the vector as SimpleVector
  	 */
  	public VectorPoint3D(double x, double y, double z, SimpleVector vector){
  		super(x, y, z);
  		this.vector = new SimpleVector(vector);
  	}
  	
  	/**
  	 * Creates a new VectorPoint3D at point.
  	 * @param point the point
  	 * @param vector the vector as SimpleVector
  	 */
  	public VectorPoint3D(PointND point, SimpleVector vector){
  		super(point);
  		this.vector = new SimpleVector(vector);
  	}
  	
  	/**
  	 * Creates a new VectorPoint3D at point.
  	 * @param point the point
  	 * @param vector the vector as list of double values
  	 */
  	public VectorPoint3D(PointND point, double ... vector) {
  		this(point, new SimpleVector(vector));
  	}
  
  	/**
  	 * @return the vector
  	 */
  	public SimpleVector getVector() {
  		return vector;
  	}
  
  	/**
  	 * @param vector the vector to set
  	 */
  	public void setVector(SimpleVector vector) {
  		this.vector = vector;
  	}
  	
  
  	
  }
  /*
   * Copyright (C) 2010-2014 Andreas Maier, Rotimi X Ojo 
   * CONRAD is developed as an Open Source project under the GNU General Public License (GPL).
  */