ImageScience 3.0.0

imagescience.mesh
Class Sphere

java.lang.Object
  extended by imagescience.mesh.Sphere

public class Sphere
extends java.lang.Object

Triangular mesh of a sphere in 3D. The mesh is created by recursive subdivision of an icosahedron.


Constructor Summary
Sphere(int lod)
          Constructs the mesh of a unit sphere at the given level of detail.
 
Method Summary
 java.util.Vector<javax.vecmath.Point3f> render(javax.vecmath.Point3f center, float radius)
          Returns a copy of the sphere mesh at the given center position and with given radius.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Sphere

public Sphere(int lod)
Constructs the mesh of a unit sphere at the given level of detail.

Parameters:
lod - The level of detail. The number of subdivisions of the icosahedron. At minimum level 0 the sphere has 20 faces.
Throws:
java.lang.IllegalArgumentException - If lod is less than 0.
Method Detail

render

public java.util.Vector<javax.vecmath.Point3f> render(javax.vecmath.Point3f center,
                                                      float radius)
Returns a copy of the sphere mesh at the given center position and with given radius.

Parameters:
center - The center position of the sphere.
radius - The radius of the sphere.
Returns:
A new Vector<Point3f> object containing the triangles of the sphere mesh. Each vector element is one vertex of the mesh and each successive three elements constitute one triangle. For memory efficiency, vertices are shared between adjacent triangles. That is, the corresponding Point3f elements are handles of the same object.
Throws:
java.lang.IllegalArgumentException - If radius is less than 0.

ImageScience 3.0.0

Copyright (C) Erik Meijering. Permission to use this software and corresponding documentation for educational, research, and not-for-profit purposes, without a fee and without a signed licensing agreement, is granted, subject to the following terms and conditions.

IT IS NOT ALLOWED TO REDISTRIBUTE, SELL, OR LEASE THIS SOFTWARE, OR DERIVATIVE WORKS THEREOF, WITHOUT PERMISSION IN WRITING FROM THE COPYRIGHT HOLDER. THE COPYRIGHT HOLDER IS FREE TO MAKE VERSIONS OF THE SOFTWARE AVAILABLE FOR A FEE OR COMMERCIALLY ONLY.

IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, OF ANY KIND WHATSOEVER, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.

THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE EXPRESS OR IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE AND CORRESPONDING DOCUMENTATION IS PROVIDED "AS IS". THE COPYRIGHT HOLDER HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.