BornAgain
1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Classes | |
struct | Vert_Normal |
struct | Vertices |
Public Types | |
using | Indices = std::vector< unsigned > |
using | Mesh = QVector< Vert_Normal > |
Public Member Functions | |
Geometry (GeometricID::Key) | |
virtual | ~Geometry () |
Static Private Member Functions | |
static Mesh | makeMesh (const Vertices &vs, const Vertices &ns) |
static Mesh | makeMesh (const Vertices &vs, Vertices const *ns=nullptr) |
static Mesh | meshBox () |
static Mesh | meshColumn (float ratio_Rt_Rb, float numSides) |
static Mesh | meshCuboctahedron (float rH, float alpha, float H) |
static Mesh | meshDodecahedron () |
static Mesh | meshIcosahedron () |
static Mesh | meshPlane () |
static Mesh | meshRipple (float numSides, float ratio_asymmetry_W) |
static Mesh | meshSphere (float cut, float baseShift=0.0f, float removedTop=0.0f) |
static Mesh | meshTruncBox (float tD) |
Private Attributes | |
GeometricID::Key | m_key |
Mesh | m_mesh |
Static Private Attributes | |
static int const | RINGS = 12 |
static int const | SLICES = 24 |
Friends | |
class | Buffer |
class | GeometryStore |
Definition at line 29 of file geometry.h.
using RealSpace::Geometry::Indices = std::vector<unsigned> |
Definition at line 42 of file geometry.h.
using RealSpace::Geometry::Mesh = QVector<Vert_Normal> |
Definition at line 66 of file geometry.h.
RealSpace::Geometry::Geometry | ( | GeometricID::Key | key_ | ) |
Definition at line 70 of file geometry.cpp.
References RealSpace::GeometricID::Key::id, m_key, m_mesh, meshBox(), meshColumn(), meshCuboctahedron(), meshDodecahedron(), meshIcosahedron(), meshPlane(), meshRipple(), meshSphere(), meshTruncBox(), RealSpace::GeometricID::Key::p1, RealSpace::GeometricID::Key::p2, and RealSpace::GeometricID::Key::p3.
Referenced by RealSpace::GeometryStore::getGeometry().
|
virtual |
Definition at line 105 of file geometry.cpp.
References RealSpace::GeometryStore::geometryDeleted(), and RealSpace::geometryStore().
|
staticprivate |
Definition at line 141 of file geometry.cpp.
References makeMesh().
|
staticprivate |
Definition at line 111 of file geometry.cpp.
References ASSERT, RealSpace::cross(), and Units::nm.
Referenced by makeMesh(), meshBox(), meshColumn(), meshCuboctahedron(), meshDodecahedron(), meshIcosahedron(), meshPlane(), meshRipple(), meshSphere(), and meshTruncBox().
|
staticprivate |
Definition at line 20 of file box.cpp.
References RealSpace::Geometry::Vertices::addQuad(), ASSERT, and makeMesh().
Referenced by Geometry(), and meshTruncBox().
|
staticprivate |
Definition at line 21 of file column.cpp.
References RealSpace::Vector3D::_z, RealSpace::Geometry::Vertices::addQuad(), RealSpace::Geometry::Vertices::addTriangle(), RealSpace::Geometry::Vertices::addVertex(), ASSERT, M_PI, makeMesh(), RealSpace::Vector3D::normalized(), and SLICES.
Referenced by Geometry().
|
staticprivate |
Definition at line 21 of file cuboctahedron.cpp.
References RealSpace::Geometry::Vertices::addQuad(), ASSERT, M_PI_2, and makeMesh().
Referenced by Geometry().
|
staticprivate |
Definition at line 22 of file dodecahedron.cpp.
References RealSpace::Vector3D::_z, RealSpace::Geometry::Vertices::addFan(), ASSERT, RealSpace::cross(), RealSpace::GoldenRatio, and makeMesh().
Referenced by Geometry().
|
staticprivate |
Definition at line 22 of file icosahedron.cpp.
References RealSpace::Geometry::Vertices::addTriangle(), ASSERT, and makeMesh().
Referenced by Geometry().
|
staticprivate |
Definition at line 20 of file plane.cpp.
References RealSpace::Geometry::Vertices::addQuad(), ASSERT, and makeMesh().
Referenced by Geometry().
|
staticprivate |
Definition at line 21 of file ripple.cpp.
References RealSpace::Geometry::Vertices::addQuad(), RealSpace::Geometry::Vertices::addTriangle(), ASSERT, M_PI, makeMesh(), and SLICES.
Referenced by Geometry().
|
staticprivate |
Definition at line 23 of file sphere.cpp.
References RealSpace::Vector3D::_z, RealSpace::Geometry::Vertices::addQuad(), RealSpace::Geometry::Vertices::addTriangle(), ASSERT, M_PI, M_PI_2, makeMesh(), RealSpace::Vector3D::normalized(), RINGS, SLICES, and RealSpace::Vector3D::z.
Referenced by Geometry().
|
staticprivate |
Definition at line 20 of file truncbox.cpp.
References RealSpace::Geometry::Vertices::addTriangle(), ASSERT, makeMesh(), and meshBox().
Referenced by Geometry().
|
friend |
Definition at line 30 of file geometry.h.
|
friend |
Definition at line 31 of file geometry.h.
|
private |
Definition at line 72 of file geometry.h.
Referenced by Geometry(), and RealSpace::GeometryStore::geometryDeleted().
|
private |
Definition at line 74 of file geometry.h.
Referenced by RealSpace::Buffer::Buffer(), and Geometry().
|
staticprivate |
Definition at line 90 of file geometry.h.
Referenced by meshSphere().
|
staticprivate |
Definition at line 90 of file geometry.h.
Referenced by meshColumn(), meshRipple(), and meshSphere().