Search for usage in LXR

KOSMIndoorMap::SceneGraphItemPayload Class Referenceabstract

#include <scenegraphitem.h>

Inheritance diagram for KOSMIndoorMap::SceneGraphItemPayload:

Public Types

enum  RenderPhase : uint8_t {
  NoPhase = 0, FillPhase = 1, CasingPhase = 2, StrokePhase = 4,
  LabelPhase = 8

Public Member Functions

virtual QRectF boundingRect () const =0
bool inHUDSpace () const
bool inSceneSpace () const
virtual uint8_t renderPhases () const =0

Public Attributes

int z = 0

Detailed Description

Payload base class for scene graph items.

Definition at line 57 of file scenegraphitem.h.

Member Enumeration Documentation

◆ RenderPhase

See MapCSS spec: "Within a layer, first all fills are rendered, then all casings, then all strokes, then all icons and labels." .

Definition at line 63 of file scenegraphitem.h.

Member Function Documentation

◆ boundingRect()

virtual QRectF KOSMIndoorMap::SceneGraphItemPayload::boundingRect ( ) const
pure virtual

Bounding box of this item in scene coordinates.

Performance trumps precision here, so estimating this slightly larger rather than computing it expensively makes sense.

Implemented in KOSMIndoorMap::LabelItem, KOSMIndoorMap::MultiPolygonItem, KOSMIndoorMap::PolygonItem, and KOSMIndoorMap::PolylineItem.

◆ inHUDSpace()

bool SceneGraphItemPayload::inHUDSpace ( ) const

Is this item drawn in HUD coordinates (as oposed to scene coordinates)?

Definition at line 20 of file scenegraphitem.cpp.

◆ inSceneSpace()

bool SceneGraphItemPayload::inSceneSpace ( ) const

Is this item drawn in scene coordinates (as oposed to HUD coordinates)?

Definition at line 15 of file scenegraphitem.cpp.

◆ renderPhases()

virtual uint8_t KOSMIndoorMap::SceneGraphItemPayload::renderPhases ( ) const
pure virtual

Returns in which phase this item needs to be rendered (can be multiple).

Implemented in KOSMIndoorMap::LabelItem, KOSMIndoorMap::PolygonBaseItem, and KOSMIndoorMap::PolylineItem.

The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2022 The KDE developers.
Generated on Fri Aug 19 2022 04:06:44 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.