Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
/////////////////////////////////////////////
///// polygon_attribute.h 1995.05.15 //////
/////////////////////////////////////////////
#ifndef POLYGON_ATTRIBUTE_H
#define POLYGON_ATTRIBUTE_H
#include "object.h"
//--------------------------------------//
//----- class PolygonAttribute -------//
//--------------------------------------//
struct PolygonAttribute {
int label ;
double red , green, blue ; // 0--1
int color_mode ;
// enum { Facet::SOFT_COLOR , Facet::HARD_COLOR } ;
public:
PolygonAttribute(void) {
label = -1 ;
red = green = blue = 1.0 ;
color_mode = Facet::SOFT_COLOR ;
}
void operator() ( int label_given , double red_given, double green_given, double blue_given )
{
set( label_given , red_given, green_given, blue_given );
}
void set ( int label_given , double red_given, double green_given, double blue_given )
{
label = label_given ;
red = red_given ;
green = green_given ;
blue = blue_given ;
if( label < 0 ) { label = 0 ; }
if( red > 1.0 ) { red = 1.0 ; } if( red < 0.0 ) { red = 0.0 ; }
if( green > 1.0 ) { green = 1.0 ; } if( green < 0.0 ) { green = 0.0 ; }
if( blue > 1.0 ) { blue = 1.0 ; } if( blue < 0.0 ) { blue = 0.0 ; }
}
void setColorMode( int mode )
{
color_mode = mode ;
if( color_mode <= Facet::OBJECT_COLOR || color_mode > Facet::HARD_COLOR )
{
color_mode = Facet::SOFT_COLOR ;
}
}
int getLabel() const { return label ; }
double getRed () const { return red ; }
double getGreen() const { return green ; }
double getBlue () const { return blue ; }
int getColorMode() const { return color_mode ; }
};// PolygonAttribure
#endif