Empirical
Classes | Public Member Functions | Protected Types | Protected Attributes | List of all members
emp::Body2D_Base Class Reference

#include <Body2D.h>

Inheritance diagram for emp::Body2D_Base:
emp::CircleBody2D

Classes

struct  BodyLink
 

Public Member Functions

 Body2D_Base ()
 
virtual ~Body2D_Base ()
 
double GetBirthTime () const
 
const AngleGetOrientation () const
 
const PointGetVelocity () const
 
double GetMass () const
 
uint32_t GetColorID () const
 
bool IsReproducing () const
 
int GetReproCount () const
 
Point GetShift () const
 
double GetPressure () const
 
bool GetDetachOnDivide () const
 
void SetBirthTime (double in_time)
 
void SetColorID (uint32_t in_id)
 
void TurnLeft (int steps=1)
 
void TurnRight (int steps=1)
 
void IncSpeed (const Point &offset)
 
void IncSpeed ()
 
void DecSpeed ()
 
void SetVelocity (double x, double y)
 
void SetVelocity (const Point &v)
 
void AddShift (const Point &s)
 
void SetDetachOnDivide (bool in=true)
 

Protected Types

enum  LINK_TYPE {
  LINK_TYPE::DEFAULT, LINK_TYPE::REPRODUCTION, LINK_TYPE::ATTACK, LINK_TYPE::PARASITE,
  LINK_TYPE::MULTICELL
}
 

Protected Attributes

double birth_time
 
Angle orientation
 
Point velocity
 
double mass
 
uint32_t color_id
 
int repro_count
 
Point shift
 
Point cum_shift
 
Point total_abs_shift
 
double pressure
 
bool detach_on_divide
 

Member Enumeration Documentation

enum emp::Body2D_Base::LINK_TYPE
strongprotected
Enumerator
DEFAULT 
REPRODUCTION 
ATTACK 
PARASITE 
MULTICELL 

Constructor & Destructor Documentation

emp::Body2D_Base::Body2D_Base ( )
inline
virtual emp::Body2D_Base::~Body2D_Base ( )
inlinevirtual

Member Function Documentation

void emp::Body2D_Base::AddShift ( const Point s)
inline
void emp::Body2D_Base::DecSpeed ( )
inline
double emp::Body2D_Base::GetBirthTime ( ) const
inline
uint32_t emp::Body2D_Base::GetColorID ( ) const
inline
bool emp::Body2D_Base::GetDetachOnDivide ( ) const
inline
double emp::Body2D_Base::GetMass ( ) const
inline
const Angle& emp::Body2D_Base::GetOrientation ( ) const
inline
double emp::Body2D_Base::GetPressure ( ) const
inline
int emp::Body2D_Base::GetReproCount ( ) const
inline
Point emp::Body2D_Base::GetShift ( ) const
inline
const Point& emp::Body2D_Base::GetVelocity ( ) const
inline
void emp::Body2D_Base::IncSpeed ( const Point offset)
inline
void emp::Body2D_Base::IncSpeed ( )
inline
bool emp::Body2D_Base::IsReproducing ( ) const
inline
void emp::Body2D_Base::SetBirthTime ( double  in_time)
inline
void emp::Body2D_Base::SetColorID ( uint32_t  in_id)
inline
void emp::Body2D_Base::SetDetachOnDivide ( bool  in = true)
inline
void emp::Body2D_Base::SetVelocity ( double  x,
double  y 
)
inline
void emp::Body2D_Base::SetVelocity ( const Point v)
inline
void emp::Body2D_Base::TurnLeft ( int  steps = 1)
inline
void emp::Body2D_Base::TurnRight ( int  steps = 1)
inline

Member Data Documentation

double emp::Body2D_Base::birth_time
protected
uint32_t emp::Body2D_Base::color_id
protected
Point emp::Body2D_Base::cum_shift
protected
bool emp::Body2D_Base::detach_on_divide
protected
double emp::Body2D_Base::mass
protected
Angle emp::Body2D_Base::orientation
protected
double emp::Body2D_Base::pressure
protected
int emp::Body2D_Base::repro_count
protected
Point emp::Body2D_Base::shift
protected
Point emp::Body2D_Base::total_abs_shift
protected
Point emp::Body2D_Base::velocity
protected

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