test degenerate face
This commit is contained in:
parent
97ddf94df4
commit
f46a7ba458
@ -10,6 +10,7 @@ struct Face{
|
|||||||
dot:integer::Planar64,
|
dot:integer::Planar64,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[derive(Debug)]
|
||||||
struct Faces{
|
struct Faces{
|
||||||
faces:Vec<Vec<integer::Planar64Vec3>>,
|
faces:Vec<Vec<integer::Planar64Vec3>>,
|
||||||
}
|
}
|
||||||
@ -178,19 +179,6 @@ fn planes_to_faces(face_list:std::collections::HashSet<Face>)->Result<Faces,Plan
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn test_planes_to_faces(){
|
|
||||||
let face_list=[
|
|
||||||
Face{normal:integer::vec3::X,dot:Planar64::ONE},
|
|
||||||
Face{normal:integer::vec3::Y,dot:Planar64::ONE},
|
|
||||||
Face{normal:integer::vec3::Z,dot:Planar64::ONE},
|
|
||||||
Face{normal:integer::vec3::NEG_X,dot:Planar64::ONE},
|
|
||||||
Face{normal:integer::vec3::NEG_Y,dot:Planar64::ONE},
|
|
||||||
Face{normal:integer::vec3::NEG_Z,dot:Planar64::ONE},
|
|
||||||
].into_iter().collect();
|
|
||||||
let faces=planes_to_faces(face_list).unwrap();
|
|
||||||
}
|
|
||||||
|
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
pub enum BrushToMeshError{
|
pub enum BrushToMeshError{
|
||||||
SliceBrushSides,
|
SliceBrushSides,
|
||||||
@ -252,3 +240,35 @@ pub fn brush_to_mesh(bsp:&vbsp::Bsp,brush:&vbsp::Brush)->Result<model::Mesh,Brus
|
|||||||
|
|
||||||
Ok(mb.build(polygon_groups,graphics_groups,physics_groups))
|
Ok(mb.build(polygon_groups,graphics_groups,physics_groups))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(test)]
|
||||||
|
mod test{
|
||||||
|
use super::*;
|
||||||
|
#[test]
|
||||||
|
fn test_cube(){
|
||||||
|
let face_list=[
|
||||||
|
Face{normal:integer::vec3::X,dot:Planar64::ONE},
|
||||||
|
Face{normal:integer::vec3::Y,dot:Planar64::ONE},
|
||||||
|
Face{normal:integer::vec3::Z,dot:Planar64::ONE},
|
||||||
|
Face{normal:integer::vec3::NEG_X,dot:Planar64::ONE},
|
||||||
|
Face{normal:integer::vec3::NEG_Y,dot:Planar64::ONE},
|
||||||
|
Face{normal:integer::vec3::NEG_Z,dot:Planar64::ONE},
|
||||||
|
].into_iter().collect();
|
||||||
|
let faces=planes_to_faces(face_list).unwrap();
|
||||||
|
dbg!(faces);
|
||||||
|
}
|
||||||
|
#[test]
|
||||||
|
fn test_cube_with_degernate_face(){
|
||||||
|
let face_list=[
|
||||||
|
Face{normal:integer::vec3::X,dot:Planar64::ONE},
|
||||||
|
Face{normal:integer::vec3::Y,dot:Planar64::ONE},
|
||||||
|
Face{normal:integer::vec3::Z,dot:Planar64::ONE},
|
||||||
|
Face{normal:integer::vec3::NEG_X,dot:Planar64::ONE},
|
||||||
|
Face{normal:integer::vec3::NEG_Y,dot:Planar64::ONE},
|
||||||
|
Face{normal:integer::vec3::NEG_Z,dot:Planar64::ONE},
|
||||||
|
Face{normal:integer::vec3::NEG_Z,dot:Planar64::EPSILON},
|
||||||
|
].into_iter().collect();
|
||||||
|
let faces=planes_to_faces(face_list).unwrap();
|
||||||
|
dbg!(faces);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user