52 using namespace Particles;
59 case EShape::BarGauss:
60 return new BarGauss(D, D, 5 * D);
61 case EShape::BarLorentz:
62 return new BarLorentz(D, D, 5 * D);
64 return new Box(D, D, D);
65 case EShape::FullSphere:
66 return new FullSphere(R);
67 case EShape::FullSpheroid:
68 return new FullSpheroid(R / 2, D);
69 case EShape::Cylinder:
70 return new Cylinder(R, D);
71 case EShape::TruncatedSphere:
72 return new TruncatedSphere(R, D / 3);
73 case EShape::TruncatedSpheroid:
74 return new TruncatedSpheroid(R, 2 * R, 1.5);
76 return new Cone(R, D, 1.3f);
77 case EShape::Icosahedron:
79 case EShape::Dodecahedron:
81 case EShape::TruncatedCube:
82 return new TruncatedCube(D, D / 3);
84 return new Prism6(R, D);
86 return new Cone6(R, D, 1.3f);
88 return new Pyramid(D, D, 1.3f);
89 case EShape::Cuboctahedron:
90 return new Cuboctahedron(D, R * 3 / 2, 2.f / 3, 2);
92 return new Prism3(R, D);
93 case EShape::Tetrahedron:
94 return new Tetrahedron(R, D, 1.3f);
95 case EShape::EllipsoidalCylinder:
96 return new EllipsoidalCylinder(R, R / 2, D);
97 case EShape::HemiEllipsoid:
98 return new HemiEllipsoid(R, R, D);
101 case EShape::CosineRippleBox:
102 return new CosineRippleBox(D, D, D);
103 case EShape::CosineRippleGauss:
104 return new CosineRippleGauss(D, D, D);
105 case EShape::CosineRippleLorentz:
106 return new CosineRippleLorentz(D, D, D);
107 case EShape::SawtoothRippleBox:
108 return new SawtoothRippleBox(D, D, D);
109 case EShape::SawtoothRippleGauss:
110 return new SawtoothRippleGauss(D, D, D);
111 case EShape::SawtoothRippleLorentz:
112 return new SawtoothRippleLorentz(D, D, D);
113 case EShape::AnisoPyramid:
114 return new AnisoPyramid(R, D, D, 1.3f);
138 if ((i =
objects.indexOf(o)) >= 0)
152 o->releaseGeometry();
154 o->releaseGeometry();
Defines the macro ASSERT.
#define ASSERT(condition)
void updated(bool withEye)
void draw(Canvas &) const
QVector< Object * > objectsBlend
static Particles::Particle * newParticle(Particles::EShape k, float R)
void drawBlend(Canvas &) const
QVector< Object * > objects
const float DodecahedronL2R
const float IcosahedronL2R