include/material.h
branchpyrit
changeset 98 64638385798a
parent 96 9eb71e76c7fd
--- a/include/material.h	Thu May 15 19:15:57 2008 +0200
+++ b/include/material.h	Mon May 19 22:59:04 2008 +0200
@@ -44,6 +44,8 @@
 {
 public:
 	virtual ~Texture() {};
+
+	/** evaluate texture colour in the point of space */
 	virtual Colour evaluate(const Vector &point) = 0;
 };
 
@@ -54,6 +56,8 @@
 {
 public:
 	virtual ~ColourMap() {};
+
+	/** map float value to colour */
 	virtual Colour map(const Float &val) = 0;
 };
 
@@ -107,9 +111,23 @@
 	Vector center;
 	Float invsize;
 public:
+	/**
+	 * texture map constructor
+	 * @param[in] acenter  central point of texture mapping
+	 * @param[in] size     Size of the texture.
+	 *                     One world space unit is mapped to one texture size
+	 *                     divided by this number.
+	 */
 	TextureMap(const Vector &acenter, const Float &size):
 		center(acenter), invsize(1.0f/size) {};
 	virtual ~TextureMap() {};
+
+	/**
+	 * map 3D space point to 2D u,v coordinates
+	 * @param[in] point  a point in 3D space
+	 * @param[out] u     horizontal texture coordinate
+	 * @param[out] v     vertical texture coordinate
+	 */
 	virtual void map(const Vector &point, Float &u, Float &v) const = 0;
 };
 
@@ -309,12 +327,24 @@
 		refract_index = 1.3f;
 	}
 
+	/** set Phong parameters */
 	void setPhong(const Float amb, const Float dif, const Float spec, const Float shin)
 		{ ambient = amb; diffuse = dif; specular = spec; shininess = shin; };
+
+	/** set fraction of light to be reflected */
 	void setReflectivity(const Float refl) { reflectivity = refl; };
+
+	/** set fraction of light to be refracted
+	 * @param[in] trans  the transmissivity amount
+	 * @param[in] rinde  index of refraction
+	 */
 	void setTransmissivity(const Float trans, const Float rindex)
 		{ transmissivity = trans; refract_index = rindex; };
+
+	/** allow triangle smoothing */
 	void setSmooth(int sm) { smooth = sm; };
+
+	/** set the texture */
 	void setTexture(Texture *tex) { texture = tex; };
 };