casse-brick latest
Ce projet est réalisé dans le cadre du cours de Programmation Avancée en M1 Informatique de l'université de Strasbourg.
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes
CircleCollider Class Reference

The CircleCollider class represents a circular collider object. More...

#include <CollidingObject.h>

Inheritance diagram for CircleCollider:
Collider

Public Member Functions

 CircleCollider (point mid, int radius, std::string id)
 Constructs a new CircleCollider object with specified parameters.
 
int getRadius () const
 Gets the radius of the circular collider.
 
std::tuple< bool, float, float > collided (const Collider &other) const override
 Checks for collision with another collider.
 
std::string getType () const override
 Gets the type of the collider.
 
void render (std::shared_ptr< SDL_Renderer > renderer, SDL_Color color1, SDL_Color color2) override
 Renders the collider on the screen.
 
- Public Member Functions inherited from Collider
void move (point newPoint)
 Moves the collider to a new position.
 
void moveTo (point newPoint)
 Moves the collider to an absolute position.
 
virtual ~Collider ()=default
 Virtual destructor for the Collider class.
 
virtual std::tuple< bool, float, float > collided (const Collider &other) const =0
 Checks for collision with another collider.
 
virtual std::string getType () const =0
 Gets the type of the collider.
 
virtual void render (std::shared_ptr< SDL_Renderer > renderer, SDL_Color color1, SDL_Color color2)=0
 Renders the collider on the screen.
 

Private Attributes

int radius
 The radius of the circular collider.
 

Additional Inherited Members

- Data Fields inherited from Collider
std::string id
 The unique identifier of the collider.
 
point p
 The position of the collider.
 

Detailed Description

The CircleCollider class represents a circular collider object.

The CircleCollider class inherits from the Collider class and represents a collider with a circular shape.

Definition at line 323 of file CollidingObject.h.

Constructor & Destructor Documentation

◆ CircleCollider()

CircleCollider::CircleCollider ( point  mid,
int  radius,
std::string  id 
)
inline

Constructs a new CircleCollider object with specified parameters.

Parameters
midThe midpoint of the circular collider.
radiusThe radius of the circular collider.
idThe unique identifier of the collider.

Definition at line 335 of file CollidingObject.h.

Member Function Documentation

◆ collided()

std::tuple< bool, float, float > CircleCollider::collided ( const Collider other) const
overridevirtual

Checks for collision with another collider.

Parameters
otherThe other collider to check for collision with.
Returns
A tuple containing a boolean indicating collision, and optional float values for collision parameters.

Implements Collider.

Definition at line 37 of file CollidingObject.cpp.

◆ getRadius()

int CircleCollider::getRadius ( ) const

Gets the radius of the circular collider.

Returns
The radius of the circular collider.

Definition at line 142 of file CollidingObject.cpp.

◆ getType()

std::string CircleCollider::getType ( ) const
overridevirtual

Gets the type of the collider.

Returns
A string representing the type of the collider.

Implements Collider.

Definition at line 138 of file CollidingObject.cpp.

◆ render()

void CircleCollider::render ( std::shared_ptr< SDL_Renderer >  renderer,
SDL_Color  color1,
SDL_Color  color2 
)
overridevirtual

Renders the collider on the screen.

Parameters
rendererA shared pointer to the SDL renderer used for rendering.
color1The primary color of the collider.
color2The secondary color of the collider.

Implements Collider.

Definition at line 146 of file CollidingObject.cpp.

Field Documentation

◆ radius

int CircleCollider::radius
private

The radius of the circular collider.

Definition at line 325 of file CollidingObject.h.


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