23 static QString names[] = {
40 "EllipsoidalCylinder",
48 "CosineRippleLorentz",
50 "SawtoothRippleGauss",
51 "SawtoothRippleLorentz",
54 return names[uint(k)];
59 using namespace GeometricID;
99 static float const sqrt2f = std::sqrt(2.f);
100 static float const sqrt3f = std::sqrt(3.f);
106 (1.0f - H / (
std::sqrt((L * L / 4) + (W * W / 4)) *
std::tan(alpha))), 4))
108 isNull = (L <= 0 || W <= 0 || H <= 0 || alpha <= 0);
117 isNull = (L < 0 || W < 0 || H < 0) || (L <= 0 && W <= 0 && H <= 0);
126 isNull = (L < 0 || W < 0 || H < 0) || (L <= 0 && W <= 0 && H <= 0);
135 isNull = (L < 0 || W < 0 || H < 0) || (L <= 0 && W <= 0 && H <= 0);
145 isNull = (R <= 0 || H <= 0 || alpha <= 0);
154 isNull = (R <= 0 || H <= 0 || alpha <= 0);
163 isNull = (L <= 0 || H <= 0 || rH <= 0 || alpha >=
pi2f);
171 isNull = (R <= 0 || H <= 0);
197 isNull = (Ra <= 0 || Rb <= 0 || H <= 0);
213 isNull = (R <= 0 || H <= 0);
222 isNull = (Ra <= 0 || Rb <= 0 || H <= 0);
238 isNull = (L <= 0 || H <= 0);
247 isNull = (R <= 0 || H <= 0);
256 isNull = (L <= 0 || H <= 0 || alpha <= 0);
266 isNull = (L < 0 || W < 0 || H < 0) || (L <= 0 && W <= 0 && H <= 0);
276 isNull = (L < 0 || W < 0 || H < 0) || (L <= 0 && W <= 0 && H <= 0);
286 isNull = (L < 0 || W < 0 || H < 0) || (L <= 0 && W <= 0 && H <= 0);
296 isNull = (L < 0 || W < 0 || H < 0) || (L <= 0 && W <= 0 && H <= 0);
306 isNull = (L < 0 || W < 0 || H < 0) || (L <= 0 && W <= 0 && H <= 0);
316 isNull = (L < 0 || W < 0 || H < 0) || (L <= 0 && W <= 0 && H <= 0);
326 isNull = (L <= 0 || H <= 0 || alpha <= 0);
344 isNull = (R <= 0 || H <= 0);
352 Key(
BaseShape::
Sphere, 1 - H / fp / R / 2, (H - fp * R) / fp / R / 2, deltaH / fp / R / 2))
354 isNull = (R <= 0 || H <= 0 || fp <= 0);
void addExtrinsicRotation(Vector3D turn, Vector3D scale, Vector3D &rotate, Vector3D rotateExtrinsic, Vector3D &translate)
void transform(float scale, Vector3D rotate, Vector3D translate)
AnisoPyramid(float L, float W, float H, float alpha)
BarGauss(float L, float W, float H)
BarLorentz(float L, float W, float H)
Box(float L, float W, float H)
Cone6(float R, float H, float alpha)
Cone(float R, float H, float alpha)
CosineRippleBox(float L, float W, float H)
CosineRippleGauss(float L, float W, float H)
CosineRippleLorentz(float L, float W, float H)
Cuboctahedron(float L, float H, float rH, float alpha)
Cylinder(float R, float H)
EllipsoidalCylinder(float Ra, float Rb, float H)
FullSpheroid(float R, float H)
HemiEllipsoid(float Ra, float Rb, float H)
void addTransform(Vector3D rotate, Vector3D translate)
void addExtrinsicRotation(Vector3D rotateExtrinsic)
void addTranslation(Vector3D translate_)
void fancy(Vector3D rotate, float r)
void transform(Vector3D rotate, Vector3D translate)
Particle(GeometricID::Key)
Pyramid(float L, float H, float alpha)
SawtoothRippleBox(float L, float W, float H)
SawtoothRippleGauss(float L, float W, float H)
SawtoothRippleLorentz(float L, float W, float H)
Tetrahedron(float L, float H, float alpha)
TruncatedCube(float L, float t)
TruncatedSphere(float R, float H, float deltaH=0.0f)
TruncatedSpheroid(float R, float H, float fp, float deltaH=0.0f)
QString const & name(EShape k)
static float const sqrt3f
static float const sqrt2f
const float DodecahedronL2R