Blender  V2.93
Nature.h
Go to the documentation of this file.
1 /*
2  * This program is free software; you can redistribute it and/or
3  * modify it under the terms of the GNU General Public License
4  * as published by the Free Software Foundation; either version 2
5  * of the License, or (at your option) any later version.
6  *
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10  * GNU General Public License for more details.
11  *
12  * You should have received a copy of the GNU General Public License
13  * along with this program; if not, write to the Free Software Foundation,
14  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
15  */
16 
17 #pragma once
18 
24 namespace Freestyle {
25 
27 namespace Nature {
28 
29 /* XXX Why not using enums??? */
30 /* In order to optimize for space (enum is int) - T.K. */
31 
32 typedef unsigned short VertexNature;
34 static const VertexNature POINT = 0; // 0
36 static const VertexNature S_VERTEX = (1 << 0); // 1
38 static const VertexNature VIEW_VERTEX = (1 << 1); // 2
40 static const VertexNature NON_T_VERTEX = (1 << 2); // 4
42 static const VertexNature T_VERTEX = (1 << 3); // 8
44 static const VertexNature CUSP = (1 << 4); // 16
45 
46 typedef unsigned short EdgeNature;
48 static const EdgeNature NO_FEATURE = 0; // 0
50 static const EdgeNature SILHOUETTE = (1 << 0); // 1
52 static const EdgeNature BORDER = (1 << 1); // 2
54 static const EdgeNature CREASE = (1 << 2); // 4
56 static const EdgeNature RIDGE = (1 << 3); // 8
58 static const EdgeNature VALLEY = (1 << 4); // 16
60 static const EdgeNature SUGGESTIVE_CONTOUR = (1 << 5); // 32
62 static const EdgeNature MATERIAL_BOUNDARY = (1 << 6); // 64
64 static const EdgeNature EDGE_MARK = (1 << 7); // 128
65 
66 } // end of namespace Nature
67 
68 } /* namespace Freestyle */
static const EdgeNature NO_FEATURE
Definition: Nature.h:48
static const EdgeNature BORDER
Definition: Nature.h:52
static const EdgeNature MATERIAL_BOUNDARY
Definition: Nature.h:62
static const VertexNature S_VERTEX
Definition: Nature.h:36
unsigned short VertexNature
Definition: Nature.h:32
static const EdgeNature EDGE_MARK
Definition: Nature.h:64
unsigned short EdgeNature
Definition: Nature.h:46
static const EdgeNature VALLEY
Definition: Nature.h:58
static const VertexNature VIEW_VERTEX
Definition: Nature.h:38
static const EdgeNature CREASE
Definition: Nature.h:54
static const VertexNature T_VERTEX
Definition: Nature.h:42
static const EdgeNature RIDGE
Definition: Nature.h:56
static const VertexNature NON_T_VERTEX
Definition: Nature.h:40
static const VertexNature CUSP
Definition: Nature.h:44
static const EdgeNature SILHOUETTE
Definition: Nature.h:50
static const EdgeNature SUGGESTIVE_CONTOUR
Definition: Nature.h:60
static const VertexNature POINT
Definition: Nature.h:34
inherits from class Rep
Definition: AppCanvas.cpp:32