Skip to content

Commit 42e8aa6

Browse files
committed
adjust tests; add one test
1 parent 3456e92 commit 42e8aa6

File tree

1 file changed

+35
-4
lines changed

1 file changed

+35
-4
lines changed

cellular_raza-examples/tissue2/src/geometry.rs

Lines changed: 35 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -397,8 +397,8 @@ fn test_apply_restrictions_1() {
397397
let mut poly_helper1 = poly1.clone();
398398
let mut poly_helper2 = poly2.clone();
399399

400-
apply_restrictions(&poly1, &mut poly_helper1, &poly2);
401-
apply_restrictions(&poly2, &mut poly_helper2, &poly1);
400+
apply_restrictions(&poly1, &poly2, &mut poly_helper1);
401+
apply_restrictions(&poly2, &poly1, &mut poly_helper2);
402402

403403
approx::assert_abs_diff_eq!(poly_helper1[(0, 2)], 0.75);
404404
approx::assert_abs_diff_eq!(poly_helper1[(1, 2)], 0.75);
@@ -434,8 +434,8 @@ fn test_apply_restrictions_2() {
434434
let mut poly_helper1 = poly1.clone();
435435
let mut poly_helper2 = poly2.clone();
436436

437-
apply_restrictions(&poly1, &mut poly_helper1, &poly2);
438-
apply_restrictions(&poly2, &mut poly_helper2, &poly1);
437+
apply_restrictions(&poly1, &poly2, &mut poly_helper1);
438+
apply_restrictions(&poly2, &poly1, &mut poly_helper2);
439439

440440
let expected_1 = nalgebra::Matrix2xX::from_columns(&[
441441
nalgebra::vector![0.0, 0.0],
@@ -522,3 +522,34 @@ fn test_clean_self_intersections_swap() {
522522
}
523523
}
524524
}
525+
526+
#[test]
527+
fn test_intersect_polygons() {
528+
let poly1 = nalgebra::Matrix2xX::from_columns(&[
529+
nalgebra::vector![0.0, 0.0],
530+
nalgebra::vector![0.0, 1.0],
531+
nalgebra::vector![1.0, 1.0],
532+
nalgebra::vector![1.0, 0.0],
533+
]);
534+
let poly2 = nalgebra::Matrix2xX::from_columns(&[
535+
nalgebra::vector![0.5, 0.5],
536+
nalgebra::vector![0.5, 1.5],
537+
nalgebra::vector![1.5, 1.5],
538+
nalgebra::vector![1.5, 0.5],
539+
]);
540+
let mut pos_helper = poly1.clone();
541+
apply_restrictions(&poly1, &poly2, &mut pos_helper);
542+
543+
let expected = nalgebra::Matrix2xX::from_columns(&[
544+
nalgebra::vector![0.0, 0.0],
545+
nalgebra::vector![0.0, 1.0],
546+
nalgebra::vector![0.75, 0.75],
547+
nalgebra::vector![1.0, 0.0],
548+
]);
549+
550+
for i in 0..2 {
551+
for j in 0..poly1.ncols() {
552+
approx::assert_abs_diff_eq!(pos_helper[(i, j)], expected[(i, j)]);
553+
}
554+
}
555+
}

0 commit comments

Comments
 (0)