|
ESyS-Particle
2.3
|
#include <RandomBlockGenerator.h>


Public Member Functions | |
| RandomBlockGenerator (NTable &nTable, ParticlePool &particlePool, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double minSphereRadius, double maxSphereRadius, const PlaneVector &fitPlaneVector, int maxInsertionFailures) | |
| virtual | ~RandomBlockGenerator () |
| virtual bool | particleFits (const SimpleParticle &particle) const |
| virtual void | generate () |
| double | getRandom (double min, double max) const |
| virtual double | getRadius () const |
| virtual double | getGridRadius () const |
| Vec3 | getRandomPoint () const |
| ParticleVector | getClosestNeighbors (const SimpleParticle &particle, int numClosest) |
| int | getMaxInsertionFailures () const |
| FitterPtrVector | getFitterPtrVector () |
| void | generateFillParticles () |
| const PlaneVector & | getFitPlaneVector () const |
| Plane3D | getClosestFitPlane (const SimpleParticle &particle) const |
Public Member Functions inherited from esys::lsm::BlockGenerator | |
| BlockGenerator (NTable &nTable, ParticlePool &particlePool, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance) | |
| virtual | ~BlockGenerator () |
| virtual void | generateSeedParticles () |
| virtual SimpleParticle | generateParticle (const Vec3 &point) |
| size_t | getNumParticles () const |
| int | getNextId () |
| bool | is2d () const |
| bool | particleFitsInBBox (const SimpleParticle &particle) const |
| bool | particleFitsWithNeighbours (const SimpleParticle &particle) const |
| void | insertParticle (const SimpleParticle &particle) |
| double | getTolerance () const |
| const BoundingBox & | getBBox () const |
| bool | contains (const SimpleParticle &particle) const |
| ParticleIterator | getParticleIterator () |
Public Member Functions inherited from esys::lsm::ParticleGenerator | |
| ParticleGenerator (NTable &nTable, ParticlePool &particlePool) | |
| virtual | ~ParticleGenerator () |
Private Attributes | |
| double | m_minRadius |
| double | m_maxRadius |
| PlaneVector | m_fitPlaneVector |
| int | m_maxInsertionFailures |
Additional Inherited Members | |
Public Types inherited from esys::lsm::BlockGenerator | |
| typedef NTable::ParticleVector | ParticleVector |
| typedef NTable::ParticleIterator | ParticleIterator |
| typedef std::set< int > | IdSet |
Public Types inherited from esys::lsm::ParticleGenerator | |
| typedef CircularNeighbourTable < SimpleParticle > | NTable |
| typedef boost::object_pool < SimpleParticle > | ParticlePool |
Protected Member Functions inherited from esys::lsm::ParticleGenerator | |
| ParticleGenerator () | |
| NTable & | getNTable () |
| const NTable & | getNTable () const |
| ParticlePool & | getParticlePool () |
| const ParticlePool & | getParticlePool () const |
| esys::lsm::RandomBlockGenerator::RandomBlockGenerator | ( | NTable & | nTable, |
| ParticlePool & | particlePool, | ||
| const BoundingBox & | bBox, | ||
| const BoolVector & | periodicDimensions, | ||
| double | tolerance, | ||
| double | minSphereRadius, | ||
| double | maxSphereRadius, | ||
| const PlaneVector & | fitPlaneVector, | ||
| int | maxInsertionFailures | ||
| ) |
|
virtual |
|
virtual |
Implements esys::lsm::BlockGenerator.
References generateFillParticles(), and esys::lsm::BlockGenerator::generateSeedParticles().

| void esys::lsm::RandomBlockGenerator::generateFillParticles | ( | ) |
References console, esys::lsm::BlockGenerator::generateParticle(), esys::lsm::BlockGenerator::getBBox(), getClosestFitPlane(), getClosestNeighbors(), getFitterPtrVector(), getMaxInsertionFailures(), esys::lsm::BoundingBox::getMaxPt(), esys::lsm::BoundingBox::getMinPt(), getRandomPoint(), esys::lsm::BoundingBox::getSizes(), BasicCon::Info(), esys::lsm::BlockGenerator::insertParticle(), esys::lsm::ParticleFitter::INVALID, SimpleParticle::isValid(), and esys::lsm::StringUtil::toString().
Referenced by generate().


| Plane3D esys::lsm::RandomBlockGenerator::getClosestFitPlane | ( | const SimpleParticle & | particle | ) | const |
References getFitPlaneVector().
Referenced by generateFillParticles().


| RandomBlockGenerator::ParticleVector esys::lsm::RandomBlockGenerator::getClosestNeighbors | ( | const SimpleParticle & | particle, |
| int | numClosest | ||
| ) |
References esys::lsm::ParticleGenerator::getNTable(), SimpleParticle::getPos(), esys::lsm::BlockGenerator::getTolerance(), esys::lsm::NeighbourTable< TmplParticle >::getUniqueNeighbourVector(), and m_maxRadius.
Referenced by generateFillParticles().


| const PlaneVector & esys::lsm::RandomBlockGenerator::getFitPlaneVector | ( | ) | const |
References m_fitPlaneVector.
Referenced by getClosestFitPlane(), and getFitterPtrVector().

| FitterPtrVector esys::lsm::RandomBlockGenerator::getFitterPtrVector | ( | ) |
References getFitPlaneVector(), and esys::lsm::BlockGenerator::is2d().
Referenced by generateFillParticles().


|
virtual |
Implements esys::lsm::BlockGenerator.
References m_maxRadius.
| int esys::lsm::RandomBlockGenerator::getMaxInsertionFailures | ( | ) | const |
References m_maxInsertionFailures.
Referenced by generateFillParticles().

|
virtual |
Implements esys::lsm::BlockGenerator.
References getRandom(), m_maxRadius, and m_minRadius.

| double esys::lsm::RandomBlockGenerator::getRandom | ( | double | min, |
| double | max | ||
| ) | const |
| Vec3 esys::lsm::RandomBlockGenerator::getRandomPoint | ( | ) | const |
References esys::lsm::BlockGenerator::getBBox(), and getRandom().
Referenced by generateFillParticles().


|
virtual |
Reimplemented from esys::lsm::BlockGenerator.
References SimpleParticle::getRad(), m_maxRadius, m_minRadius, and esys::lsm::BlockGenerator::particleFits().
Referenced by esys::lsm::ParticleFitter::particleFits().


|
private |
Referenced by getFitPlaneVector().
|
private |
Referenced by getMaxInsertionFailures().
|
private |
Referenced by getClosestNeighbors(), getGridRadius(), getRadius(), and particleFits().
|
private |
Referenced by getRadius(), and particleFits().