sdl2dll
Loading...
Searching...
No Matches
sdl::FCircle Class Reference

Encapsula una circunferencia con coordenadas en punto flotante. More...

#include <sdl_circle.h>

Public Member Functions

EXPORT FCircle (float x=0, float y=0, float r=0)
 Constructor a partir de coordenadas enteras y radio.
 
EXPORT FCircle (FPoint &c, float r=0)
 Constructor a partir de un punto para el centro y radio.
 
EXPORT FCircle Move (float alfa, FPoint &displacement, FPoint &escale)
 Mueve la circunferencia rotando en ángulo dado y a la distancia especificada, aplicando una escala.
 
EXPORT FPointCenter ()
 Devuelve las coordenadas del centro de la circunferencia.
 
EXPORT float & X ()
 Obtiene la coordenada x del centro.
 
EXPORT float & Y ()
 Obtiene la coordenada y del centro.
 
EXPORT float & R ()
 Obtiene el radio.
 

Protected Attributes

FPoint center
 
float radius
 

Detailed Description

Encapsula una circunferencia con coordenadas en punto flotante.

Se usa en hitboxes para la detección de colisiones

Constructor & Destructor Documentation

◆ FCircle() [1/2]

EXPORT sdl::FCircle::FCircle ( float x = 0,
float y = 0,
float r = 0 )
inline

Constructor a partir de coordenadas enteras y radio.

Parameters
xfloat Coordenada x del centro
yflaot Coordenada y del centro
rfloat Radio

◆ FCircle() [2/2]

EXPORT sdl::FCircle::FCircle ( FPoint & c,
float r = 0 )
inline

Constructor a partir de un punto para el centro y radio.

Parameters
cFPoint Coordenadas del centro
rfloat Radio

Member Function Documentation

◆ Center()

EXPORT FPoint & sdl::FCircle::Center ( )
inline

Devuelve las coordenadas del centro de la circunferencia.

Returns
FPoint& referencia al valor del centro de la circunferencia

◆ Move()

EXPORT FCircle sdl::FCircle::Move ( float alfa,
sdl::FPoint & displacement,
sdl::FPoint & escale )

Mueve la circunferencia rotando en ángulo dado y a la distancia especificada, aplicando una escala.

Se usan las formulas de traslación para calcular las nuevas coordenadas del centro según: x' = x * x" * cos(α) + y * y" * sin(α) + dx y' = -x * x" * sin(α) + y * y" * cos(α) + dy

Parameters
alfafloat ángulo de rotación
displacementFPoint desplazamiento
escaleFPoint escala en los ejes x e y
Returns
FCircle objeto con el resultado de la traslación

◆ R()

EXPORT float & sdl::FCircle::R ( )
inline

Obtiene el radio.

Returns
float valor del radio

◆ X()

EXPORT float & sdl::FCircle::X ( )
inline

Obtiene la coordenada x del centro.

Returns
float coordenada x del centro

◆ Y()

EXPORT float & sdl::FCircle::Y ( )
inline

Obtiene la coordenada y del centro.

Returns
float coordenada y del centro

Member Data Documentation

◆ center

FPoint sdl::FCircle::center
protected

Centro

◆ radius

float sdl::FCircle::radius
protected

Radio


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