16 #include "Base/Util/Assert.h"
34 CREATE(CosineRippleLorentz);
37 CREATE(EllipsoidalCylinder);
41 CREATE(HorizontalCylinder);
43 CREATE(PlatonicOctahedron);
44 CREATE(PlatonicTetrahedron);
52 CREATE(SawtoothRippleGauss);
53 CREATE(SawtoothRippleLorentz);
138 return {
"Anisotropic pyramid",
"Truncated pyramid with a rectangular base",
139 ":/SampleDesignerToolbox/images/ff_Pyramid2_64x64.png"};
142 return {
"BarGauss",
"Rectangular cuboid",
143 ":/SampleDesignerToolbox/images/ff_Box_64x64.png"};
146 return {
"BarLorentz",
"Rectangular cuboid",
147 ":/SampleDesignerToolbox/images/ff_Box_64x64.png"};
150 return {
"Box",
"Rectangular cuboid",
":/SampleDesignerToolbox/images/ff_Box_64x64.png"};
153 return {
"Cone",
"Truncated cone with circular base",
154 ":/SampleDesignerToolbox/images/ff_Cone_64x64.png"};
157 return {
"Pyramid6",
"A truncated pyramid, based on a regular hexagon",
158 ":/SampleDesignerToolbox/images/ff_Pyramid6_64x64.png"};
161 return {
"Bipyramid4",
162 "Compound of two truncated pyramids with a common square base "
163 "and opposite orientations",
164 ":/SampleDesignerToolbox/images/ff_Bipyramid4_64x64.png"};
167 return {
"Dodecahedron",
"Dodecahedron",
168 ":/SampleDesignerToolbox/images/ff_Dodecahedron_64x64.png"};
171 return {
"Cylinder",
"Cylinder with a circular base",
172 ":/SampleDesignerToolbox/images/ff_Cylinder_64x64.png"};
175 return {
"Ellipsoidal cylinder",
"Cylinder with an ellipse cross section",
176 ":/SampleDesignerToolbox/images/ff_EllipsoidalCylinder_64x64.png"};
179 return {
"Full sphere",
"Full sphere",
180 ":/SampleDesignerToolbox/images/ff_Sphere_64x64.png"};
183 return {
"Full spheroid",
184 "Full spheroid, generated by rotating an ellipse around the vertical axis",
185 ":/SampleDesignerToolbox/images/ff_Spheroid_64x64.png"};
188 return {
"Hemi ellipsoid",
189 "A horizontally oriented ellipsoid, truncated at the central plane",
190 ":/SampleDesignerToolbox/images/ff_HemiEllipsoid_64x64.png"};
193 return {
"Icosahedron",
"Icosahedron",
194 ":/SampleDesignerToolbox/images/ff_Icosahedron_64x64.png"};
197 return {
"Prism3",
"Prism with an equilateral triangle base",
198 ":/SampleDesignerToolbox/images/ff_Prism3_64x64.png"};
201 return {
"Prism6",
"Prism with a regular hexagonal base",
202 ":/SampleDesignerToolbox/images/ff_Prism6_64x64.png"};
205 return {
"Pyramid4",
"Truncated pyramid with a square base",
206 ":/SampleDesignerToolbox/images/ff_Pyramid4_64x64.png"};
209 return {
"CosineRippleBox",
"Particle with a cosine profile and a rectangular base",
210 ":/SampleDesignerToolbox/images/ff_CosineRipple_64x64.png"};
213 return {
"CosineRippleGauss",
"Particle with a cosine profile and a rectangular base",
214 ":/SampleDesignerToolbox/images/ff_CosineRipple_64x64.png"};
217 return {
"CosineRippleLorentz",
"Particle with a cosine profile and a rectangular base",
218 ":/SampleDesignerToolbox/images/ff_CosineRipple_64x64.png"};
221 return {
"SawtoothRippleBox",
222 "Particle with an asymmetric triangle profile and a rectangular base",
223 ":/SampleDesignerToolbox/images/ff_SawtoothRipple_64x64.png"};
226 return {
"SawtoothRippleGauss",
227 "Particle with an asymmetric triangle profile and a rectangular base",
228 ":/SampleDesignerToolbox/images/ff_SawtoothRipple_64x64.png"};
231 return {
"SawtoothRippleLorentz",
232 "Particle with an asymmetric triangle profile and a rectangular base",
233 ":/SampleDesignerToolbox/images/ff_SawtoothRipple_64x64.png"};
237 "Truncated polyhedron with equilateral triangle base and cropped side faces",
238 ":/SampleDesignerToolbox/images/ff_Pyramid3_64x64.png"};
241 return {
"Truncated cube",
"A cube whose eight vertices have been removed",
242 ":/SampleDesignerToolbox/images/ff_TruncatedCube_64x64.png"};
245 return {
"Truncated sphere",
"Spherical dome",
246 ":/SampleDesignerToolbox/images/ff_TruncatedSphere_64x64.png"};
249 return {
"Truncated spheroid",
"Spheroidal dome",
250 ":/SampleDesignerToolbox/images/ff_TruncatedSpheroid_64x64.png"};
253 return {
"Cantellated cube",
"A cube with truncated edges and vertices",
254 ":/SampleDesignerToolbox/images/ff_CantellatedCube_64x64.png"};
257 return {
"Horizontal cylinder",
"Cylinder with a circular base, lying in x direction",
258 ":/SampleDesignerToolbox/images/ff_HorizontalCylinder_64x64.png"};
261 return {
"Platonic octahedron",
"Regular octahedron",
262 ":/SampleDesignerToolbox/images/ff_PlatonicOctahedron_64x64.png"};
265 return {
"Platonic tetrahedron",
"Regular tetrahedron",
266 ":/SampleDesignerToolbox/images/ff_PlatonicTetrahedron_64x64.png"};
277 #define CHECK(type) \
278 if (dynamic_cast<const type##Item*>(item)) \
285 CHECK(CantellatedCube);
287 CHECK(CosineRippleBox);
288 CHECK(CosineRippleGauss);
289 CHECK(CosineRippleLorentz);
292 CHECK(EllipsoidalCylinder);
295 CHECK(HemiEllipsoid);
296 CHECK(HorizontalCylinder);
298 CHECK(PlatonicOctahedron);
299 CHECK(PlatonicTetrahedron);
306 CHECK(SawtoothRippleBox);
307 CHECK(SawtoothRippleGauss);
308 CHECK(SawtoothRippleLorentz);
309 CHECK(TruncatedCube);
310 CHECK(TruncatedSphere);
311 CHECK(TruncatedSpheroid);