VICUS Library
Documentation of Vicus library
|
#include <VICUS_Surface.h>
Public Member Functions | |
const char * | typeinfo () const override |
void | initializeColorBasedOnInclination () |
void | updateParents () |
VICUS_READWRITE VICUS_COMPARE_WITH_ID const IBKMK::Polygon3D & | polygon3D () const |
void | setPolygon3D (const IBKMK::Polygon3D &polygon3D) |
const std::vector< SubSurface > & | subSurfaces () const |
const std::vector< Surface > & | childSurfaces () const |
void | setChildAndSubSurfaces (const std::vector< SubSurface > &subSurfaces, const std::vector< Surface > &childSurfaces) |
const PlaneGeometry & | geometry () const |
double | areaWithoutSubsurfaces () const |
void | flip () |
void | changeOrigin (unsigned int idx) |
Public Member Functions inherited from VICUS::Object | |
Object ()=default | |
Object (Object const &)=default | |
virtual | ~Object () |
Object * | findChild (unsigned int ID) |
const Object * | findChild (unsigned int ID) const |
void | collectChildIDs (std::set< unsigned int > &nodeContainer) const |
QString | info () const |
Public Attributes | |
QColor | m_displayColor |
QColor | m_color |
ComponentInstance * | m_componentInstance = nullptr |
NANDRAD::IDVectorMap< double > | m_viewFactors |
Public Attributes inherited from VICUS::Object | |
Object * | m_parent = nullptr |
unsigned int | m_id = INVALID_ID |
bool | m_selected = false |
bool | m_visible = true |
QString | m_displayName |
std::string | m_ifcGUID |
Additional Inherited Members | |
Protected Attributes inherited from VICUS::Object | |
std::vector< Object * > | m_children |
Represents a surface and its associated properties.
double VICUS::Surface::areaWithoutSubsurfaces | ( | ) | const |
Subtracts the subsurface are from the surface area
void VICUS::Surface::changeOrigin | ( | unsigned int | idx | ) |
|
inline |
void VICUS::Surface::flip | ( | ) |
Flips the normal vector of polygon. This also swaps local X and localY axes, so the x and y coordinates of our sub-surface polygons are swapped as well.
|
inline |
Gives read-access to the surface's geometry.
void VICUS::Surface::initializeColorBasedOnInclination | ( | ) |
Sets default surface color based on inclination of associated plane geometry.
|
inline |
Gives read-access to the surface's main polygon.
void VICUS::Surface::setChildAndSubSurfaces | ( | const std::vector< SubSurface > & | subSurfaces, |
const std::vector< Surface > & | childSurfaces | ||
) |
void VICUS::Surface::setPolygon3D | ( | const IBKMK::Polygon3D & | polygon3D | ) |
Sets the polygon.
|
inline |
|
inlineoverridevirtual |
Type-info string.
Implements VICUS::Object.
void VICUS::Surface::updateParents | ( | ) |
|
mutable |
Color to be used when next updating the geometry. Color is set based on hightlighting/selection algorithm.
Color is not a regular property of a surface, but rather of the associated parameter elements.
ComponentInstance* VICUS::Surface::m_componentInstance = nullptr |
Runtime-only pointer to the associated component instance (or nullptr, if surface is not yet connected to any component. This would be considered an incomplete data model. The pointer is updated in VICUS::Project::updatePointers().
QColor VICUS::Surface::m_displayColor |
The color to be used when rendering the surface in regular mode (not in false-color mode). Important also for daylight calculation.
NANDRAD::IDVectorMap<double> VICUS::Surface::m_viewFactors |
Map that stores the id of a (sub)surface and the viewFactor onto that (subSurface)