![]() |
ProtoTracer
1.0
Real-time 3D rendering and animation engine
|
#include <TextEngine.h>
Public Member Functions | |
TextEngine (bool isEfficient=false) | |
TextEngine (Vector2D size, Vector2D position, uint16_t blinkTime, bool isEfficient=false) | |
void | SetMaterial (Material *material) |
void | SetSize (Vector2D size) |
void | SetPositionOffset (Vector2D positionOffset) |
void | SetRotationOffset (Vector2D rotationOffset) |
void | SetRotationAngle (float rotationAngle) |
void | SetBlinkTime (uint16_t blinkTime) |
void | SetText (uint8_t line, String value, bool centerText=false) |
void | ClearText () |
RGBColor | GetRGB (const Vector3D &position, const Vector3D &normal, const Vector3D &uvw) override |
Pure virtual function to calculate color based on surface parameters. | |
![]() | |
virtual | ~Material ()=default |
Virtual destructor for proper cleanup in derived classes. | |
Private Attributes | |
SimpleMaterial | baseMaterial = SimpleMaterial(RGBColor(255, 255, 255)) |
Material * | material = &baseMaterial |
RGBColor | white = RGBColor(255, 255, 255) |
RGBColor | black = RGBColor(0, 0, 0) |
Vector2D | size |
Vector2D | positionOffset |
Vector2D | rotationOffset |
float | rotationAngle = 0.0f |
char | lines [lineCount][characterWidth] |
uint16_t | blinkTime |
bool | isEfficient = false |
Additional Inherited Members | |
![]() | |
enum | Method { Base , Add , Subtract , Multiply , Divide , Darken , Lighten , Screen , Overlay , SoftLight , Replace , EfficientMask , Bypass } |
Defines blending methods for combining colors. More... | |
Definition at line 13 of file TextEngine.h.
TextEngine | ( | bool | isEfficient = false | ) |
|
overridevirtual |
Pure virtual function to calculate color based on surface parameters.
position | The position in 3D space. |
normal | The normal vector at the position. |
uvw | The UVW texture coordinates. |
RGBColor
. Implements Material.
Referenced by Clock::GetRGB().
Referenced by Clock::Clock(), Menu::Initialize(), and Menu::Initialize().
Referenced by Clock::Clock(), Menu::Initialize(), Menu::Initialize(), and Clock::SetMaterial().
Referenced by Menu::Initialize(), Menu::Initialize(), Menu::SetPosition(), and Clock::SetPosition().
Referenced by Menu::SetRotation(), and Clock::SetRotation().
Referenced by Menu::SetRotationOffset().
Referenced by Menu::SetSize(), and Clock::SetSize().
Referenced by Menu::GenerateText(), and Clock::Update().
|
private |
Definition at line 15 of file TextEngine.h.
Definition at line 18 of file TextEngine.h.
Definition at line 24 of file TextEngine.h.
Definition at line 25 of file TextEngine.h.
|
private |
Definition at line 23 of file TextEngine.h.
|
private |
Definition at line 16 of file TextEngine.h.
Definition at line 20 of file TextEngine.h.
Definition at line 22 of file TextEngine.h.
Definition at line 21 of file TextEngine.h.
Definition at line 19 of file TextEngine.h.
Definition at line 17 of file TextEngine.h.