|
|
Shay wrote:
>
>...
> I am pretty sure that vcross(V2-V1,V1-V3) gives a more accurate result than
> vcross(V2-V1,V3-V1). Just going on what I have heard on that one. Haven't
> tested it myself.
vcross(v2 - v1, v3 - v1) = - vcross(v2 - v1, v1 - v3)
And further:
vcross(vA, vA) = <0, 0, 0>
vcross(s*vA, vB) = vcross(vA, s*vB) = s*vcross(vA, vB)
vcross(vA, vB/t) = vcross(vA/t, vB) = vcross(vA, vB)/t
vcross(s*vA, vB/t) = vcross(vA, vB)*s/t
vcross( vA, vB) = - vcross(vB, vA)
vcross(-vA, vB) = vcross(vA, -vB) = - vcross(vA, vB)
vcross(vA + vB, vC) = vcross(vA, vC) + vcross(vB, vC)
vcross(vA, vB - vC) = vcross(vA, vB) - vcross(vA, vC)
vcross(vA - vB, vC - vD)
= vcross(vA, vC - vD) - vcross(vB, vC - vD)
= vcross(vA, vC) - vcross(vA, vD) - vcross(vB, vC) + vcross(vB, vD)
vlength(vcross(vA, vB))
= vlength(vA)*vlength(vB)*sin(AngleBetween(vA, vB))
sin(AngleBetween(vA, vB))
= vlength(vcross(vnormalize(vA), vnormalize(vB)))
vnormalize(vcross(vA, vB))
= vcross(vA, vB)/vlength(vA)/vlength(vB)/sin(AngleBetween(vA, vB))
vcross(vnormalize(vA), normalize(vB))
= vnormalize(vcross(vA, vB))*sin(AngleBetween(vA, vB))
vlength(vA)*sin(AngleBetween(vA, vB))
= vlength(vcross(vA, vnormalize(vB)))
... and so on ...
Tor Olav
Post a reply to this message
|
|