CubbyFlow::SurfaceSet3 Class Referencefinal

3-D surface set. More...

#include <Core/Surface/SurfaceSet3.h>

Inheritance diagram for CubbyFlow::SurfaceSet3:
CubbyFlow::Surface3

Classes

class  Builder
 Front-end to create SurfaceSet3 objects step by step. More...
 

Public Member Functions

 SurfaceSet3 ()
 Constructs an empty surface set. More...
 
 SurfaceSet3 (const std::vector< Surface3Ptr > &others, const Transform3 &transform=Transform3(), bool isNormalFlipped=false)
 Constructs with a list of other surfaces. More...
 
 SurfaceSet3 (const SurfaceSet3 &other)
 Copy constructor. More...
 
void UpdateQueryEngine () override
 Updates internal spatial query engine. More...
 
size_t NumberOfSurfaces () const
 Returns the number of surfaces. More...
 
const Surface3PtrSurfaceAt (size_t i) const
 Returns the i-th surface. More...
 
void AddSurface (const Surface3Ptr &surface)
 Adds a surface instance. More...
 
- Public Member Functions inherited from CubbyFlow::Surface3
 Surface3 (const Transform3 &transform=Transform3(), bool isNormalFlipped=false)
 Constructs a surface with normal direction. More...
 
 Surface3 (const Surface3 &other)
 Copy constructor. More...
 
virtual ~Surface3 ()
 Default destructor. More...
 
Vector3D ClosestPoint (const Vector3D &otherPoint) const
 Returns the closest point from the given point otherPoint to the surface. More...
 
BoundingBox3D BoundingBox () const
 Returns the bounding box of this surface object. More...
 
bool Intersects (const Ray3D &ray) const
 Returns true if the given ray intersects with this surface object. More...
 
double ClosestDistance (const Vector3D &otherPoint) const
 
SurfaceRayIntersection3 ClosestIntersection (const Ray3D &ray) const
 Returns the closest intersection point for given ray. More...
 
Vector3D ClosestNormal (const Vector3D &otherPoint) const
 

Static Public Member Functions

static Builder GetBuilder ()
 Returns builder for SurfaceSet3. More...
 

Additional Inherited Members

- Public Attributes inherited from CubbyFlow::Surface3
Transform3 transform
 Local-to-world transform. More...
 
bool isNormalFlipped = false
 Flips normal when calling Surface3::closestNormal(...). More...
 

Detailed Description

3-D surface set.

This class represents 3-D surface set which extends Surface3 by overriding surface-related queries. This is class can hold a collection of other surface instances.

Constructor & Destructor Documentation

◆ SurfaceSet3() [1/3]

CubbyFlow::SurfaceSet3::SurfaceSet3 ( )

Constructs an empty surface set.

◆ SurfaceSet3() [2/3]

CubbyFlow::SurfaceSet3::SurfaceSet3 ( const std::vector< Surface3Ptr > &  others,
const Transform3 transform = Transform3(),
bool  isNormalFlipped = false 
)
explicit

Constructs with a list of other surfaces.

◆ SurfaceSet3() [3/3]

CubbyFlow::SurfaceSet3::SurfaceSet3 ( const SurfaceSet3 other)

Copy constructor.

Member Function Documentation

◆ AddSurface()

void CubbyFlow::SurfaceSet3::AddSurface ( const Surface3Ptr surface)

Adds a surface instance.

◆ GetBuilder()

static Builder CubbyFlow::SurfaceSet3::GetBuilder ( )
static

Returns builder for SurfaceSet3.

◆ NumberOfSurfaces()

size_t CubbyFlow::SurfaceSet3::NumberOfSurfaces ( ) const

Returns the number of surfaces.

◆ SurfaceAt()

const Surface3Ptr& CubbyFlow::SurfaceSet3::SurfaceAt ( size_t  i) const

Returns the i-th surface.

◆ UpdateQueryEngine()

void CubbyFlow::SurfaceSet3::UpdateQueryEngine ( )
overridevirtual

Updates internal spatial query engine.

Reimplemented from CubbyFlow::Surface3.


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