PlayRho  1.1.0
An Interactive Real-Time-Oriented C++ Physics Engine & Library
playrho::d2::VertexSet Class Reference

Vertex Set. More...

#include <VertexSet.hpp>

Collaboration diagram for playrho::d2::VertexSet:
[legend]

Public Types

using const_pointer = const Length2 *
 Constant pointer type.
 

Public Member Functions

 VertexSet (Area minSepSquared=GetDefaultMinSeparationSquared())
 Initializing constructor.
 
Area GetMinSeparationSquared () const noexcept
 Gets the min separation squared.
 
bool add (Length2 value)
 Adds the given vertex into the set if allowed.
 
void clear () noexcept
 Clear this set.
 
std::size_t size () const noexcept
 Gets the current size of this set.
 
const_pointer data () const
 Gets the pointer to the data buffer.
 
const_pointer begin () const
 Gets the "begin" iterator value.
 
const_pointer end () const
 Gets the "end" iterator value.
 
const_pointer find (Length2 value) const
 Finds contained point whose delta with the given point has a squared length less than or equal to this set's minimum length squared value.
 
Length2 operator[] (std::size_t index) const noexcept
 Indexed access.
 

Static Public Member Functions

static Area GetDefaultMinSeparationSquared ()
 Gets the default minimum separation squared value.
 

Private Attributes

std::vector< Length2m_elements
 Elements.
 
const Area m_minSepSquared
 Minimum length squared. sizeof(Vec2)/2 or 4-bytes.
 

Detailed Description

Vertex Set.

This is a container that enforces the invariant that no two vertices can be closer together than the minimum separation distance.


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