Castor3D 0.15.0
Multiplatform 3D engine
Classes | Fonctions membres publiques | Fonctions membres protégées | Attributs protégés | Liste de tous les membres
Référence de la classe castor3d::OverlayCategoryabstract

#include <OverlayCategory.hpp>

Graphe d'héritage de castor3d::OverlayCategory:
Inheritance graph
[légende]
Graphe de collaboration de castor3d::OverlayCategory:
Collaboration graph
[légende]

Classes

struct  Vertex
 Contient les données spécifiques de sommet pour un Overlay. Plus de détails...
 

Fonctions membres publiques

 CU_DeclareVector (Vertex, Vertex)
 
C3D_API OverlayCategory (OverlayType type)
 Constructeur.
 
virtual C3D_API ~OverlayCategory ()
 Destructeur.
 
C3D_API void update (OverlayRenderer const &renderer)
 Met à jour la position, taille...
 
C3D_API void reset ()
 Marque cette catégorie comme propre.
 
virtual C3D_API void accept (OverlayVisitor &renderer) const =0
 Dessine l'incrustation.
 
virtual C3D_API void setMaterial (MaterialObs material)
 Définit le matériau.
 
C3D_API castor::String const & getOverlayName () const
 Récupère le nom de l'incrustation.
 
C3D_API castor::Position getAbsolutePosition (castor::Size const &size) const
 Récupère la position absolue de l'incrustation, en pixels.
 
C3D_API castor::Size getAbsoluteSize (castor::Size const &size) const
 Récupère la taille absolue de l'incrustation, en pixels.
 
C3D_API castor::Point2d getRenderRatio (castor::Size const &size) const
 
C3D_API castor::Point2d getAbsolutePosition () const
 Récupère la position absolue de l'incrustation.
 
C3D_API castor::Point2d getAbsoluteSize () const
 Récupère la taille absolue de l'incrustation.
 
C3D_API bool isSizeChanged () const
 
C3D_API bool isPositionChanged () const
 
C3D_API castor::Size computePixelSize () const
 Récupère la taille de l'incrustation.
 
C3D_API castor::Position computePixelPosition () const
 Récupère la position de l'incrustation.
 
C3D_API castor::Point4d computeScissorRect () const
 Met à jour le scissor pour cette incrustation.
 

Accesseurs.

virtual C3D_API bool isChanged () const noexcept
 
bool hasAnyChange () const noexcept
 
castor::Point4d const & getDisplayRect () const noexcept
 
castor::Point2d const & getRelativeSize () const noexcept
 
castor::Point2d const & getRelativePosition () const noexcept
 
OverlayType getType () const noexcept
 
bool isVisible () const noexcept
 
bool isDisplayable () const noexcept
 
MaterialObs getMaterial () const noexcept
 
uint32_t getIndex () const noexcept
 
uint32_t getLevel () const noexcept
 
Overlay const & getOverlay () const noexcept
 
OverlaygetOverlay () noexcept
 
castor::Point4d const & getUV () const noexcept
 
bool hasPixelPosition () const noexcept
 
bool hasPixelSize () const noexcept
 
castor::Position const & getPixelPosition () const noexcept
 
castor::Size const & getPixelSize () const noexcept
 

Mutateurs.

void setRelativePosition (castor::Point2d const &value) noexcept
 
void setRelativeSize (castor::Point2d const &value) noexcept
 
void setPixelPosition (castor::Position const &value) noexcept
 
void setPixelSize (castor::Size const &value) noexcept
 
void setOverlay (Overlay *value) noexcept
 
void setVisible (bool value) noexcept
 
void setOrder (uint32_t level, uint32_t index) noexcept
 
void setUV (castor::Point4d const &value) noexcept
 

Fonctions membres protégées

C3D_API void updatePosition (OverlayRenderer const &renderer)
 Met à jour la position de l'incrustation, en prenant en compte la la position en pixel voulue.
 
C3D_API void updateSize (OverlayRenderer const &renderer)
 Met à jour la taille de l'incrustation, en prenant en compte la taille en pixel voulue.
 
C3D_API void updateClientArea ()
 Met à jour la taille de l'incrustation, en prenant en compte la taille en pixel voulue.
 
C3D_API castor::Point2d getParentSize () const
 
C3D_API bool isFullyCropped () const
 

Attributs protégés

Overlaym_overlay { nullptr }
 
castor::Point2d m_relPosition
 
castor::Point2d m_relSize
 
