Use G-S on all dimentions
This commit is contained in:
@@ -165,17 +165,10 @@ static void __calculate_normal(
|
|||||||
u2 = malloc(n * sizeof(float));
|
u2 = malloc(n * sizeof(float));
|
||||||
u3 = malloc(n * sizeof(float));
|
u3 = malloc(n * sizeof(float));
|
||||||
|
|
||||||
switch (n)
|
/*
|
||||||
|
Calculate a normal vector of a plain using Gram-Schmidt process
|
||||||
|
*/
|
||||||
{
|
{
|
||||||
case 3:
|
|
||||||
glm_vec3_sub(p2, p1, v1);
|
|
||||||
glm_vec3_sub(p3, p1, v2);
|
|
||||||
|
|
||||||
glm_vec3_cross(v1, v2, normal);
|
|
||||||
glm_vec3_normalize(normal);
|
|
||||||
return;
|
|
||||||
|
|
||||||
default:
|
|
||||||
for (i = 0; i < n; ++i) {
|
for (i = 0; i < n; ++i) {
|
||||||
v1[i] = p2[i] - p1[i];
|
v1[i] = p2[i] - p1[i];
|
||||||
v2[i] = p3[i] - p1[i];
|
v2[i] = p3[i] - p1[i];
|
||||||
|
|||||||
Reference in New Issue
Block a user