11 #ifndef VIEW_VIEW_PARAMETER_H_
12 #define VIEW_VIEW_PARAMETER_H_
28 double light_triangles;
37 V_NONE, V_SIMPLE, V_COUNT
41 E_NONE, E_SIMPLE, E_COUNT
45 T_NONE, T_SIMPLE, T_COUNT
48 VERTEX_MODE vertex_mode;
50 TRIANGLE_MODE triangle_mode;
52 void change_vertex_mode() {
53 int current_value = vertex_mode;
54 vertex_mode =
static_cast<VERTEX_MODE
> (++current_value % V_COUNT);
55 std::clog <<
"Vertex mode : ";
56 switch (vertex_mode) {
58 std::clog <<
"empty\n";
61 std::clog <<
"simple\n";
68 void change_vertex_mode(
int new_mode) {
69 vertex_mode =
static_cast<VERTEX_MODE
> (new_mode % V_COUNT);
72 void change_edge_mode() {
73 int current_value = edge_mode;
74 edge_mode =
static_cast<EDGE_MODE
> (++current_value % E_COUNT);
77 void change_edge_mode(
int new_mode) {
78 edge_mode =
static_cast<EDGE_MODE
> (new_mode % E_COUNT);
81 void change_triangle_mode() {
82 int current_value = triangle_mode;
83 triangle_mode =
static_cast<TRIANGLE_MODE
> (++current_value % T_COUNT);
88 relative_light =
true;
89 vertex_mode = V_SIMPLE;
91 triangle_mode = T_NONE;
97 light_triangles = 0.85;
102 friend std::ostream& operator<<(std::ostream& stream,
const View_parameter& param) {
103 stream << param.light <<
" ";
104 stream << param.relative_light <<
" ";
105 stream << param.vertex_mode <<
" ";
106 stream << param.edge_mode <<
" ";
107 stream << param.triangle_mode <<
" ";
108 stream << param.size_vertices <<
" ";
109 stream << param.size_edges <<
" ";
110 stream << param.light_edges <<
" ";
111 stream << param.light_triangles <<
" ";
112 stream << param.
theta <<
" ";
113 stream << param.phi <<
" ";
117 friend std::istream& operator>>(std::istream& stream,
View_parameter& param) {
118 stream >> param.light;
119 stream >> param.relative_light;
122 param.vertex_mode =
static_cast<VERTEX_MODE
> (a % V_COUNT);
124 param.edge_mode =
static_cast<EDGE_MODE
> (a % E_COUNT);
126 param.triangle_mode =
static_cast<TRIANGLE_MODE
> (a % T_COUNT);
128 stream >> param.size_vertices;
129 stream >> param.size_edges;
130 stream >> param.light_edges;
131 stream >> param.light_triangles;
132 stream >> param.
theta;
Definition: View_parameter.h:20
double theta
Definition: View_parameter.h:33