Files
Graphics-Rasterizer/Polygon3D.h
IDunnoDev 773507b4ab Week7 [09/11] - [11/11]
Added Backface Culling Methods to the Model Class
Added Depth, Normal and Culled Flag Variables to the Polygon3D Class
Added Vector3D Class
Added - operator to the Vertex Class
Cleaned up Code, Adding Void to Params etc
2021-12-11 14:48:46 +00:00

36 lines
674 B
C++

#pragma once
#include "Vector3D.h"
class Polygon3D
{
public:
Polygon3D();
Polygon3D(int index0, int index1, int index2);
Polygon3D(const Polygon3D& other);
~Polygon3D();
size_t GetPolygonVertexCount() const;
int GetIndex(int index) const;
void SetNormal(const Vector3D& normal);
Vector3D GetNormal() const;
void SetDepth(float depth);
float GetDepth() const;
void SetCulled(bool culled);
bool GetCulled() const;
Polygon3D& operator= (const Polygon3D& rhs);
private:
int _indices[3];
Vector3D _normal;
float _depth = 0.0f;
bool _culled = false;
void Copy(const Polygon3D& other);
};