📄 face.h
字号:
// Face.h: interface for the Face class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_FACE_H__40242DED_D29D_4133_8A82_F360A5F3AB38__INCLUDED_)
#define AFX_FACE_H__40242DED_D29D_4133_8A82_F360A5F3AB38__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include <vector>
using namespace std;
#include "Mesh.h"
class Mesh;
class Face
{
public:
void reset();
void dump() const;
void addEdge(Mesh::EDGEPOS edgeIdx) { m_edgePosSet.push_back(edgeIdx); };//添加边
int getVertexNumber();//获取顶点数量
Face(vector<int> & faceVertexsIdx, int idx = -1);//vector<Mesh::VERTEXPOS>
virtual ~Face();
int m_index; // 用index避免整块face数据的比较
bool operator == (const Face& f) const;
private:
int m_newFacePointIdx;//新面点的索引
Vector3d m_normal;//法线
typedef vector<int> VERTEXPOSSET; //vector<Mesh::VERTEXPOS>
typedef vector<Mesh::EDGEPOS> EDGEPOSSET;
VERTEXPOSSET m_vertexIdxSet;
VERTEXPOSSET m_dooSabinVertexIdxSet;
EDGEPOSSET m_edgePosSet; // edge i 对应 i - (i+1)% vertexs number
friend class Mesh;
// friend void Mesh::prepareSubdivData();
// friend void Mesh::calcSubdivVertex();
// friend Mesh;
};
#endif // !defined(AFX_FACE_H__40242DED_D29D_4133_8A82_F360A5F3AB38__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -