BornAgain  1.19.79
Open-source research software to simulate and fit neutron and x-ray reflectometry and grazing-incidence small-angle scattering
DoubleEllipseZ Class Reference

Description

Definition at line 25 of file DoubleEllipse.h.

Inheritance diagram for DoubleEllipseZ:
[legend]
Collaboration diagram for DoubleEllipseZ:
[legend]

Public Member Functions

 DoubleEllipseZ (double r0_x, double r0_y, double z, double rz_x, double rz_y)
 
 ~DoubleEllipseZ () override
 
virtual std::vector< R3 > vertices () const
 Retrieves a list of the vertices constituting this concrete shape. More...
 

Static Public Attributes

static const size_t N_Circle = 24
 

Protected Attributes

std::vector< R3 > m_vertices
 List of vertices initialized during construction. More...
 

Constructor & Destructor Documentation

◆ DoubleEllipseZ()

DoubleEllipseZ::DoubleEllipseZ ( double  r0_x,
double  r0_y,
double  z,
double  rz_x,
double  rz_y 
)

Definition at line 20 of file DoubleEllipse.cpp.

21 {
22  auto bottom_face = EllipseVerticesZ(r0_x, r0_y, 0.0);
23  size_t n_bottom = bottom_face.size();
24  auto top_face = EllipseVerticesZ(rz_x, rz_y, z);
25  m_vertices.resize(n_bottom + top_face.size());
26  std::move(bottom_face.begin(), bottom_face.end(), m_vertices.begin());
27  std::move(top_face.begin(), top_face.end(), m_vertices.begin() + n_bottom);
28 }
std::vector< R3 > EllipseVerticesZ(double r_x, double r_y, double z)
Generate vertices of centered horizontal ellipse with given semi-axes at height z.
Definition: IShape3D.cpp:37
std::vector< R3 > m_vertices
List of vertices initialized during construction.
Definition: IShape3D.h:42

References EllipseVerticesZ(), and IShape3D::m_vertices.

Here is the call graph for this function:

◆ ~DoubleEllipseZ()

DoubleEllipseZ::~DoubleEllipseZ ( )
overridedefault

Member Function Documentation

◆ vertices()

std::vector< R3 > IShape3D::vertices ( ) const
virtualinherited

Retrieves a list of the vertices constituting this concrete shape.

Definition at line 23 of file IShape3D.cpp.

24 {
25  return m_vertices;
26 }

References IShape3D::m_vertices.

Member Data Documentation

◆ m_vertices

std::vector<R3> IShape3D::m_vertices
protectedinherited

◆ N_Circle

const size_t IShape3D::N_Circle = 24
staticinherited

The documentation for this class was generated from the following files: