Update code style for Material objects

This commit is contained in:
Eryn Wells 2014-07-20 16:45:40 -07:00
parent 0d2011931c
commit ac8421b5e1
2 changed files with 63 additions and 45 deletions

View file

@ -8,78 +8,82 @@
#include "material.h" #include "material.h"
namespace charles {
Material::Material() Material::Material()
: diffuse_level(0.8), : mDiffuseModel(DiffuseShaderModel::Lambert),
diffuse_color(Color::White), mDiffuseIntensity(0.8),
specular_level(0.5), mDiffuseColor(Color::White),
specular_color(Color::White) mSpecularModel(SpecularShaderModel::Phong),
mSpecularIntensity(0.5),
mSpecularColor(Color::White)
{ } { }
float Double
Material::get_diffuse_level() Material::GetDiffuseIntensity()
const const
{ {
return diffuse_level; return mDiffuseIntensity;
} }
void void
Material::set_diffuse_level(const float &kd) Material::SetDiffuseIntensity(const Double& kd)
{ {
diffuse_level = kd; mDiffuseIntensity = kd;
_clamp_parameter(diffuse_level); ClampParameter(mDiffuseIntensity);
} }
const Color & const Color&
Material::get_diffuse_color() Material::GetDiffuseColor()
const const
{ {
return diffuse_color; return mDiffuseColor;
} }
void void
Material::set_diffuse_color(const Color &c) Material::SetDiffuseColor(const Color& color)
{ {
diffuse_color = c; mDiffuseColor = color;
} }
float Double
Material::get_specular_level() Material::GetSpecularIntensity()
const const
{ {
return specular_level; return mSpecularIntensity;
} }
void void
Material::set_specular_level(const float &ks) Material::SetSpecularIntensity(const Double& ks)
{ {
specular_level = ks; mSpecularIntensity = ks;
_clamp_parameter(specular_level); ClampParameter(mSpecularIntensity);
} }
const Color & const Color&
Material::get_specular_color() Material::GetSpecularColor()
const const
{ {
return specular_color; return mSpecularColor;
} }
void void
Material::set_specular_color(const Color &c) Material::SetSpecularColor(const Color& color)
{ {
specular_color = c; mSpecularColor = color;
} }
void void
Material::_clamp_parameter(float &param) Material::ClampParameter(Double& param)
{ {
if (param < 0.0) { if (param < 0.0) {
param = 0.0; param = 0.0;
@ -88,3 +92,5 @@ Material::_clamp_parameter(float &param)
param = 1.0; param = 1.0;
} }
} }
} /* namespace charles */

View file

@ -9,37 +9,49 @@
#define __MATERIAL_H__ #define __MATERIAL_H__
#include "basics.h" #include "basics.h"
#include "types.hh"
namespace charles {
class Material struct Material
{ {
public: enum class DiffuseShaderModel {
enum { Lambert,
DiffuseLightingTypeLambert = 1, };
} DiffuseLightingType;
enum class SpecularShaderModel {
Blinn,
Phong
};
Material(); Material();
float get_diffuse_level() const; Double GetDiffuseIntensity() const;
void set_diffuse_level(const float &kd); void SetDiffuseIntensity(const Double& kd);
const Color &get_diffuse_color() const;
void set_diffuse_color(const Color &c);
float get_specular_level() const; const Color& GetDiffuseColor() const;
void set_specular_level(const float &kd); void SetDiffuseColor(const Color& c);
const Color &get_specular_color() const;
void set_specular_color(const Color &c); Double GetSpecularIntensity() const;
void SetSpecularIntensity(const Double& kd);
const Color &GetSpecularColor() const;
void SetSpecularColor(const Color& c);
private: private:
void _clamp_parameter(float &param); void ClampParameter(Double& param);
// Diffuse parameters. // Diffuse parameters.
float diffuse_level; DiffuseShaderModel mDiffuseModel;
Color diffuse_color; Double mDiffuseIntensity;
Color mDiffuseColor;
// Specular parameters. // Specular parameters.
float specular_level; SpecularShaderModel mSpecularModel;
Color specular_color; Double mSpecularIntensity;
Color mSpecularColor;
}; };
} /* namespace charles */
#endif #endif