Polygon Crucher SDK - Documentation
Documentation
Loading...
Searching...
No Matches
Face.h File Reference

Detailed Description

CFace class definition which is the base class for any kind of face

#include "Collection.h"
#include "Point.h"

Go to the source code of this file.

Classes

class  CFacePropertyData
 CFacePropertyData is the main data chunk of CFaceList which consists of storing the flags. More...
 
class  CFace
 A CFace contains the information related to a given face in a CFaceList. More...
 

Macros

#define POINT_NOT_BELONG_TO_FACE   -1
 
#define EDGE_NOT_BELONG_TO_FACE   -1
 

Typedefs

typedef enum FACE_PROPERTIES FACE_PROPERTIES
 

Enumerations

enum  FACERESULT { FACE_UNCHANGE = 0x00 , FACE_CHANGE = 0x01 , FACE_INVALID = 0x02 , FACE_DUPLICATED_INDEX = 0x04 }
 
enum  FLAGRESULT { CONDITION_BELONG_TO_NONE = 0x00 , CONDITION_BELONG_TO_SOME = 0x01 , CONDITION_BELONG_TO_ALL = 0x02 }
 
enum  FACE_PROPERTIES {
  FACE_NONE = 0x00 , FACE_IS_INVALID = 0x01 , FACE_IS_UNUSED = 0x02 , FACE_IS_HIDDEN = 0x04 ,
  FACE_IS_HOLE = 0x08 , FACE_IS_SINGLE_SIDED = 0x10 , FACE_IS_DOUBLE_SIDED = 0x20 , FACE_IS_SELECTED = 0x40 ,
  FACE_IS_BORDER = 0x1000 , FACE_HAS_COPLANAR_NEIGHBOURG = 0x2000 , FACE_HAS_CONFUSED_POINTS = 0x4000 , FACE_IS_TEMP_SELECTED = 0x8000 ,
  FACE_USER_SELECTED = 0x10000 , FACE_USER_PROPERTIES1 = 0x01000000 , FACE_USER_PROPERTIES2 = 0x02000000 , FACE_USER_PROPERTIES3 = 0x04000000 ,
  FACE_USER_PROPERTIES4 = 0x08000000
}
 Face flags used by any classes that inherit from CFace (C3DFace, CUVWFace...) More...
 

Enumeration Type Documentation

◆ FACE_PROPERTIES

Face flags used by any classes that inherit from CFace (C3DFace, CUVWFace...)

Enumerator
FACE_NONE 

These flags can be used whatever the face class.

FACE_IS_INVALID 

This flag is used when a face a less than 3 indexes or when it is tagged invalid. Geometric faces that have this flag are removed during cleaning operation. Channel face are kept, but the flag is converted to FACE_IS_UNUSED during cleaning operation.

FACE_IS_UNUSED 

This flag is to be used in a dependent channel, meaning that the face should be ignored and does not contain data.

FACE_IS_SINGLE_SIDED 

Force single side display (cannot be used with FACE_IS_DOUBLE_SIDED)

FACE_IS_DOUBLE_SIDED 

Force double side display.

FACE_IS_SELECTED 

Face computed properties.

FACE_IS_TEMP_SELECTED 

used by some algorithm to tag some faces. It must be reset to FALSE each time you need to use it.

FACE_USER_SELECTED 

Flag used for interacting with point list. This is a helper to keep FACE_IS_SELECTED flags is interaction canceled.