All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Classes | Public Member Functions | Public Attributes | Static Private Member Functions
fcl::kIOS Class Reference

A class describing the kIOS collision structure, which is a set of spheres. More...

#include <kIOS.h>

List of all members.

Classes

struct  kIOS_Sphere
 One sphere in kIOS. More...

Public Member Functions

const Vec3fcenter () const
 Center of the kIOS.
bool contain (const Vec3f &p) const
 Check whether the kIOS contains a point.
FCL_REAL depth () const
 Depth of the kIOS.
FCL_REAL distance (const kIOS &other, Vec3f *P=NULL, Vec3f *Q=NULL) const
 The distance between two kIOS.
FCL_REAL height () const
 Height of the kIOS.
kIOS operator+ (const kIOS &other) const
 Return the merged kIOS of current kIOS and the other one.
kIOSoperator+= (const Vec3f &p)
 A simple way to merge the kIOS and a point.
kIOSoperator+= (const kIOS &other)
 Merge the kIOS and another kIOS.
bool overlap (const kIOS &other) const
 Check collision between two kIOS.
bool overlap (const kIOS &other, kIOS &overlap_part) const
 Check collision between two kIOS and return the overlap part. For kIOS, we return nothing, as the overlappart of two kIOS usually is not an kIOS.
FCL_REAL size () const
 size of the kIOS (used in BV_Splitter to order two kIOSs)
FCL_REAL volume () const
 Volume of the kIOS.
FCL_REAL width () const
 Width of the kIOS.

Public Attributes

unsigned int num_spheres
 The number of spheres, no larger than 5.
OBB obb
 @ OBB related with kIOS
kIOS_Sphere spheres [5]
 The (at most) five spheres for intersection.

Static Private Member Functions

static kIOS_Sphere encloseSphere (const kIOS_Sphere &s0, const kIOS_Sphere &s1)
 generate one sphere enclosing two spheres

Detailed Description

A class describing the kIOS collision structure, which is a set of spheres.

Definition at line 47 of file kIOS.h.


Member Function Documentation

const Vec3f& fcl::kIOS::center ( ) const [inline]

Center of the kIOS.

Definition at line 120 of file kIOS.h.

bool fcl::kIOS::contain ( const Vec3f p) const [inline]

Check whether the kIOS contains a point.

Definition at line 66 of file kIOS.cpp.

Depth of the kIOS.

Definition at line 120 of file kIOS.cpp.

FCL_REAL fcl::kIOS::distance ( const kIOS other,
Vec3f P = NULL,
Vec3f Q = NULL 
) const

The distance between two kIOS.

Definition at line 135 of file kIOS.cpp.

static kIOS_Sphere fcl::kIOS::encloseSphere ( const kIOS_Sphere s0,
const kIOS_Sphere s1 
) [inline, static, private]

generate one sphere enclosing two spheres

The sphere with the larger radius encloses the other

spheres partially overlapping or disjoint

Definition at line 57 of file kIOS.h.

Height of the kIOS.

Definition at line 115 of file kIOS.cpp.

kIOS fcl::kIOS::operator+ ( const kIOS other) const

Return the merged kIOS of current kIOS and the other one.

Definition at line 94 of file kIOS.cpp.

kIOS & fcl::kIOS::operator+= ( const Vec3f p)

A simple way to merge the kIOS and a point.

Definition at line 78 of file kIOS.cpp.

kIOS& fcl::kIOS::operator+= ( const kIOS other) [inline]

Merge the kIOS and another kIOS.

Definition at line 110 of file kIOS.h.

bool fcl::kIOS::overlap ( const kIOS other) const

Check collision between two kIOS.

Definition at line 47 of file kIOS.cpp.

bool fcl::kIOS::overlap ( const kIOS other,
kIOS overlap_part 
) const [inline]

Check collision between two kIOS and return the overlap part. For kIOS, we return nothing, as the overlappart of two kIOS usually is not an kIOS.

Todo:
Not efficient. It first checks the sphere collisions and then use OBB for further culling.

Definition at line 98 of file kIOS.h.

size of the kIOS (used in BV_Splitter to order two kIOSs)

Definition at line 130 of file kIOS.cpp.

Volume of the kIOS.

Definition at line 125 of file kIOS.cpp.

Width of the kIOS.

Definition at line 110 of file kIOS.cpp.


Member Data Documentation

unsigned int fcl::kIOS::num_spheres

The number of spheres, no larger than 5.

Definition at line 87 of file kIOS.h.

@ OBB related with kIOS

Definition at line 90 of file kIOS.h.

The (at most) five spheres for intersection.

Definition at line 84 of file kIOS.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


fcl
Author(s): Jia Pan
autogenerated on Tue Jan 15 2013 16:05:31