Browse Source

Fixed removed namespace still present

Christophe Riccio 14 years ago
parent
commit
6277440507
4 changed files with 67 additions and 21 deletions
  1. 6 6
      glm/gtx/gradient_paint.hpp
  2. 19 15
      glm/gtx/gradient_paint.inl
  3. 1 0
      test/gtx/CMakeLists.txt
  4. 41 0
      test/gtx/gtx_gradient_paint.cpp

+ 6 - 6
glm/gtx/gradient_paint.hpp

@@ -55,18 +55,18 @@ namespace glm
 	/// @see - gtx_gradient_paint
 	template <typename valType>
 	valType radialGradient(
-		glm::detail::tvec2<valType> const & Center,
+		detail::tvec2<valType> const & Center,
 		valType const & Radius,
-		glm::detail::tvec2<valType> const & Focal,
-		glm::detail::tvec2<valType> const & Position);
+		detail::tvec2<valType> const & Focal,
+		detail::tvec2<valType> const & Position);
 
 	/// Return a color from a linear gradient.
 	/// @see - gtx_gradient_paint
 	template <typename valType>
 	valType linearGradient(
-		glm::detail::tvec2<valType> const & Point0,
-		glm::detail::tvec2<valType> const & Point1,
-		glm::detail::tvec2<valType> const & Position);
+		detail::tvec2<valType> const & Point0,
+		detail::tvec2<valType> const & Point1,
+		detail::tvec2<valType> const & Position);
 
 	/// @}
 }// namespace glm

+ 19 - 15
glm/gtx/gradient_paint.inl

@@ -10,30 +10,34 @@
 namespace glm{
 
 template <typename valType>
-valType radialGradient(
-	glm::detail::tvec2<valType> const & Center,
+valType radialGradient
+(
+	detail::tvec2<valType> const & Center,
 	valType const & Radius,
-	glm::detail::tvec2<valType> const & Focal,
-	glm::detail::tvec2<valType> const & Position)
+	detail::tvec2<valType> const & Focal,
+	detail::tvec2<valType> const & Position
+)
 {
-	glm::detail::tvec2<valType> F = Focal - Center;
-	glm::detail::tvec2<valType> D = Position - Focal;
-	valType Radius2 = gtx::pow2(Radius);
-	valType Fx2 = gtx::pow2(F.x);
-	valType Fy2 = gtx::pow2(F.y);
+	detail::tvec2<valType> F = Focal - Center;
+	detail::tvec2<valType> D = Position - Focal;
+	valType Radius2 = pow2(Radius);
+	valType Fx2 = pow2(F.x);
+	valType Fy2 = pow2(F.y);
 
-	valType Numerator = (D.x * F.x + D.y * F.y) + glm::sqrt(Radius2 * (gtx::pow2(D.x) + gtx::pow2(D.y)) - gtx::pow2(D.x * F.y - D.y * F.x));
+	valType Numerator = (D.x * F.x + D.y * F.y) + sqrt(Radius2 * (pow2(D.x) + pow2(D.y)) - pow2(D.x * F.y - D.y * F.x));
 	valType Denominator = Radius2 - (Fx2 + Fy2);
 	return Numerator / Denominator;
 }
 
 template <typename valType>
-valType linearGradient(
-	glm::detail::tvec2<valType> const & Point0,
-	glm::detail::tvec2<valType> const & Point1,
-	glm::detail::tvec2<valType> const & Position)
+valType linearGradient
+(
+	detail::tvec2<valType> const & Point0,
+	detail::tvec2<valType> const & Point1,
+	detail::tvec2<valType> const & Position
+)
 {
-	glm::detail::tvec2<valType> Dist = Point1 - Point0;
+	detail::tvec2<valType> Dist = Point1 - Point0;
 	return (Dist.x * (Position.x - Point0.x) + Dist.y * (Position.y - Point0.y)) / glm::dot(Dist, Dist);
 }
 

+ 1 - 0
test/gtx/CMakeLists.txt

@@ -1,4 +1,5 @@
 glmCreateTestGTC(gtx_bit)
+glmCreateTestGTC(gtx_gradient_paint)
 glmCreateTestGTC(gtx_integer)
 glmCreateTestGTC(gtx_noise)
 glmCreateTestGTC(gtx_quaternion)

+ 41 - 0
test/gtx/gtx_gradient_paint.cpp

@@ -0,0 +1,41 @@
+///////////////////////////////////////////////////////////////////////////////////////////////////
+// OpenGL Mathematics Copyright (c) 2005 - 2011 G-Truc Creation (www.g-truc.net)
+///////////////////////////////////////////////////////////////////////////////////////////////////
+// Created : 2011-10-13
+// Updated : 2011-10-13
+// Licence : This source is under MIT licence
+// File    : test/gtx/gradient_paint.cpp
+///////////////////////////////////////////////////////////////////////////////////////////////////
+
+#include <glm/glm.hpp>
+#include <glm/gtx/gradient_paint.hpp>
+
+int test_radialGradient()
+{
+	int Error = 0;
+	
+	float Gradient = glm::radialGradient(glm::vec2(0), 1.0f, glm::vec2(1), glm::vec2(0.5));
+	
+	return Error;
+}
+
+int test_linearGradient()
+{
+	int Error = 0;
+
+	float Gradient = glm::linearGradient(glm::vec2(0), glm::vec2(1), glm::vec2(0.5));
+
+	return Error;
+}
+
+int main()
+{
+	int Error = 0;
+
+    Error += test_radialGradient();
+    Error += test_linearGradient();
+    
+	return Error;
+}
+
+