## Refactoring #1569

Feature #1290: === Core: framework ===

Envelope task #1566: == API changes ==

### rename hard particle form factors

Status: | Rfc | Start date: | 03 Aug 2016 | |
---|---|---|---|---|

Priority: | High | Due date: | ||

Assignee: | - | % Done: | 0% | |

Category: | - | |||

Target version: | - |

**Description**

Indispensable because some names are in conflict with established geometric terminology. Question is how far we go. See also #1567.

Resuming from #1497 (please keep aligned when editing):

IsGISAXS | FitGISAXS | BornAgain 1.6 | Proposal (JWu) | |
---|---|---|---|---|

Polyhedra | ||||

[use Box] | Cube $ | |||

TruncatedCube | TruncatedCube | |||

Parallelepiped, Box | Box | ReactangularPrism | ||

Prims3 | Prism | Prism3 | TrigonalPrism | |

[use Box] | QuadraticPrism $ | |||

Prism6 | Prism6 | HexagonalPrism | ||

[use AnisoPyramid] | RectangularPyramid $ | |||

[use Tetrahedron @2] | TrigonalPyramid $ | |||

[use Pyramid] | QuadraticPyramid $$ | |||

[use Cone6] | HexagonalPyramid $ | |||

AnisoPyramid | AnisoPyramid | ReactangularFrustum | ||

Tetrahedron | TruncatedTetrahedron | Tetrahedron @1 | TrigonalFrustum | |

Pyramid | Pyramid | QuadraticFrustum $ | ||

Cone6 | Cone6 | HexagonalFrustum | ||

[use Tetrahedron] | Tetrahedron @3 $ | |||

Icosahedron | Icosahedron | |||

Dodecahedron | Dodecahedron | |||

Cuboctahedron | Cuboctahedron @4 | QuadraticBiFrustum | ||

Other 3d figures | ||||

Trivial | Dot | |||

FullSphere | FullSphere | Sphere | ||

Sphere | TruncatedSphere | TruncatedSphere | TruncatedSphere | |

FacettedSphere @0 | - | - | ||

FacettedSphere @0 | - | - | ||

Ellipsoid | - | Ellipsoid $ @8 | ||

HemiEllipsoid | HemiEllipsoid | [delete] @7 | ||

[missing #1568] | TruncatedEllipsoid @7 | |||

Hemispheroid @7 | - | - | ||

FullSpheroid | Spheroid | FullSpheroid | Spheroid | |

Spheroid | TruncatedSpheroid | TruncatedSpheroid | ||

Cone | Cone | Cone | ||

Cylinder | Cylinder | Cylinder | Cylinder | |

EllipsoidalCylinder | EllipsoidalCylinder | EllipsoidalCylinder | ||

Capsule | - | - | ||

2+1d ripples | ||||

Ripple1 | Ripple1 | Wave @5 | ||

Ripple2 | Ripple2 | Sawtooth @5 |

- $ Each of these form factors can easily be modelled by putting certain parameters of a more generic shape to a special value. A fundamental decision is needed whether we want to offer these special cases. Cf #1463.
- @0 The meanings of »facetted sphere« in IsGISAXS and FitGISAXS differ.
- @1 »Tetrahedron« means
*four*faces, while this shape has five. So this is definitely untenable. - @2 By »tetrahedron«, one would usually understand a »regular« one; therefore it is inappropriate for a generic trigonal pyramid.
- @3 Implement this later, when confusion over the renamed legacy »tetrahedron« is over.
- @4 According to https://en.wikipedia.org/wiki/Cuboctahedron, a »cuboctahedron« is something entirely different, so the present name is untenable.
- @5 Put ripples in a separate directory, and in a separate frame in the GUI, so that it becomes clear that these are ripples. Other proposal (GP): CosineRipple, TriangularRipple.
- @6 I had thought we should use the term »facetted« for highly symmetric truncation, but according to https://en.wikipedia.org/wiki/Archimedean_solid, the established name is »truncated sphere«.
- @7 There is no physical reason why the contact angle should be just 90deg. Therefore we no need for HemiEllipsoid and HemiSpheroid. Rather, let us introduce TruncatedEllipsoid with truncation at arbitrary height (#1568).
- @8 If we have Sphere, TruncatedSphere, and TruncatedEllipsoid, then Ellipsoid should be there for clearer systematic.

### History

#### #1 Updated by wuttke about 3 years ago

**Description**updated (diff)

#### #2 Updated by wuttke about 3 years ago

After first discussion, tendency to answer the $-question with yes: In principle, special cases of generic shapes merit dedicated classes.