CubbyFlow::ImplicitSurfaceSet2 Class Referencefinal

2-D implicit surface set. More...

#include <Core/Surface/ImplicitSurfaceSet2.h>

Inheritance diagram for CubbyFlow::ImplicitSurfaceSet2:
CubbyFlow::ImplicitSurface2 CubbyFlow::Surface2

Classes

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

Public Member Functions

 ImplicitSurfaceSet2 ()
 Constructs an empty implicit surface set. More...
 
 ImplicitSurfaceSet2 (const std::vector< ImplicitSurface2Ptr > &surfaces, const Transform2 &transform=Transform2(), bool isNormalFlipped=false)
 Constructs an implicit surface set using list of other surfaces. More...
 
 ImplicitSurfaceSet2 (const std::vector< Surface2Ptr > &surfaces, const Transform2 &transform=Transform2(), bool isNormalFlipped=false)
 Constructs an implicit surface set using list of other surfaces. More...
 
 ImplicitSurfaceSet2 (const ImplicitSurfaceSet2 &other)
 Copy constructor. More...
 
void UpdateQueryEngine () override
 Updates internal spatial query engine. More...
 
size_t NumberOfSurfaces () const
 Returns the number of implicit surfaces. More...
 
const ImplicitSurface2PtrSurfaceAt (size_t i) const
 Returns the i-th implicit surface. More...
 
void AddExplicitSurface (const Surface2Ptr &surface)
 Adds an explicit surface instance. More...
 
void AddSurface (const ImplicitSurface2Ptr &surface)
 Adds an implicit surface instance. More...
 
- Public Member Functions inherited from CubbyFlow::ImplicitSurface2
 ImplicitSurface2 (const Transform2 &transform=Transform2(), bool isNormalFlipped=false)
 Default constructor. More...
 
 ImplicitSurface2 (const ImplicitSurface2 &other)
 Copy constructor. More...
 
virtual ~ImplicitSurface2 ()
 Default destructor. More...
 
double SignedDistance (const Vector2D &otherPoint) const
 Returns signed distance from the given point otherPoint. More...
 
- Public Member Functions inherited from CubbyFlow::Surface2
 Surface2 (const Transform2 &transform=Transform2(), bool isNormalFlipped=false)
 Constructs a surface with normal direction. More...
 
 Surface2 (const Surface2 &other)
 Copy constructor. More...
 
virtual ~Surface2 ()
 Default destructor. More...
 
Vector2D ClosestPoint (const Vector2D &otherPoint) const
 Returns the closest point from the given point otherPoint to the surface. More...
 
BoundingBox2D BoundingBox () const
 Returns the bounding box of this surface object. More...
 
bool Intersects (const Ray2D &ray) const
 Returns true if the given ray intersects with this surface object. More...
 
double ClosestDistance (const Vector2D &otherPoint) const
 
SurfaceRayIntersection2 ClosestIntersection (const Ray2D &ray) const
 Returns the closest intersection point for given ray. More...
 
Vector2D ClosestNormal (const Vector2D &otherPoint) const
 

Static Public Member Functions

static Builder GetBuilder ()
 Returns builder fox ImplicitSurfaceSet2. More...
 

Additional Inherited Members

- Public Attributes inherited from CubbyFlow::Surface2
Transform2 transform
 Local-to-world transform. More...
 
bool isNormalFlipped = false
 Flips normal. More...
 

Detailed Description

2-D implicit surface set.

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

Constructor & Destructor Documentation

◆ ImplicitSurfaceSet2() [1/4]

CubbyFlow::ImplicitSurfaceSet2::ImplicitSurfaceSet2 ( )

Constructs an empty implicit surface set.

◆ ImplicitSurfaceSet2() [2/4]

CubbyFlow::ImplicitSurfaceSet2::ImplicitSurfaceSet2 ( const std::vector< ImplicitSurface2Ptr > &  surfaces,
const Transform2 transform = Transform2(),
bool  isNormalFlipped = false 
)

Constructs an implicit surface set using list of other surfaces.

◆ ImplicitSurfaceSet2() [3/4]

CubbyFlow::ImplicitSurfaceSet2::ImplicitSurfaceSet2 ( const std::vector< Surface2Ptr > &  surfaces,
const Transform2 transform = Transform2(),
bool  isNormalFlipped = false 
)

Constructs an implicit surface set using list of other surfaces.

◆ ImplicitSurfaceSet2() [4/4]

CubbyFlow::ImplicitSurfaceSet2::ImplicitSurfaceSet2 ( const ImplicitSurfaceSet2 other)

Copy constructor.

Member Function Documentation

◆ AddExplicitSurface()

void CubbyFlow::ImplicitSurfaceSet2::AddExplicitSurface ( const Surface2Ptr surface)

Adds an explicit surface instance.

◆ AddSurface()

void CubbyFlow::ImplicitSurfaceSet2::AddSurface ( const ImplicitSurface2Ptr surface)

Adds an implicit surface instance.

◆ GetBuilder()

static Builder CubbyFlow::ImplicitSurfaceSet2::GetBuilder ( )
static

Returns builder fox ImplicitSurfaceSet2.

◆ NumberOfSurfaces()

size_t CubbyFlow::ImplicitSurfaceSet2::NumberOfSurfaces ( ) const

Returns the number of implicit surfaces.

◆ SurfaceAt()

const ImplicitSurface2Ptr& CubbyFlow::ImplicitSurfaceSet2::SurfaceAt ( size_t  i) const

Returns the i-th implicit surface.

◆ UpdateQueryEngine()

void CubbyFlow::ImplicitSurfaceSet2::UpdateQueryEngine ( )
overridevirtual

Updates internal spatial query engine.

Reimplemented from CubbyFlow::Surface2.


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