stackchan-display
Loading...
Searching...
No Matches
stackchan::display::Face Class Reference
Inheritance diagram for stackchan::display::Face:
Collaboration diagram for stackchan::display::Face:

Public Member Functions

 Face (BaseEye *left_eye, BaseEye *right_eye, BaseMouth *mouth)
 
BaseEyegetLeftEye ()
 
BaseEyegetRightEye ()
 
BaseMouthgetMouth ()
 
void activateAutoBlink ()
 
void deactivateAutoBlink ()
 
bool getIsAutoBlink ()
 
void autoScale ()
 
virtual void updateState (ExpressionWeight &expression_weight)
 
virtual void draw (M5Canvas &canvas, ExpressionWeight &expression_weight, ColorPalette &palette) override
 
- Public Member Functions inherited from stackchan::display::FacialDrawable
 Drawable ()=default
 
 Drawable (int16_t x, int16_t y, int16_t width, int16_t height)
 
- Public Member Functions inherited from stackchan::display::Drawable
 Drawable (int16_t x, int16_t y, int16_t width, int16_t height)
 
virtual void setPosition (const m5::Vector2i &position)
 set primary position
 
virtual m5::Vector2igetPosition ()
 
virtual void setRotation (int rotation)
 
virtual int getRotation ()
 Get the Rotation in degrees, counter-clockwise.
 
virtual void setSize (const m5::Size2i &size)
 
virtual m5::Size2igetSize ()
 
virtual void setVisible (bool visible)
 
virtual bool getVisible ()
 
virtual bool isVisible ()
 
virtual void setIgnoreExpression (bool ignore)
 
virtual bool getIgnoreExpression ()
 
virtual bool isIgnoreExpression ()
 
virtual void draw (M5Canvas &canvas)
 
virtual void update ()
 

Protected Attributes

bool is_auto_blink_ = true
 
uint32_t auto_blink_interval_ = 3000
 
uint32_t last_blink_time_ = 0
 
uint32_t blink_duration_ = 200
 
float breath_frequency_ = 0.25f
 
BaseEyeleft_eye_
 
BaseEyeright_eye_
 
BaseMouthmouth_
 
- Protected Attributes inherited from stackchan::display::Drawable
m5::Vector2i position_ {0, 0}
 
int rotation_ = 0
 
m5::Size2i size_ {100, 100}
 
bool visible_ = true
 
bool ignore_expression_ = false
 

Member Function Documentation

◆ draw()

void stackchan::display::Face::draw ( M5Canvas & canvas,
ExpressionWeight & expression_weight,
ColorPalette & palette )
overridevirtual

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