hemocell
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
geom::Difference Class Reference

Create the boolean difference of the first and subsequent domains. This creates the boolean difference between the first domain with respect to any of the subsequent domains. The difference is considered true if the first domain is true and none of the other domains are true. More...

#include <geometry.h>

Inheritance diagram for geom::Difference:
Inheritance graph
[legend]
Collaboration diagram for geom::Difference:
Collaboration graph
[legend]

Public Member Functions

 Difference (std::initializer_list< std::reference_wrapper< plb::DomainFunctional3D > > domains)
 
bool operator() (plb::plint x, plb::plint y, plb::plint z) const override
 Return true if the first domain is true and none of the others.
 
Differenceclone () const override
 

Private Attributes

std::vector< std::reference_wrapper< plb::DomainFunctional3D > > domains
 

Detailed Description

Create the boolean difference of the first and subsequent domains. This creates the boolean difference between the first domain with respect to any of the subsequent domains. The difference is considered true if the first domain is true and none of the other domains are true.

NOTE: when only a single domain is provided, the difference returns false.

Constructor & Destructor Documentation

◆ Difference()

geom::Difference::Difference ( std::initializer_list< std::reference_wrapper< plb::DomainFunctional3D > >  domains)
inline

Member Function Documentation

◆ clone()

Difference * geom::Difference::clone ( ) const
inlineoverride

◆ operator()()

bool geom::Difference::operator() ( plb::plint  x,
plb::plint  y,
plb::plint  z 
) const
inlineoverride

Return true if the first domain is true and none of the others.

Member Data Documentation

◆ domains

std::vector<std::reference_wrapper<plb::DomainFunctional3D> > geom::Difference::domains
private