EgtGeomKernel 1.5d7 :
- aggiunti materiali e loro gestione - aggiunta gestione libreria materiali.
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
//
|
||||
//
|
||||
// Modifiche : 12.03.14 DS Creazione modulo.
|
||||
//
|
||||
// 24.04.14 DS Agg. GetSurfBackColor.
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
@@ -19,24 +19,31 @@
|
||||
using namespace std ;
|
||||
|
||||
//------------------------- Constants ----------------------------------------
|
||||
static const char* SZ_WHITE = "WHITE" ;
|
||||
static const char* SZ_LGRAY = "LGRAY" ;
|
||||
static const char* SZ_GRAY = "GRAY" ;
|
||||
static const char* SZ_BLACK = "BLACK" ;
|
||||
static const char* SZ_RED = "RED" ;
|
||||
static const char* SZ_MAROON = "MAROON" ;
|
||||
static const char* SZ_YELLOW = "YELLOW" ;
|
||||
static const char* SZ_OLIVE = "OLIVE" ;
|
||||
static const char* SZ_LIME = "LIME" ;
|
||||
static const char* SZ_GREEN = "GREEN" ;
|
||||
static const char* SZ_AQUA = "AQUA" ;
|
||||
static const char* SZ_TEAL = "TEAL" ;
|
||||
static const char* SZ_BLUE = "BLUE" ;
|
||||
static const char* SZ_NAVY = "NAVY" ;
|
||||
static const char* SZ_FUCHSIA = "FUCHSIA" ;
|
||||
static const char* SZ_PURPLE = "PURPLE" ;
|
||||
static const char* SZ_ORANGE = "ORANGE" ;
|
||||
static const char* SZ_BROWN = "BROWN" ;
|
||||
struct NamedColor {
|
||||
const char* szName ;
|
||||
Color colC ;
|
||||
} ;
|
||||
static const NamedColor StdColor[] = {
|
||||
{ "WHITE", WHITE},
|
||||
{ "LGRAY", LGRAY},
|
||||
{ "GRAY", GRAY},
|
||||
{ "BLACK", BLACK},
|
||||
{ "RED", RED},
|
||||
{ "MAROON", MAROON},
|
||||
{ "YELLOW", YELLOW},
|
||||
{ "OLIVE", OLIVE},
|
||||
{ "LIME", LIME},
|
||||
{ "GREEN", GREEN},
|
||||
{ "AQUA", AQUA},
|
||||
{ "TEAL", TEAL},
|
||||
{ "BLUE", BLUE},
|
||||
{ "NAVY", NAVY},
|
||||
{ "FUCHSIA", FUCHSIA},
|
||||
{ "PURPLE", PURPLE},
|
||||
{ "ORANGE", ORANGE},
|
||||
{ "BROWN", BROWN}
|
||||
} ;
|
||||
static const int NUM_STDCOLOR = ( sizeof(StdColor) / sizeof(StdColor[0]) ) ;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
bool
|
||||
@@ -44,92 +51,28 @@ GetStdColor( const string& sName, Color& cCol)
|
||||
{
|
||||
string sCol = sName ;
|
||||
ToUpper( sCol) ;
|
||||
if ( sCol == SZ_WHITE)
|
||||
cCol = WHITE ;
|
||||
else if ( sCol == SZ_LGRAY)
|
||||
cCol = LGRAY ;
|
||||
else if ( sCol == SZ_GRAY)
|
||||
cCol = GRAY ;
|
||||
else if ( sCol == SZ_BLACK)
|
||||
cCol = BLACK ;
|
||||
else if ( sCol == SZ_RED)
|
||||
cCol = RED ;
|
||||
else if ( sCol == SZ_MAROON)
|
||||
cCol = MAROON ;
|
||||
else if ( sCol == SZ_YELLOW)
|
||||
cCol = YELLOW ;
|
||||
else if ( sCol == SZ_OLIVE)
|
||||
cCol = OLIVE ;
|
||||
else if ( sCol == SZ_LIME)
|
||||
cCol = LIME ;
|
||||
else if ( sCol == SZ_GREEN)
|
||||
cCol = GREEN ;
|
||||
else if ( sCol == SZ_AQUA)
|
||||
cCol = AQUA ;
|
||||
else if ( sCol == SZ_TEAL)
|
||||
cCol = TEAL ;
|
||||
else if ( sCol == SZ_BLUE)
|
||||
cCol = BLUE ;
|
||||
else if ( sCol == SZ_NAVY)
|
||||
cCol = NAVY ;
|
||||
else if ( sCol == SZ_FUCHSIA)
|
||||
cCol = FUCHSIA ;
|
||||
else if ( sCol == SZ_PURPLE)
|
||||
cCol = PURPLE ;
|
||||
else if ( sCol == SZ_ORANGE)
|
||||
cCol = ORANGE ;
|
||||
else if ( sCol == SZ_BROWN)
|
||||
cCol = BROWN ;
|
||||
else
|
||||
return false ;
|
||||
for ( int i = 0 ; i < NUM_STDCOLOR ; ++ i) {
|
||||
if ( sCol == StdColor[i].szName) {
|
||||
cCol = StdColor[i].colC ;
|
||||
return true ;
|
||||
}
|
||||
}
|
||||
|
||||
return true ;
|
||||
return false ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
bool
|
||||
GetNameOfStdColor( Color cCol, string& sName)
|
||||
{
|
||||
if ( cCol == WHITE)
|
||||
sName = SZ_WHITE ;
|
||||
else if ( cCol == LGRAY)
|
||||
sName = SZ_LGRAY ;
|
||||
else if ( cCol == GRAY)
|
||||
sName = SZ_GRAY ;
|
||||
else if ( cCol == BLACK)
|
||||
sName = SZ_BLACK ;
|
||||
else if ( cCol == RED)
|
||||
sName = SZ_RED ;
|
||||
else if ( cCol == MAROON)
|
||||
sName = SZ_MAROON ;
|
||||
else if ( cCol == YELLOW)
|
||||
sName = SZ_YELLOW ;
|
||||
else if ( cCol == OLIVE)
|
||||
sName = SZ_OLIVE ;
|
||||
else if ( cCol == LIME)
|
||||
sName = SZ_LIME ;
|
||||
else if ( cCol == GREEN)
|
||||
sName = SZ_GREEN ;
|
||||
else if ( cCol == AQUA)
|
||||
sName = SZ_AQUA ;
|
||||
else if ( cCol == TEAL)
|
||||
sName = SZ_TEAL ;
|
||||
else if ( cCol == BLUE)
|
||||
sName = SZ_BLUE ;
|
||||
else if ( cCol == NAVY)
|
||||
sName = SZ_NAVY ;
|
||||
else if ( cCol == FUCHSIA)
|
||||
sName = SZ_FUCHSIA ;
|
||||
else if ( cCol == PURPLE)
|
||||
sName = SZ_PURPLE ;
|
||||
else if ( cCol == ORANGE)
|
||||
sName = SZ_ORANGE ;
|
||||
else if ( cCol == BROWN)
|
||||
sName = SZ_BROWN ;
|
||||
else
|
||||
return false ;
|
||||
for ( int i = 0 ; i < NUM_STDCOLOR ; ++ i) {
|
||||
if ( cCol == StdColor[i].colC) {
|
||||
sName = StdColor[i].szName ;
|
||||
return true ;
|
||||
}
|
||||
}
|
||||
|
||||
return true ;
|
||||
return false ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
@@ -140,4 +83,15 @@ GetOppositeColor( Color cCol)
|
||||
MAX_RGB - cCol.GetIntGreen(),
|
||||
MAX_RGB - cCol.GetIntBlue(),
|
||||
cCol.GetIntAlpha()) ;
|
||||
}
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
Color
|
||||
GetSurfBackColor( Color cCol)
|
||||
{
|
||||
float fLum = ( cCol.GetRed() + cCol.GetGreen() + cCol.GetBlue()) / 3 ;
|
||||
return Color( 0.4 * fLum + 0.2 * cCol.GetRed(),
|
||||
0.4 * fLum + 0.2 * cCol.GetGreen(),
|
||||
0.4 * fLum + 0.2 * cCol.GetBlue(),
|
||||
cCol.GetAlpha()) ;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user