Thanks for all this answer :) and I'm sorry for the delay i was having problem with my internet connection :/
Stephen Tashi said:
Perhaps I don't understand what angle you want to compute, but I don't see any instances in the rabbit model where two adjacent triangular surfaces have an angle of more than 180 deg between them. Can you show a figure where two adjacent triangular faces have an angle of more than 180 degrees between their normals ? Would this occur when we try to assign the directions of normals to a triangulated mobius strip ?
here is an exemple of what i need to compute
for example i need to compute the outsider angle between the two surface F1, and F2 the angle is obviously 270°, but computing the normal to each triangle and then deducing the angle it returns 90°
jedishrfu said:
Are you familiar with vector algebra?
You could create position vectors for each vertex and then for any given face triangle subtract the three vertex vectors to get two vectors in the same plane as the face triangle. From there a cross product will give you the normal vectors (then normalize it to get the unit normal vector) you seek.
I think your figure in the first case is a regular polyhedron so that a sphere can be drawn around it with all vertices touching the surface of the sphere meaning they are all equidistant from the center of the sphere so you could choose the center as the point of origin for all the vertex position vectors mentioned earlier.
i'm not so familiar with vector algebra, but i'll try to implement the method you proposed thank you :)
a1call said:
In the rabbit figure any edges in the concave areas such as under the chin or inward caved back would form an internal angle of more than 180 degrees between the joining faces.
sorry i didn't give a good explanation of my problem I'm looking for the outside angle like the picture above you can see that the angle between the two triangle F1 and F2 is equal to 270°
Stephen Tashi said:
I think if you compute both the dot product of the normals and also the cross product of the normals then you can deduce the angle between the surfaces.
I hope I'm not asking too much but can you give me more details on how to combine dot product and the cross product to deduce the angle
mfb said:
So you want the angle also depend on the question what is "outside" and "inside"? This is not possible with the angles alone, you also have to take the relative location of the faces into account.
Assuming all normal vectors face outwards (or all inwards): take the difference between a point on one triangle and a point on the other triangle. Take the scalar product with the difference of the normal vectors. The sign should tell you which case you have.
as showing in the above image I'm looking for the outside angle, i used a predefined function in MATLAB to make sure that all my normal vectors are outwards.
if it is not to much to ask could you explain to me how to combaine the difference between points, scalar product ?
Thanks again for all your answers and again i apologize for my bad english