fix transformed face_nd

This commit is contained in:
Quaternions 2023-11-06 15:57:24 -08:00
parent 4b4ac0de19
commit e0581390bd

View File

@ -393,7 +393,10 @@ impl MeshQuery<FaceId,EdgeId,VertId> for TransformedMesh<'_>{
}
fn face_nd(&self,face_id:FaceId)->(Planar64Vec3,Planar64){
let (n,d)=self.mesh.face_nd(face_id);
(*self.normal_transform*n,self.normal_determinant*d)
let transformed_n=*self.normal_transform*n;
let p=n*(d/n.dot(n));
let transformed_d=transformed_n.dot(self.transform.transform_point3(p));
(transformed_n,transformed_d)
}
fn vert(&self,vert_id:VertId)->Planar64Vec3{
self.transform.transform_point3(self.mesh.vert(vert_id))