std::optional< castor::Position > m_pxPosition
 
std::optional< castor::Size > m_pxSize
 
castor::Size m_computeSize
 
bool m_visible { true }
 
bool m_displayable { false }
 
MaterialObs m_material {}
 
uint32_t m_index { 0 }
 
uint32_t m_level { 0 }
 
OverlayType m_type
 
bool m_sizeChanged { true }
 
bool m_positionChanged { true }
 
castor::Point4d m_uv { 0.0, 0.0, 1.0, 1.0 }
 
castor::Point4d m_displayRect {}
 

Documentation des constructeurs et destructeur

◆ OverlayCategory()

C3D_API castor3d::OverlayCategory::OverlayCategory ( OverlayType  type)
explicit

Constructeur.

Paramètres
[in]typeLe type de l'incrustation

◆ ~OverlayCategory()

virtual C3D_API castor3d::OverlayCategory::~OverlayCategory ( )
virtual

Destructeur.

Documentation des fonctions membres

◆ accept()

virtual C3D_API void castor3d::OverlayCategory::accept ( OverlayVisitor renderer) const
pure virtual

Dessine l'incrustation.

Implémenté dans castor3d::BorderPanelOverlay, castor3d::PanelOverlay, et castor3d::TextOverlay.

◆ computePixelPosition()

C3D_API castor::Position castor3d::OverlayCategory::computePixelPosition ( ) const

Récupère la position de l'incrustation.

Renvoie
La valeur

◆ computePixelSize()

C3D_API castor::Size castor3d::OverlayCategory::computePixelSize ( ) const

Récupère la taille de l'incrustation.

Renvoie
La valeur

◆ computeScissorRect()

C3D_API castor::Point4d castor3d::OverlayCategory::computeScissorRect ( ) const

Met à jour le scissor pour cette incrustation.

◆ CU_DeclareVector()

castor3d::OverlayCategory::CU_DeclareVector ( Vertex  ,
Vertex   
)

◆ getAbsolutePosition() [1/2]

C3D_API castor::Point2d castor3d::OverlayCategory::getAbsolutePosition ( ) const

Récupère la position absolue de l'incrustation.

Renvoie
La position

◆ getAbsolutePosition() [2/2]

C3D_API castor::Position castor3d::OverlayCategory::getAbsolutePosition ( castor::Size const &  size) const

Récupère la position absolue de l'incrustation, en pixels.

Paramètres
[in]sizeLa taille de l'écran
Renvoie
La position

◆ getAbsoluteSize() [1/2]

C3D_API castor::Point2d castor3d::OverlayCategory::getAbsoluteSize ( ) const

Récupère la taille absolue de l'incrustation.

Renvoie
La taille

◆ getAbsoluteSize() [2/2]

C3D_API castor::Size castor3d::OverlayCategory::getAbsoluteSize ( castor::Size const &  size) const

Récupère la taille absolue de l'incrustation, en pixels.

Paramètres
[in]sizeLa taille de l'écran
Renvoie
La taille

◆ getDisplayRect()

castor::Point4d const & castor3d::OverlayCategory::getDisplayRect ( ) const
inlinenoexcept

Références m_displayRect.

◆ getIndex()

uint32_t castor3d::OverlayCategory::getIndex ( ) const
inlinenoexcept

Références m_index.

◆ getLevel()

uint32_t castor3d::OverlayCategory::getLevel ( ) const
inlinenoexcept

Références m_level.

◆ getMaterial()

MaterialObs castor3d::OverlayCategory::getMaterial ( ) const
inlinenoexcept

Références m_material.

◆ getOverlay() [1/2]

Overlay const & castor3d::OverlayCategory::getOverlay ( ) const
inlinenoexcept

Références m_overlay.

◆ getOverlay() [2/2]

Overlay & castor3d::OverlayCategory::getOverlay ( )
inlinenoexcept

Références m_overlay.

◆ getOverlayName()

C3D_API castor::String const & castor3d::OverlayCategory::getOverlayName ( ) const

Récupère le nom de l'incrustation.

Renvoie
La valeur

◆ getParentSize()

C3D_API castor::Point2d castor3d::OverlayCategory::getParentSize ( ) const
protected
Renvoie
La taille de l'écran ou du parent.

◆ getPixelPosition()

castor::Position const & castor3d::OverlayCategory::getPixelPosition ( ) const
inlinenoexcept

Références hasPixelPosition(), et m_pxPosition.

