From 0329dc95583ae35b47bf5c73f3bfb265712749d3 Mon Sep 17 00:00:00 2001 From: hyzboy Date: Fri, 1 Mar 2019 21:34:21 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0BOM=E5=A4=B4=EF=BC=8C?= =?UTF-8?q?=E5=B9=B6=E7=BB=9F=E4=B8=80=E6=8D=A2=E8=A1=8C=E7=AC=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Base/Color3f.cpp | 150 +++++++++++++++++++++---------------------- src/Base/Color4f.cpp | 140 ++++++++++++++++++++-------------------- 2 files changed, 145 insertions(+), 145 deletions(-) diff --git a/src/Base/Color3f.cpp b/src/Base/Color3f.cpp index ea51aa04..b21dad78 100644 --- a/src/Base/Color3f.cpp +++ b/src/Base/Color3f.cpp @@ -1,75 +1,75 @@ -#include -namespace hgl -{ - void Color3f::Use(COLOR_ENUM ce) - { - r=prv_color[ce].r; - g=prv_color[ce].g; - b=prv_color[ce].b; - } - - void Color3f::Clamp() - { - if(r<0)r=0;if(r>1)r=1; - if(g<0)g=0;if(g>1)g=1; - if(b<0)b=0;if(b>1)b=1; - } - //-------------------------------------------------------------------------------------------------- - /** - * 求当前颜色过渡到另一颜色时某一比例时的颜色 - * @param nr,ng,nb 新的颜色 - * @param pos 过渡比例,0时为当前的颜色,1时为nr,ng,nb - */ - void Color3f::To(float nr,float ng,float nb,float pos) - { - if(pos==0)return; - if(pos==1) - { - r=nr; - g=ng; - b=nb; - return; - } - - r+=(nr-r)*pos; - g+=(ng-g)*pos; - b+=(nb-b)*pos; - } -//-------------------------------------------------------------------------------------------------- - void Color3f::Grey(float v1,float v2,float v3) - { - float lum=v1*0.299+v2*0.587+v3*0.114; - - r=lum; - g=lum; - b=lum; - } - //-------------------------------------------------------------------------------------------------- - void Color3f::Grey() - { - float lum=r*0.299+g*0.587+b*0.114; - - r=lum; - g=lum; - b=lum; - } - //-------------------------------------------------------------------------------------------------- - bool Color3f::operator == (const Color3f &v) - { - if(r!=v.r)return(false); - if(g!=v.g)return(false); - if(b!=v.b)return(false); - - return(true); - } - //-------------------------------------------------------------------------------------------------- - bool Color3f::operator != (const Color3f &v) - { - if(r!=v.r)return(true); - if(g!=v.g)return(true); - if(b!=v.b)return(true); - - return(false); - } - //-------------------------------------------------------------------------------------------------- -} +#include +namespace hgl +{ + void Color3f::Use(COLOR_ENUM ce) + { + r=prv_color[ce].r; + g=prv_color[ce].g; + b=prv_color[ce].b; + } + + void Color3f::Clamp() + { + if(r<0)r=0;if(r>1)r=1; + if(g<0)g=0;if(g>1)g=1; + if(b<0)b=0;if(b>1)b=1; + } + //-------------------------------------------------------------------------------------------------- + /** + * 求当前颜色过渡到另一颜色时某一比例时的颜色 + * @param nr,ng,nb 新的颜色 + * @param pos 过渡比例,0时为当前的颜色,1时为nr,ng,nb + */ + void Color3f::To(float nr,float ng,float nb,float pos) + { + if(pos==0)return; + if(pos==1) + { + r=nr; + g=ng; + b=nb; + return; + } + + r+=(nr-r)*pos; + g+=(ng-g)*pos; + b+=(nb-b)*pos; + } +//-------------------------------------------------------------------------------------------------- + void Color3f::Grey(float v1,float v2,float v3) + { + float lum=v1*0.299+v2*0.587+v3*0.114; + + r=lum; + g=lum; + b=lum; + } + //-------------------------------------------------------------------------------------------------- + void Color3f::Grey() + { + float lum=r*0.299+g*0.587+b*0.114; + + r=lum; + g=lum; + b=lum; + } + //-------------------------------------------------------------------------------------------------- + bool Color3f::operator == (const Color3f &v) + { + if(r!=v.r)return(false); + if(g!=v.g)return(false); + if(b!=v.b)return(false); + + return(true); + } + //-------------------------------------------------------------------------------------------------- + bool Color3f::operator != (const Color3f &v) + { + if(r!=v.r)return(true); + if(g!=v.g)return(true); + if(b!=v.b)return(true); + + return(false); + } + //-------------------------------------------------------------------------------------------------- +} diff --git a/src/Base/Color4f.cpp b/src/Base/Color4f.cpp index fb8a81fd..99734ab6 100644 --- a/src/Base/Color4f.cpp +++ b/src/Base/Color4f.cpp @@ -1,70 +1,70 @@ -#include -namespace hgl -{ - void Color4f::Use(COLOR_ENUM ce,float ta) - { - r=prv_color[ce].r; - g=prv_color[ce].g; - b=prv_color[ce].b; - a=ta; - } - - void Color4f::Clamp() - { - if(r<0)r=0;if(r>1)r=1; - if(g<0)g=0;if(g>1)g=1; - if(b<0)b=0;if(b>1)b=1; - if(a<0)a=0;if(a>1)a=1; - } - //-------------------------------------------------------------------------------------------------- - /** - * 求当前颜色过渡到另一颜色时某一比例时的颜色 - * @param nr,ng,nb 新的颜色 - * @param pos 过渡比例,0时为当前的颜色,1时为nr,ng,nb - */ - void Color4f::To(float nr,float ng,float nb,float pos) - { - if(pos==0)return; - if(pos==1) - { - r=nr; - g=ng; - b=nb; - return; - } - - r+=(nr-r)*pos; - g+=(ng-g)*pos; - b+=(nb-b)*pos; - } - //-------------------------------------------------------------------------------------------------- - void Color4f::Grey() - { - float lum=r*0.299+g*0.587+b*0.114; - - r=lum; - g=lum; - b=lum; - } - //-------------------------------------------------------------------------------------------------- - bool Color4f::operator == (const Color4f &v) - { - if(r!=v.r)return(false); - if(g!=v.g)return(false); - if(b!=v.b)return(false); - if(a!=v.a)return(false); - - return(true); - } - //-------------------------------------------------------------------------------------------------- - bool Color4f::operator != (const Color4f &v) - { - if(r!=v.r)return(true); - if(g!=v.g)return(true); - if(b!=v.b)return(true); - if(a!=v.a)return(true); - - return(false); - } - //-------------------------------------------------------------------------------------------------- -} +#include +namespace hgl +{ + void Color4f::Use(COLOR_ENUM ce,float ta) + { + r=prv_color[ce].r; + g=prv_color[ce].g; + b=prv_color[ce].b; + a=ta; + } + + void Color4f::Clamp() + { + if(r<0)r=0;if(r>1)r=1; + if(g<0)g=0;if(g>1)g=1; + if(b<0)b=0;if(b>1)b=1; + if(a<0)a=0;if(a>1)a=1; + } + //-------------------------------------------------------------------------------------------------- + /** + * 求当前颜色过渡到另一颜色时某一比例时的颜色 + * @param nr,ng,nb 新的颜色 + * @param pos 过渡比例,0时为当前的颜色,1时为nr,ng,nb + */ + void Color4f::To(float nr,float ng,float nb,float pos) + { + if(pos==0)return; + if(pos==1) + { + r=nr; + g=ng; + b=nb; + return; + } + + r+=(nr-r)*pos; + g+=(ng-g)*pos; + b+=(nb-b)*pos; + } + //-------------------------------------------------------------------------------------------------- + void Color4f::Grey() + { + float lum=r*0.299+g*0.587+b*0.114; + + r=lum; + g=lum; + b=lum; + } + //-------------------------------------------------------------------------------------------------- + bool Color4f::operator == (const Color4f &v) + { + if(r!=v.r)return(false); + if(g!=v.g)return(false); + if(b!=v.b)return(false); + if(a!=v.a)return(false); + + return(true); + } + //-------------------------------------------------------------------------------------------------- + bool Color4f::operator != (const Color4f &v) + { + if(r!=v.r)return(true); + if(g!=v.g)return(true); + if(b!=v.b)return(true); + if(a!=v.a)return(true); + + return(false); + } + //-------------------------------------------------------------------------------------------------- +}