57 lines
1.1 KiB
C++
57 lines
1.1 KiB
C++
/*
|
||
* © Copyright 2014 – Urheberrechtshinweis
|
||
* Alle Rechte vorbehalten / All Rights Reserved
|
||
*
|
||
* Programmcode ist urheberrechtlich geschuetzt.
|
||
* Das Urheberrecht liegt, soweit nicht ausdruecklich anders gekennzeichnet, bei Frank Ebner.
|
||
* Keine Verwendung ohne explizite Genehmigung.
|
||
* (vgl. § 106 ff UrhG / § 97 UrhG)
|
||
*/
|
||
|
||
#ifndef FLOORPLANRENDERERMODEL_H
|
||
#define FLOORPLANRENDERERMODEL_H
|
||
|
||
#include <Indoor/floorplan/v2/Floorplan.h>
|
||
#include <Indoor/floorplan/3D/FloorplanMesh.h>
|
||
|
||
#include "RenderTriangle.h"
|
||
|
||
/**
|
||
* model for rendering the floorplan
|
||
*/
|
||
class FloorplanRendererModel {
|
||
|
||
private:
|
||
|
||
Floorplan::IndoorMap* im;
|
||
Floorplan3D::FloorplanMesh mesh;
|
||
|
||
RenderTriangle triaSolid;
|
||
RenderTriangle triaTransp;
|
||
|
||
BBox3 bbox;
|
||
|
||
int getMaterial(const Floorplan3D::Obstacle3D& o) const;
|
||
|
||
|
||
public:
|
||
|
||
bool showDoors = false;
|
||
|
||
/** ctor */
|
||
FloorplanRendererModel();
|
||
|
||
Floorplan3D::FloorplanMesh& getMesh();
|
||
|
||
BBox3 getBBox() const;
|
||
|
||
const RenderTriangle& getTriaSolid();
|
||
|
||
const RenderTriangle& getTriaTransp();
|
||
|
||
void rebuild(Floorplan::IndoorMap* im);
|
||
|
||
};
|
||
|
||
#endif // FLOORPLANRENDERERMODEL_H
|