Voici le graphe d'appel pour cette fonction :

◆ getPixelSize()

castor::Size const & castor3d::OverlayCategory::getPixelSize ( ) const
inlinenoexcept

Références hasPixelSize(), et m_pxSize.

Voici le graphe d'appel pour cette fonction :

◆ getRelativePosition()

castor::Point2d const & castor3d::OverlayCategory::getRelativePosition ( ) const
inlinenoexcept

Références m_relPosition.

◆ getRelativeSize()

castor::Point2d const & castor3d::OverlayCategory::getRelativeSize ( ) const
inlinenoexcept

Références m_relSize.

◆ getRenderRatio()

C3D_API castor::Point2d castor3d::OverlayCategory::getRenderRatio ( castor::Size const &  size) const
Paramètres
[in]sizeLa taille du rendu
Renvoie
Le ratio entre les dimensions données et les dimensions utilisées lors du calcul de la position relative depuis la position en pixels.

◆ getType()

OverlayType castor3d::OverlayCategory::getType ( ) const
inlinenoexcept

Références m_type.

◆ getUV()

castor::Point4d const & castor3d::OverlayCategory::getUV ( ) const
inlinenoexcept

Références m_uv.

◆ hasAnyChange()

bool castor3d::OverlayCategory::hasAnyChange ( ) const
inlinenoexcept

Références isChanged(), isPositionChanged(), et isSizeChanged().

Voici le graphe d'appel pour cette fonction :

◆ hasPixelPosition()

bool castor3d::OverlayCategory::hasPixelPosition ( ) const
inlinenoexcept

Références m_pxPosition.

Référencé par getPixelPosition().

Voici le graphe des appelants de cette fonction :

◆ hasPixelSize()

bool castor3d::OverlayCategory::hasPixelSize ( ) const
inlinenoexcept

Références m_pxSize.

Référencé par getPixelSize().

Voici le graphe des appelants de cette fonction :

◆ isChanged()

virtual C3D_API bool castor3d::OverlayCategory::isChanged ( ) const
inlinevirtualnoexcept

Réimplémentée dans castor3d::BorderPanelOverlay, et castor3d::TextOverlay.

Référencé par hasAnyChange().

Voici le graphe des appelants de cette fonction :

◆ isDisplayable()

bool castor3d::OverlayCategory::isDisplayable ( ) const
inlinenoexcept

Références isFullyCropped(), et m_displayable.

Voici le graphe d'appel pour cette fonction :

◆ isFullyCropped()

C3D_API bool castor3d::OverlayCategory::isFullyCropped ( ) const
protected
Renvoie
true si l'incrustation est complètement découpée.

Référencé par isDisplayable().

Voici le graphe des appelants de cette fonction :

◆ isPositionChanged()

C3D_API bool castor3d::OverlayCategory::isPositionChanged ( ) const
Renvoie
true si la position de cette incrustation ou d'un de ses parents a changé.

Référencé par hasAnyChange().

Voici le graphe des appelants de cette fonction :

◆ isSizeChanged()

C3D_API bool castor3d::OverlayCategory::isSizeChanged ( ) const
Renvoie
true si les dimensions de cette incrustation ou d'un de ses parents ont changé.

Référencé par hasAnyChange().

Voici le graphe des appelants de cette fonction :

◆ isVisible()

bool castor3d::OverlayCategory::isVisible ( ) const
inlinenoexcept

Références m_visible.

◆ reset()

C3D_API void castor3d::OverlayCategory::reset ( )

Marque cette catégorie comme propre.

◆ setMaterial()

virtual C3D_API void castor3d::OverlayCategory::setMaterial ( MaterialObs  material)
virtual

Définit le matériau.

Paramètres
[in]materialLa nouvelle valeur

◆ setOrder()

void castor3d::OverlayCategory::setOrder ( uint32_t  level,
uint32_t  index 
)
inlinenoexcept

Références m_index, et m_level.

◆ setOverlay()

void castor3d::OverlayCategory::setOverlay ( Overlay value)
inlinenoexcept

Références m_overlay.

◆ setPixelPosition()

void castor3d::OverlayCategory::setPixelPosition ( castor::Position const &  value)
inlinenoexcept

Références m_positionChanged, et m_pxPosition.

◆ setPixelSize()

void castor3d::OverlayCategory::setPixelSize ( castor::Size const &  value)
inlinenoexcept

Références m_pxSize, et m_sizeChanged.

