Classes | Public Member Functions | Package Functions | Static Package Functions | Package Attributes
edu.tum.cs.vis.model.util.algorithm.Miniball Class Reference

List of all members.

Classes

class  Miniball_b
class  pvt

Public Member Functions

void build ()
double[] center ()
void check_in (double[] p)
void clear ()
 Miniball (int dim)
int nr_points ()
int nr_support_points ()
double radius ()
double squared_radius ()

Package Functions

double accuracy (double slack)
boolean is_valid (double tolerance)
double max_excess (int t, int i, pvt pivot)
void move_to_front (int j)
void mtf_mb (int i)
void pivot_mb (int i)
int points_end ()
int support_points_end ()

Static Package Functions

static double mb_sqr (double r)
static int points_begin ()
static int support_points_begin ()

Package Attributes

Miniball_b B
int d
ArrayList L
int support_end = 0

Detailed Description

Java Porting of the Miniball.h code of Bernd Gaertner. Look at http://www.inf.ethz.ch/personal/gaertner/miniball.html
and related work at http://www.inf.ethz.ch/personal/gaertner/texts/own_work/esa99_final.pdf
for reading about the algorithm and the implementation of it.

If interested in Bounding Sphere algorithms read also published work of Emo Welzl "Smallest enclosing disks (balls and Ellipsoid)" and the work of Jack Ritter on "Efficient Bounding Spheres" at
http://tog.acm.org/GraphicsGems/gems/BoundSphere.c?searchterm=calc

For Licencing Info report to Bernd Gaertner's one reported below:

Copright (C) 1999-2006, Bernd Gaertner

Revision:
1.3


Date:
2006/11/16 08:01:52



This program 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 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but 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.

You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA,
or download the License terms from prep.ai.mit.edu/pub/gnu/COPYING-2.0.

Contact:
--------
Bernd Gaertner
Institute of Theoretical Computer Science
ETH Zuerich
CAB G32.2
CH-8092 Zuerich, Switzerland
http://www.inf.ethz.ch/personal/gaertner

Original Java port from Paolo Perissinotto for Jpatch Project by Sascha Ledinsky found at http://forum.jpatch.com/viewtopic.php?f=3&t=919

Author:
Paolo Perissinotto for Jpatch Project by Sascha Ledinsky
Version:
1.0 { Date: 2007/11/18 21:57}

used for moa for calculating most compact sphere cluster modified by Timm Jansen (moa@cs.rwth-aachen.de) to be used with high dimensional points

Definition at line 71 of file Miniball.java.


Constructor & Destructor Documentation

Definition at line 249 of file Miniball.java.


Member Function Documentation

double edu.tum.cs.vis.model.util.algorithm.Miniball.accuracy ( double  slack) [inline, package]

Definition at line 255 of file Miniball.java.

Recalculate Miniball parameter Center and Radius

Definition at line 283 of file Miniball.java.

Return the center of the Miniball

Returns:
The center (double[])

Definition at line 294 of file Miniball.java.

Adds a point to the list.
Skip action on null parameter.

Parameters:
pThe object to be added to the list

Definition at line 306 of file Miniball.java.

Method clear: clears the ArrayList of the selection points.
Use it for starting a new selection list to calculate Bounding Sphere on
or to clear memory references to the list of objects.
Always use at the end of a Miniball use if you want to reuse later the Miniball object

Definition at line 321 of file Miniball.java.

boolean edu.tum.cs.vis.model.util.algorithm.Miniball.is_valid ( double  tolerance) [inline, package]

Definition at line 325 of file Miniball.java.

double edu.tum.cs.vis.model.util.algorithm.Miniball.max_excess ( int  t,
int  i,
pvt  pivot 
) [inline, package]

Definition at line 330 of file Miniball.java.

static double edu.tum.cs.vis.model.util.algorithm.Miniball.mb_sqr ( double  r) [inline, static, package]

Definition at line 227 of file Miniball.java.

Definition at line 350 of file Miniball.java.

void edu.tum.cs.vis.model.util.algorithm.Miniball.mtf_mb ( int  i) [inline, package]

Definition at line 361 of file Miniball.java.

Return the actual number of points in the list

Returns:
the actual number of points

Definition at line 386 of file Miniball.java.

Return the number of support points (used to calculate the miniball).
It's and internal info

Returns:
the number of support points

Definition at line 396 of file Miniball.java.

void edu.tum.cs.vis.model.util.algorithm.Miniball.pivot_mb ( int  i) [inline, package]

Definition at line 400 of file Miniball.java.

static int edu.tum.cs.vis.model.util.algorithm.Miniball.points_begin ( ) [inline, static, package]

Definition at line 231 of file Miniball.java.

Definition at line 422 of file Miniball.java.

Return the Radius of the miniball

Returns:
The radius

Definition at line 431 of file Miniball.java.

Return the sqaured Radius of the miniball

Returns:
The square radius

Definition at line 440 of file Miniball.java.

Definition at line 235 of file Miniball.java.

Definition at line 444 of file Miniball.java.


Member Data Documentation

Definition at line 244 of file Miniball.java.

Definition at line 239 of file Miniball.java.

Definition at line 242 of file Miniball.java.

Definition at line 246 of file Miniball.java.


The documentation for this class was generated from the following file:


knowrob_cad_parser
Author(s): Stefan Profanter
autogenerated on Sat Dec 28 2013 17:09:45