| 2270 | |
| 2271 | |
| 2272 | def test_point_on_line(simple_assy2): |
| 2273 | |
| 2274 | assy = simple_assy2 |
| 2275 | |
| 2276 | assy.constrain("b1", "Fixed") |
| 2277 | assy.constrain("b2@faces@>Z", "FixedAxis", (0, 2, 1)) |
| 2278 | assy.constrain("b2@faces@>X", "FixedAxis", (1, 0, 0)) |
| 2279 | assy.constrain("b2@faces@>X", "b1@edges@>>Z and >>Y", "PointOnLine") |
| 2280 | |
| 2281 | assy = assy.solve() |
| 2282 | |
| 2283 | w = cq.Workplane().add(assy.toCompound()) |
| 2284 | |
| 2285 | assert w.solids("<Z").val().Center().Length == pytest.approx(0) |
| 2286 | assert w.solids(">Z").val().Center().z == pytest.approx(0.5) |
| 2287 | assert w.solids(">Z").val().Center().y == pytest.approx(0.5) |
| 2288 | assert w.solids(">Z").val().Center().x == pytest.approx(0.0) |
| 2289 | |
| 2290 | |
| 2291 | def test_axis_constraint(simple_assy2): |