OPALX (Object Oriented Parallel Accelerator Library for Exascal) master (dc2a29eed580)
OPALX
Loading...
Searching...
No Matches
mslang::Ellipse Struct Reference

#include <Ellipse.h>

Inheritance diagram for mslang::Ellipse:
Inheritance graph
Collaboration diagram for mslang::Ellipse:
Collaboration graph

Public Member Functions

 Ellipse ()
 
 Ellipse (const Ellipse &right)
 
virtual ~Ellipse ()
 
virtual void print (int indentwidth)
 
virtual void writeGnuplot (std::ofstream &out) const
 
virtual void apply (std::vector< std::shared_ptr< Base > > &bfuncs)
 
virtual std::shared_ptr< Baseclone () const
 
virtual void computeBoundingBox ()
 
virtual bool isInside (const Vector_t< double, 3 > &R) const
 
virtual void divideBy (std::vector< std::shared_ptr< Base > > &divisors)
 

Static Public Member Functions

static bool parse_detail (iterator &it, const iterator &end, Function *fun)
 
static bool parse (iterator &it, const iterator &end, Function *&fun)
 

Public Attributes

double width_m
 
double height_m
 
AffineTransformation trafo_m
 
BoundingBox2D bb_m
 
std::vector< std::shared_ptr< Base > > divisor_m
 

Static Public Attributes

static const std::string UDouble = "([0-9]+\\.?[0-9]*([Ee][+-]?[0-9]+)?)"
 
static const std::string Double = "(-?[0-9]+\\.?[0-9]*([Ee][+-]?[0-9]+)?)"
 
static const std::string UInt = "([0-9]+)"
 
static const std::string FCall = "([a-z_]*)\\‍((.*)"
 

Detailed Description

Definition at line 7 of file Ellipse.h.

Constructor & Destructor Documentation

◆ Ellipse() [1/2]

mslang::Ellipse::Ellipse ( )
inline

Definition at line 11 of file Ellipse.h.

◆ Ellipse() [2/2]

mslang::Ellipse::Ellipse ( const Ellipse right)
inline

Definition at line 13 of file Ellipse.h.

◆ ~Ellipse()

virtual mslang::Ellipse::~Ellipse ( )
inlinevirtual

Definition at line 16 of file Ellipse.h.

Member Function Documentation

◆ apply()

void mslang::Ellipse::apply ( std::vector< std::shared_ptr< Base > > &  bfuncs)
virtual

Implements mslang::Function.

Definition at line 54 of file Ellipse.cpp.

References clone().

Here is the call graph for this function:

◆ clone()

std::shared_ptr< Base > mslang::Ellipse::clone ( ) const
virtual

Implements mslang::Base.

Definition at line 58 of file Ellipse.cpp.

References mslang::Base::bb_m, mslang::Base::divisor_m, height_m, mslang::Base::trafo_m, and width_m.

Referenced by apply().

◆ computeBoundingBox()

void mslang::Ellipse::computeBoundingBox ( )
virtual

Implements mslang::Base.

Definition at line 72 of file Ellipse.cpp.

References mslang::Base::bb_m, mslang::Base::divisor_m, height_m, mslang::Base::trafo_m, mslang::AffineTransformation::transformFrom(), and width_m.

Here is the call graph for this function:

◆ divideBy()

virtual void mslang::Base::divideBy ( std::vector< std::shared_ptr< Base > > &  divisors)
inlinevirtualinherited

Definition at line 57 of file MSLang.h.

References mslang::Base::bb_m, mslang::Base::divisor_m, and mslang::BoundingBox2D::doesIntersect().

Here is the call graph for this function:

◆ isInside()

bool mslang::Ellipse::isInside ( const Vector_t< double, 3 > &  R) const
virtual

◆ parse()

◆ parse_detail()

bool mslang::Ellipse::parse_detail ( iterator it,
const iterator end,
Function fun 
)
static

Definition at line 117 of file Ellipse.cpp.

References mslang::ArgumentExtractor::get(), mslang::ArgumentExtractor::getLengthConsumed(), height_m, mslang::parseMathExpression(), and width_m.

Referenced by mslang::Function::parse().

Here is the call graph for this function:

◆ print()

void mslang::Ellipse::print ( int  indentwidth)
virtual

Implements mslang::Function.

Definition at line 10 of file Ellipse.cpp.

References mslang::AffineTransformation::getAngle(), mslang::AffineTransformation::getOrigin(), height_m, Units::rad2deg, mslang::Base::trafo_m, and width_m.

Here is the call graph for this function:

◆ writeGnuplot()

void mslang::Ellipse::writeGnuplot ( std::ofstream &  out) const
virtual

Implements mslang::Base.

Definition at line 28 of file Ellipse.cpp.

References mslang::Base::divisor_m, height_m, mslang::Base::trafo_m, mslang::AffineTransformation::transformFrom(), Physics::two_pi, and width_m.

Here is the call graph for this function:

Member Data Documentation

◆ bb_m

◆ divisor_m

◆ Double

const std::string mslang::Function::Double = "(-?[0-9]+\\.?[0-9]*([Ee][+-]?[0-9]+)?)"
staticinherited

Definition at line 32 of file MSLang.h.

◆ FCall

const std::string mslang::Function::FCall = "([a-z_]*)\\‍((.*)"
staticinherited

Definition at line 34 of file MSLang.h.

Referenced by mslang::Function::parse().

◆ height_m

double mslang::Ellipse::height_m

Definition at line 9 of file Ellipse.h.

Referenced by clone(), computeBoundingBox(), isInside(), parse_detail(), print(), and writeGnuplot().

◆ trafo_m

◆ UDouble

const std::string mslang::Function::UDouble = "([0-9]+\\.?[0-9]*([Ee][+-]?[0-9]+)?)"
staticinherited

Definition at line 31 of file MSLang.h.

Referenced by mslang::Rectangle::parse_detail().

◆ UInt

const std::string mslang::Function::UInt = "([0-9]+)"
staticinherited

Definition at line 33 of file MSLang.h.

◆ width_m

double mslang::Ellipse::width_m

Definition at line 8 of file Ellipse.h.

Referenced by clone(), computeBoundingBox(), isInside(), parse_detail(), print(), and writeGnuplot().


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