◆ setRelativePosition()

void castor3d::OverlayCategory::setRelativePosition ( castor::Point2d const &  value)
inlinenoexcept

Références m_positionChanged, et m_relPosition.

◆ setRelativeSize()

void castor3d::OverlayCategory::setRelativeSize ( castor::Point2d const &  value)
inlinenoexcept

Références m_relSize, et m_sizeChanged.

◆ setUV()

void castor3d::OverlayCategory::setUV ( castor::Point4d const &  value)
inlinenoexcept

Références m_uv.

◆ setVisible()

void castor3d::OverlayCategory::setVisible ( bool  value)
inlinenoexcept

Références m_visible.

◆ update()

C3D_API void castor3d::OverlayCategory::update ( OverlayRenderer const &  renderer)

Met à jour la position, taille...

◆ updateClientArea()

C3D_API void castor3d::OverlayCategory::updateClientArea ( )
protected

Met à jour la taille de l'incrustation, en prenant en compte la taille en pixel voulue.

◆ updatePosition()

C3D_API void castor3d::OverlayCategory::updatePosition ( OverlayRenderer const &  renderer)
protected

Met à jour la position de l'incrustation, en prenant en compte la la position en pixel voulue.

◆ updateSize()

C3D_API void castor3d::OverlayCategory::updateSize ( OverlayRenderer const &  renderer)
protected

Met à jour la taille de l'incrustation, en prenant en compte la taille en pixel voulue.

Documentation des données membres

◆ m_computeSize

castor::Size castor3d::OverlayCategory::m_computeSize
protected

La taille utilisée pour calculer la position relative depuis la position en pixels.

◆ m_displayable

bool castor3d::OverlayCategory::m_displayable { false }
protected

Dit si l'incrustation peut être affichée (dimensions valides, texte non vide, ...).

Référencé par isDisplayable().

◆ m_displayRect

castor::Point4d castor3d::OverlayCategory::m_displayRect {}
protected

La zone où les enfants peuvent se dessiner.

Référencé par getDisplayRect().

◆ m_index

uint32_t castor3d::OverlayCategory::m_index { 0 }
protected

L'index de l'overlay.

Référencé par getIndex(), et setOrder().

◆ m_level

uint32_t castor3d::OverlayCategory::m_level { 0 }
protected

Le niveau de l'overlay.

Référencé par getLevel(), et setOrder().

◆ m_material

MaterialObs castor3d::OverlayCategory::m_material {}
protected

Le matériau utilisé par l'incrustation.

Référencé par getMaterial().

◆ m_overlay

Overlay* castor3d::OverlayCategory::m_overlay { nullptr }
protected

L'incrustation.

Référencé par getOverlay(), et setOverlay().

◆ m_positionChanged

bool castor3d::OverlayCategory::m_positionChanged { true }
protected

Dit si la position de cette incrustation a changé..

Référencé par setPixelPosition(), et setRelativePosition().

◆ m_pxPosition

std::optional< castor::Position > castor3d::OverlayCategory::m_pxPosition
protected

La position relative (à l'écran ou au parent), en pixels.

Référencé par getPixelPosition(), hasPixelPosition(), et setPixelPosition().

◆ m_pxSize

std::optional< castor::Size > castor3d::OverlayCategory::m_pxSize
protected

La taille absolue en pixels.

Référencé par getPixelSize(), hasPixelSize(), et setPixelSize().

◆ m_relPosition

castor::Point2d castor3d::OverlayCategory::m_relPosition
protected

La position relative (au parent ou à l'écran).

Référencé par getRelativePosition(), et setRelativePosition().

◆ m_relSize

castor::Point2d castor3d::OverlayCategory::m_relSize
protected

La taille relative (à l'écran ou au parent).

Référencé par getRelativeSize(), et setRelativeSize().

◆ m_sizeChanged

bool castor3d::OverlayCategory::m_sizeChanged { true }
protected

◆ m_type

OverlayType castor3d::OverlayCategory::m_type
protected

Le type de l'incrustation.

Référencé par getType().

◆ m_uv

castor::Point4d castor3d::OverlayCategory::m_uv { 0.0, 0.0, 1.0, 1.0 }
protected

Les UV du panneau.

Référencé par getUV(), et setUV().

◆ m_visible

bool castor3d::OverlayCategory::m_visible { true }
protected

La visibilité.

Référencé par isVisible(), et setVisible().


La documentation de cette classe a été générée à partir du fichier suivant :