Castor3D 0.15.0
Multiplatform 3D engine
|
#include <OverlayCategory.hpp>
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 |
Overlay & | getOverlay () 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 | |
Overlay * | m_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 {} |
|
explicit |
Constructeur.
[in] | type | Le type de l'incrustation |
|
virtual |
Destructeur.
|
pure virtual |
Dessine l'incrustation.
Implémenté dans castor3d::BorderPanelOverlay, castor3d::PanelOverlay, et castor3d::TextOverlay.
C3D_API castor::Position castor3d::OverlayCategory::computePixelPosition | ( | ) | const |
Récupère la position de l'incrustation.
C3D_API castor::Size castor3d::OverlayCategory::computePixelSize | ( | ) | const |
Récupère la taille de l'incrustation.
C3D_API castor::Point4d castor3d::OverlayCategory::computeScissorRect | ( | ) | const |
Met à jour le scissor pour cette incrustation.
C3D_API castor::Point2d castor3d::OverlayCategory::getAbsolutePosition | ( | ) | const |
Récupère la position absolue de l'incrustation.
C3D_API castor::Position castor3d::OverlayCategory::getAbsolutePosition | ( | castor::Size const & | size | ) | const |
Récupère la position absolue de l'incrustation, en pixels.
[in] | size | La taille de l'écran |
C3D_API castor::Point2d castor3d::OverlayCategory::getAbsoluteSize | ( | ) | const |
Récupère la taille absolue de l'incrustation.
C3D_API castor::Size castor3d::OverlayCategory::getAbsoluteSize | ( | castor::Size const & | size | ) | const |
Récupère la taille absolue de l'incrustation, en pixels.
[in] | size | La taille de l'écran |
|
inlinenoexcept |
Références m_displayRect.
|
inlinenoexcept |
Références m_index.
|
inlinenoexcept |
Références m_level.
|
inlinenoexcept |
Références m_material.
|
inlinenoexcept |
Références m_overlay.
C3D_API castor::String const & castor3d::OverlayCategory::getOverlayName | ( | ) | const |
Récupère le nom de l'incrustation.
|
protected |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
Références m_relPosition.
|
inlinenoexcept |
Références m_relSize.
C3D_API castor::Point2d castor3d::OverlayCategory::getRenderRatio | ( | castor::Size const & | size | ) | const |
[in] | size | La taille du rendu |
|
inlinenoexcept |
Références m_type.
|
inlinenoexcept |
Références m_uv.
|
inlinenoexcept |
Références isChanged(), isPositionChanged(), et isSizeChanged().
|
inlinenoexcept |
Références m_pxPosition.
Référencé par getPixelPosition().
|
inlinenoexcept |
Références m_pxSize.
Référencé par getPixelSize().
|
inlinevirtualnoexcept |
Réimplémentée dans castor3d::BorderPanelOverlay, et castor3d::TextOverlay.
Référencé par hasAnyChange().
|
inlinenoexcept |
|
protected |
true
si l'incrustation est complètement découpée. Référencé par isDisplayable().
C3D_API bool castor3d::OverlayCategory::isPositionChanged | ( | ) | const |
true
si la position de cette incrustation ou d'un de ses parents a changé. Référencé par hasAnyChange().
C3D_API bool castor3d::OverlayCategory::isSizeChanged | ( | ) | const |
true
si les dimensions de cette incrustation ou d'un de ses parents ont changé. Référencé par hasAnyChange().
|
inlinenoexcept |
Références m_visible.
C3D_API void castor3d::OverlayCategory::reset | ( | ) |
Marque cette catégorie comme propre.
|
virtual |
Définit le matériau.
[in] | material | La nouvelle valeur |
|
inlinenoexcept |
|
inlinenoexcept |
Références m_positionChanged, et m_pxPosition.
|
inlinenoexcept |
Références m_pxSize, et m_sizeChanged.
|
inlinenoexcept |
Références m_positionChanged, et m_relPosition.
|
inlinenoexcept |
Références m_relSize, et m_sizeChanged.
|
inlinenoexcept |
Références m_uv.
|
inlinenoexcept |
Références m_visible.
C3D_API void castor3d::OverlayCategory::update | ( | OverlayRenderer const & | renderer | ) |
Met à jour la position, taille...
|
protected |
Met à jour la taille de l'incrustation, en prenant en compte la taille en pixel voulue.
|
protected |
Met à jour la position de l'incrustation, en prenant en compte la la position en pixel voulue.
|
protected |
Met à jour la taille de l'incrustation, en prenant en compte la taille en pixel voulue.
|
protected |
La taille utilisée pour calculer la position relative depuis la position en pixels.
|
protected |
Dit si l'incrustation peut être affichée (dimensions valides, texte non vide, ...).
Référencé par isDisplayable().
|
protected |
La zone où les enfants peuvent se dessiner.
Référencé par getDisplayRect().
|
protected |
L'index de l'overlay.
Référencé par getIndex(), et setOrder().
|
protected |
Le niveau de l'overlay.
Référencé par getLevel(), et setOrder().
|
protected |
Le matériau utilisé par l'incrustation.
Référencé par getMaterial().
|
protected |
L'incrustation.
Référencé par getOverlay(), et setOverlay().
|
protected |
Dit si la position de cette incrustation a changé..
Référencé par setPixelPosition(), et setRelativePosition().
|
protected |
La position relative (à l'écran ou au parent), en pixels.
Référencé par getPixelPosition(), hasPixelPosition(), et setPixelPosition().
|
protected |
La taille absolue en pixels.
Référencé par getPixelSize(), hasPixelSize(), et setPixelSize().
|
protected |
La position relative (au parent ou à l'écran).
Référencé par getRelativePosition(), et setRelativePosition().
|
protected |
La taille relative (à l'écran ou au parent).
Référencé par getRelativeSize(), et setRelativeSize().
|
protected |
Dit si les dimensions de cette incrustation ont changé.
Référencé par castor3d::BorderPanelOverlay::setBorderPosition(), castor3d::BorderPanelOverlay::setPixelBorderSize(), castor3d::BorderPanelOverlay::setPixelBottomBorderSize(), castor3d::BorderPanelOverlay::setPixelLeftBorderSize(), castor3d::BorderPanelOverlay::setPixelRightBorderSize(), setPixelSize(), castor3d::BorderPanelOverlay::setPixelTopBorderSize(), castor3d::BorderPanelOverlay::setRelativeBorderSize(), castor3d::BorderPanelOverlay::setRelativeBottomBorderSize(), castor3d::BorderPanelOverlay::setRelativeLeftBorderSize(), castor3d::BorderPanelOverlay::setRelativeRightBorderSize(), setRelativeSize(), et castor3d::BorderPanelOverlay::setRelativeTopBorderSize().
|
protected |
Le type de l'incrustation.
Référencé par getType().
|
protected |
|
protected |
La visibilité.
Référencé par isVisible(), et setVisible().