OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
mslang::Ellipse Struct Reference

#include <Ellipse.h>

Inheritance diagram for mslang::Ellipse:
Inheritance graph
[legend]
Collaboration diagram for mslang::Ellipse:
Collaboration graph
[legend]

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 &R) const
 
- Public Member Functions inherited from mslang::Base
 Base ()
 
 Base (const Base &right)
 
virtual ~Base ()
 
virtual void divideBy (std::vector< std::shared_ptr< Base > > &divisors)
 
- Public Member Functions inherited from mslang::Function
virtual ~Function ()
 
virtual void apply (std::vector< std::shared_ptr< Base >> &bfuncs)=0
 

Static Public Member Functions

static bool parse_detail (iterator &it, const iterator &end, Function *fun)
 
- Static Public Member Functions inherited from mslang::Function
static bool parse (iterator &it, const iterator &end, Function *&fun)
 

Public Attributes

double width_m
 
double height_m
 
- Public Attributes inherited from mslang::Base
AffineTransformation trafo_m
 
BoundingBox bb_m
 
std::vector< std::shared_ptr
< Base > > 
divisor_m
 

Additional Inherited Members

- Static Public Attributes inherited from mslang::Function
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

mslang::Ellipse::Ellipse ( )
inline

Definition at line 11 of file Ellipse.h.

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

Definition at line 17 of file Ellipse.h.

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

Definition at line 23 of file Ellipse.h.

Member Function Documentation

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

Definition at line 53 of file Ellipse.cpp.

References clone().

Here is the call graph for this function:

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

Implements mslang::Base.

Definition at line 57 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().

void mslang::Ellipse::computeBoundingBox ( )
virtual

Implements mslang::Base.

Definition at line 71 of file Ellipse.cpp.

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

Here is the call graph for this function:

bool mslang::Ellipse::isInside ( const Vector_t R) const
virtual
bool mslang::Ellipse::parse_detail ( iterator it,
const iterator end,
Function fun 
)
static

Definition at line 119 of file Ellipse.cpp.

References Physics::e, endl(), 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:

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

Implements mslang::Function.

Definition at line 9 of file Ellipse.cpp.

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

Here is the call graph for this function:

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

Implements mslang::Base.

Definition at line 25 of file Ellipse.cpp.

References copysign(), cos(), mslang::Base::divisor_m, endl(), height_m, pow(), sqrt(), tan(), mslang::Base::trafo_m, mslang::AffineTransformation::transformFrom(), Physics::two_pi, and width_m.

Here is the call graph for this function:

Member Data Documentation

double mslang::Ellipse::height_m

Definition at line 9 of file Ellipse.h.

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

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: