Subversion Repositories gelsvn

Rev

Rev 630 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 630 Rev 654
Line 44... Line 44...
44
            Vec3f vn0,vn1,vn2;
44
            Vec3f vn0,vn1,vn2;
45
            Vec3f en0,en1,en2;
45
            Vec3f en0,en1,en2;
46
 
46
 
47
            v0  = Vec3f(m.pos(w.vertex()));
47
            v0  = Vec3f(m.pos(w.vertex()));
48
            vn0 = Vec3f(normal(m, w.vertex()));
48
            vn0 = Vec3f(normal(m, w.vertex()));
-
 
49
            FaceID adj_f =  w.next().opp().face();
-
 
50
            if(adj_f != InvalidFaceID)
49
            en0 = Vec3f(normalize(face_normal + normal(m, w.next().opp().face())));
51
                en0 = Vec3f(normalize(face_normal + normal(m, adj_f)));
-
 
52
            else
-
 
53
                en0 = Vec3f(face_normal);
50
            
54
            
51
            w = w.next();
55
            w = w.next();
52
 
56
 
53
            v1  = Vec3f(m.pos(w.vertex()));
57
            v1  = Vec3f(m.pos(w.vertex()));
54
            vn1 = Vec3f(normal(m, w.vertex()));
58
            vn1 = Vec3f(normal(m, w.vertex()));
-
 
59
            adj_f =  w.next().opp().face();
-
 
60
            if(adj_f != InvalidFaceID)
55
            en1 = Vec3f(normalize(face_normal + normal(m, w.next().opp().face())));
61
                en1 = Vec3f(normalize(face_normal + normal(m, adj_f)));
-
 
62
            else
-
 
63
                en1 = Vec3f(face_normal);
56
 
64
 
57
            
65
            
58
            w = w.next();
66
            w = w.next();
59
 
67
 
60
            v2  = Vec3f(m.pos(w.vertex()));
68
            v2  = Vec3f(m.pos(w.vertex()));
61
            vn2 = Vec3f(normal(m, w.vertex()));
69
            vn2 = Vec3f(normal(m, w.vertex()));
-
 
70
            adj_f =  w.next().opp().face();
-
 
71
            if(adj_f != InvalidFaceID)
62
            en2 = Vec3f(normalize(face_normal + normal(m, w.next().opp().face())));
72
                en2 = Vec3f(normalize(face_normal + normal(m, adj_f)));
-
 
73
            else
-
 
74
                en2 = Vec3f(face_normal);
63
            
75
            
64
            if(sqr_length(v0-v1)>EDGE_MIN_SQ_LENGTH &&
76
            if(sqr_length(v0-v1)>EDGE_MIN_SQ_LENGTH &&
65
                sqr_length(v1-v2)>EDGE_MIN_SQ_LENGTH &&
77
                sqr_length(v1-v2)>EDGE_MIN_SQ_LENGTH &&
66
                sqr_length(v2-v0)>EDGE_MIN_SQ_LENGTH)
78
                sqr_length(v2-v0)>EDGE_MIN_SQ_LENGTH)
67
                triangle_vec.push_back(Triangle(v0,v1,v2,vn0,vn1,vn2,en0,en1,en2));
79
                triangle_vec.push_back(Triangle(v0,v1,v2,vn0,vn1,vn2,en0,en1,en2));