Go to the documentation of this file.
14 #ifndef ESYS_LSMRANDOMBLOCKGENERATOR_H
15 #define ESYS_LSMRANDOMBLOCKGENERATOR_H
21 #include <boost/shared_ptr.hpp>
30 typedef boost::shared_ptr<ParticleFitter>
FitterPtr;
45 double minSphereRadius,
46 double maxSphereRadius,
48 int maxInsertionFailures
57 double getRandom(
double min,
double max)
const;
double getRad() const
Definition: SimpleParticle.hpp:70
Definition: ParticleComparer.h:23
virtual SimpleParticle generateParticle(const Vec3 &point)
Definition: BlockGenerator.cpp:137
const BoundingBox & getBBox() const
Definition: BlockGenerator.cpp:41
virtual void generate()
Definition: RandomBlockGenerator.cpp:223
double m_minRadius
Definition: RandomBlockGenerator.h:78
bool is2d() const
Definition: BlockGenerator.cpp:61
Console & Info()
set verbose level of next message to "inf"
double getRandom(double min, double max) const
Definition: RandomBlockGenerator.cpp:54
NTable & getNTable()
Definition: ParticleGenerator.cpp:40
Definition: BlockGenerator.h:33
double getTolerance() const
Definition: BlockGenerator.cpp:56
boost::object_pool< SimpleParticle > ParticlePool
Definition: ParticleGenerator.h:33
PlaneComparer(const SimpleParticle &particle)
Definition: RandomBlockGenerator.cpp:75
::Plane3D Plane3D
Definition: Plane3D.h:60
Definition: ParticleFitter.h:167
const Vec3 & getPos() const
Definition: SimpleParticle.hpp:30
bool operator()(const Plane3D &plane1, const Plane3D &plane2) const
Definition: RandomBlockGenerator.cpp:80
bool isValid() const
Definition: SimpleParticle.hpp:80
const Vec3 & getMaxPt() const
Definition: BoundingBox.hpp:45
int m_maxInsertionFailures
Definition: RandomBlockGenerator.h:81
Definition: RandomBlockGenerator.cpp:73
RandomBlockGenerator(NTable &nTable, ParticlePool &particlePool, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double minSphereRadius, double maxSphereRadius, const PlaneVector &fitPlaneVector, int maxInsertionFailures)
Definition: RandomBlockGenerator.cpp:31
Class representing a Plane3D.
Definition: Plane3D.h:29
Definition: SimpleParticle.h:25
std::vector< Plane3D > PlaneVector
Definition: GougeBlock3D.h:32
virtual double getGridRadius() const
Definition: RandomBlockGenerator.cpp:62
boost::shared_ptr< ParticleFitter > FitterPtr
Definition: RandomBlockGenerator.h:30
3D bounding box
Definition: BoundingBox.h:28
Definition: CheckPointable.cpp:17
static const SimpleParticle INVALID
Definition: ParticleFitter.h:45
virtual double sep(const Vec3 &) const
Definition: Plane3D.cpp:87
double m_maxRadius
Definition: RandomBlockGenerator.h:79
void generateFillParticles()
Definition: RandomBlockGenerator.cpp:174
Definition: ParticleFitter.h:422
const Vec3 & getMinPt() const
Definition: BoundingBox.hpp:40
std::string toString(const TmplData &data)
Definition: StringUtil.h:128
virtual bool particleFits(const SimpleParticle &particle) const
Definition: BlockGenerator.cpp:119
FitterPtrVector getFitterPtrVector()
Definition: RandomBlockGenerator.cpp:152
PlaneVector m_fitPlaneVector
Definition: RandomBlockGenerator.h:80
Vec3 getRandomPoint() const
Definition: RandomBlockGenerator.cpp:109
std::vector< bool > BoolVector
Definition: BlockGenerator.h:28
void insertParticle(const SimpleParticle &particle)
Definition: BlockGenerator.cpp:124
Definition: ParticleFitter.h:333
const PlaneVector & getFitPlaneVector() const
Definition: RandomBlockGenerator.cpp:93
ParticleVector getClosestNeighbors(const SimpleParticle &particle, int numClosest)
Definition: RandomBlockGenerator.cpp:119
virtual ~RandomBlockGenerator()
Definition: RandomBlockGenerator.cpp:50
virtual double getRadius() const
Definition: RandomBlockGenerator.cpp:67
int getMaxInsertionFailures() const
Definition: RandomBlockGenerator.cpp:147
Definition: ParticleFitter.h:251
Definition: ParticleFitter.h:109
virtual void generateSeedParticles()
Definition: BlockGenerator.cpp:142
virtual bool particleFits(const SimpleParticle &particle) const
Definition: RandomBlockGenerator.cpp:135
Vec3 getSizes() const
Definition: BoundingBox.hpp:78
ParticleVector getUniqueNeighbourVector(const Vec3 &pt, double radius) const
Definition: NeighbourTable.hpp:206
const SimpleParticle * m_pParticle
Definition: RandomBlockGenerator.cpp:90
Console console
Definition: console.cpp:25
Plane3D getClosestFitPlane(const SimpleParticle &particle) const
Definition: RandomBlockGenerator.cpp:98
Definition: RandomBlockGenerator.h:37
NTable::ParticleVector ParticleVector
Definition: BlockGenerator.h:75
std::vector< FitterPtr > FitterPtrVector
Definition: RandomBlockGenerator.h:31
Definition: CircularNeighbourTable.h:34