MCPcopy
hub / github.com/CadQuery/cadquery / test_siblings

Function test_siblings

tests/test_shapes.py:432–470  ·  view source on GitHub ↗
(simple_box)

Source from the content-addressed store, hash-verified

430
431
432def test_siblings(simple_box):
433
434 f = simple_box.face("<Z")
435
436 siblings_1 = f.siblings(simple_box, "Edge", 1)
437 assert siblings_1.size() == 4
438
439 siblings_12 = f.siblings(simple_box, "Edge", (1, 2))
440 assert siblings_12.size() == 5
441
442 siblings_2 = f.siblings(simple_box, "Edge", (2,))
443 assert siblings_2.size() == 1
444 assert (siblings_2.Center() - simple_box.faces(">Z").Center()).Length == approx(0)
445
446 siblings_cmp_12 = simple_box.faces(">Z").siblings(simple_box, "Edge", (1, 2))
447 assert siblings_cmp_12.size() == 5
448
449 siblings_cmp_2 = simple_box.faces(">Z").siblings(simple_box, "Edge", (2,))
450 assert siblings_cmp_2.size() == 1
451
452 siblings_cmp_edges_12 = simple_box.edges(">Z").siblings(
453 simple_box, "Vertex", (1, 2)
454 )
455 assert siblings_cmp_edges_12.size() == 8
456
457 # more complex shape
458 stacked_box = fuse(
459 simple_box, simple_box.moved(x=1), simple_box.moved(x=2), simple_box.moved(x=3),
460 )
461
462 f = stacked_box.face("<X")
463
464 level_1 = f.siblings(stacked_box, "Vertex", 1)
465 level_2 = f.siblings(stacked_box, "Vertex", 2)
466 level_3 = f.siblings(stacked_box, "Vertex", 3)
467 level_123 = f.siblings(stacked_box, "Vertex", (1, 2, 3))
468
469 assert level_1.size() + level_2.size() + level_3.size() == level_123.size()
470 assert set(level_1) | set(level_2) | set(level_3) == set(level_123)
471
472
473def test_set_ops(simple_box):

Callers

nothing calls this directly

Calls 8

fuseFunction · 0.90
faceMethod · 0.45
siblingsMethod · 0.45
sizeMethod · 0.45
CenterMethod · 0.45
facesMethod · 0.45
edgesMethod · 0.45
movedMethod · 0.45

Tested by

no test coverage detected