Merge branch '0.9.2' into 0.9.3

This commit is contained in:
Christophe Riccio 2011-09-09 11:01:31 +01:00
commit 0abfe343a5
5 changed files with 114 additions and 7 deletions

View File

@ -158,9 +158,10 @@
</todo>
<page_news>
<news index="0069" date="04/08/2011" title="GLM 0.9.2.4 released" image="goodies/logo.png" image-mini="image/logo-mini.png">
<news index="0069" date="03/09/2011" title="GLM 0.9.2.4 released" image="goodies/logo.png" image-mini="image/logo-mini.png">
<paragraph>
Fixed few bugs reported by GLM users. Thanks!
Fixed bugs and warnings reported by GLM users. Thanks!
</paragraph>
<source type="Download" href="https://sourceforge.net/projects/ogl-math/files/glm-0.9.2.4/glm-0.9.2.4.zip/download">GLM 0.9.2.4 (zip)</source>

View File

@ -38,7 +38,7 @@ namespace detail
GLM_FUNC_QUALIFIER std::string to_string(detail::thalf const & x)
{
return detail::format("half(%f)", float(x));
return detail::format("half(%2.4f)", float(x));
}
GLM_FUNC_QUALIFIER std::string to_string(float x)
@ -106,7 +106,7 @@ namespace detail
detail::tvec2<detail::thalf> const & v
)
{
return detail::format("hvec2(%f, %f)", float(v.x), float(v.y));
return detail::format("hvec2(%2.4f, %2.4f)", float(v.x), float(v.y));
}
template <>
@ -115,7 +115,7 @@ namespace detail
detail::tvec3<detail::thalf> const & v
)
{
return detail::format("hvec3(%f, %f, %f)", float(v.x), float(v.y), float(v.z));
return detail::format("hvec3(%2.4f, %2.4f, %2.4f)", float(v.x), float(v.y), float(v.z));
}
template <>
@ -124,7 +124,7 @@ namespace detail
detail::tvec4<detail::thalf> const & v
)
{
return detail::format("hvec4(%f, %f, %f, %f)", float(v.x), float(v.y), float(v.z), float(v.w));
return detail::format("hvec4(%2.4f, %2.4f, %2.4f, %2.4f)", float(v.x), float(v.y), float(v.z), float(v.w));
}
////////////////////////////////

View File

@ -44,7 +44,7 @@ GLM 0.9.3.0: 2011-XX-XX
- Removed many unused namespaces
================================================================================
GLM 0.9.2.4: 2011-08-04
GLM 0.9.2.4: 2011-09-03
--------------------------------------------------------------------------------
- Fixed extensions bugs

View File

@ -5,5 +5,6 @@ glmCreateTestGTC(gtx_random)
glmCreateTestGTC(gtx_rotate_vector)
glmCreateTestGTC(gtx_simd_vec4)
glmCreateTestGTC(gtx_simd_mat4)
glmCreateTestGTC(gtx_string_cast)
glmCreateTestGTC(gtx_ulp)
glmCreateTestGTC(gtx_vector_angle)

View File

@ -0,0 +1,105 @@
///////////////////////////////////////////////////////////////////////////////////////////////////
// OpenGL Mathematics Copyright (c) 2005 - 2011 G-Truc Creation (www.g-truc.net)
///////////////////////////////////////////////////////////////////////////////////////////////////
// Created : 2011-09-01
// Updated : 2011-09-01
// Licence : This source is under MIT licence
// File : test/gtx/string_cast.cpp
///////////////////////////////////////////////////////////////////////////////////////////////////
#include <glm/glm.hpp>
#include <glm/gtx/string_cast.hpp>
#include <iostream>
#include <limits>
int test_string_cast_scalar()
{
int Error = 0;
glm::half A1(1.0);
std::string A2 = glm::to_string(A1);
Error += A2 != std::string("half(1.0000)") ? 1 : 0;
float B1(1.0);
std::string B2 = glm::to_string(B1);
Error += B2 != std::string("float(1.000000)") ? 1 : 0;
double C1(1.0);
std::string C2 = glm::to_string(C1);
Error += C2 != std::string("double(1.000000)") ? 1 : 0;
return Error;
}
int test_string_cast_vector()
{
int Error = 0;
glm::vec2 A1(1, 2);
std::string A2 = glm::to_string(A1);
Error += A2 != std::string("fvec2(1.000000, 2.000000)") ? 1 : 0;
glm::vec3 B1(1, 2, 3);
std::string B2 = glm::to_string(B1);
Error += B2 != std::string("fvec3(1.000000, 2.000000, 3.000000)") ? 1 : 0;
glm::vec4 C1(1, 2, 3, 4);
std::string C2 = glm::to_string(C1);
Error += C2 != std::string("fvec4(1.000000, 2.000000, 3.000000, 4.000000)") ? 1 : 0;
glm::ivec2 D1(1, 2);
std::string D2 = glm::to_string(D1);
Error += D2 != std::string("ivec2(1, 2)") ? 1 : 0;
glm::ivec3 E1(1, 2, 3);
std::string E2 = glm::to_string(E1);
Error += E2 != std::string("ivec3(1, 2, 3)") ? 1 : 0;
glm::ivec4 F1(1, 2, 3, 4);
std::string F2 = glm::to_string(F1);
Error += F2 != std::string("ivec4(1, 2, 3, 4)") ? 1 : 0;
glm::hvec2 G1(1, 2);
std::string G2 = glm::to_string(G1);
Error += G2 != std::string("hvec2(1.0000, 2.0000)") ? 1 : 0;
glm::hvec3 H1(1, 2, 3);
std::string H2 = glm::to_string(H1);
Error += H2 != std::string("hvec3(1.0000, 2.0000, 3.0000)") ? 1 : 0;
glm::hvec4 I1(1, 2, 3, 4);
std::string I2 = glm::to_string(I1);
Error += I2 != std::string("hvec4(1.0000, 2.0000, 3.0000, 4.0000)") ? 1 : 0;
glm::dvec2 J1(1, 2);
std::string J2 = glm::to_string(J1);
Error += J2 != std::string("dvec2(1.000000, 2.000000)") ? 1 : 0;
glm::dvec3 K1(1, 2, 3);
std::string K2 = glm::to_string(K1);
Error += K2 != std::string("dvec3(1.000000, 2.000000, 3.000000)") ? 1 : 0;
glm::dvec4 L1(1, 2, 3, 4);
std::string L2 = glm::to_string(L1);
Error += L2 != std::string("dvec4(1.000000, 2.000000, 3.000000, 4.000000)") ? 1 : 0;
return Error;
}
int test_string_cast_matrix()
{
int Error = 0;
return Error;
}
int main()
{
int Error = 0;
Error += test_string_cast_scalar();
Error += test_string_cast_vector();
Error += test_string_cast_matrix();
return Error;
}