www.pudn.com > roam.rar > ncgcolor.cpp


#include "stdafx.h" 
#include "ncgcolor.h" 
//============================================================================== 
//Title:        地网GeoBeans 
// 
//Version:      4.0 
// 
//Copyright:    Copyright (c) 1998-2001 
// 
//Author:       北京国遥万维信息技术有限公司 
// 
//Programer:    LiuDonglin 
// 
//Company:      北京国遥万维信息技术有限公司 
//  National Engineering Research Center for Geoinformatics (NCG) 
// 
//Modified: 
//    200105080830  LiuDonglin 
// 
//============================================================================== 
 
//函数说明开始 
//========================================================================// 
//      功能:计算假彩色,最大值赋予红色,最小值赋予兰色. 
//      参数:v, vmax, vmin, c 
//      (入口)v:	待转换的值 
//			vmax:	计算区间的最大值 
//			vmin:	计算区间的最小值 
//      (出口):c	假彩色红绿蓝的值,取值范围0.0-1.0 
// 
//      返回:	成功返回true; 
//				失败返回false; 
//      说明:	输入值v如果小于vmin返回兰色,大于vmax赋予红色。 
//         
//      调用方法:meGetPseudoColor()  
//      日期:200104231605	LiuDonglin 
//========================================================================// 
//函数名: meGetPseudoColor() 
//函数说明结束 
bool meGetPseudoColor(double v,double vmax,double vmin,FCOLOR& c,int flag){ 
	if(flag == 0) 
	{ 
		if(v>0){ 
			vmin = -vmax*2.5; 
		}else{ 
			v = vmin; 
		} 
	} 
 
	if(v < vmin + (vmax-vmin)/4.0f) 
	{ 
		c.red = 0.0f;  //Red 
		c.green = 4.0f*(v-vmin)/(vmax-vmin); //Green 
		c.blue =1.0f;  //Blue 
	} 
	else if(v