Units / topology
topology.face_p4 claimed
- Layer
- 42
- Upstream lines
- 1,812
- Functions
- 10
- Rust module
topology::face::p4
Claimed: #134 @bherbruck (draft)
Source: crates/solidcore/src/topology/face/p4.rs (not written yet)
Upstream: source/SMLib/src/SmFace.cpp
Notes
CO-PORTED in topology.topology_traverser (PR #113): SmFace::GetEdges (default arguments) -> topology::topology_traverser::face_edges; 10 fns; largest: SmFace::HasSeamProblem, SmFace::FindVertexSector, SmFace::GlobalLineIntersect, SmFace::IsConnectedTo; cycle back-edges (call into later units; stub or co-port): heal.face_props(2), query.face_p2(2), query.face_p3(2); unit-SCC #22 (220 units); 319 upstream test entry points reach this unit; CO-PORTED in query.face_p2 (PR #104): SmFace::GetVertices(SmTArray&, ULONG*, SmBoolean, const SmTArray<SmLoop*>*) without attribute filter -> solidcore::query::face::p2::face_vertices PR #163: existing SmFace::GetEdges(defaults) co-port is public topology::topology_traverser::face_edges and reused by boolean.merge_p1; preserve repeats between loops.
Difftest
No difftest report yet.
Dependencies
Depends on: curve.crv_on_surf partial curve.curve_p2 green geom.extent1d green geom.extent2d green geom.object partial geom.solution_array partial geom.tol green geom.vector2d green geom.vector3d green intersect.curve_class_p1 partial intersect.curve_class_p7 partial intersect.point_class partial topology.edgeuse_p1 partial topology.face_p2 partial topology.loopuse partial topology.topology green topology.vertex partial topology.vertexuse partial
Soft dependencies: geom.context green intersect.curve_class_p2 claimed intersect.curve_class_p4 claimed surface.surface_p1 partial surface.surface_p2 partial surface.surface_p3 green surface.surface_p4 green surface.surface_p5 green surface.surface_p7 partial surface.surface_p8 partial topology.edge partial topology.edgeuse_p3 claimed topology.shell partial
Dependents: boolean.merge_p2 todo boolean.topology_intersector_p1 partial boolean.topology_intersector_p2 claimed heal.stitch_p1 claimed query.face_p1 claimed query.face_p2 partial query.face_p3 claimed sweep.topology_sweep claimed topology.brep_p5 claimed topology.face_p1 partial topology.face_p3 claimed
Soft dependents: blend.fillet_geom_p4 todo blend.hcr claimed boolean.merge_p1 partial boolean.merge_p4 todo boolean.topology_intersector_p3 claimed heal.face_props partial heal.heal_data_p3 partial offset.offset_executive_p1 claimed offset.offset_geometry_creation claimed primitive.primitive_creation_p1 claimed primitive.primitive_creation_p2 todo primitive.primitive_creation_p3 todo query.api_queries partial topology.brep_cache partial topology.brep_p10 claimed topology.brep_p2 claimed topology.brep_p3 claimed topology.brep_p4 claimed topology.brep_p7 claimed topology.brep_p9 claimed topology.topology_traverser partial
Upstream functions
| Upstream function | Defined at | Lines | Rust (from the file header) |
|---|---|---|---|
SmFace::FindVertexSector | SmFace.cpp:9408 | 611 | |
SmFace::GetBrep | SmFace.cpp:10165 | 13 | |
SmFace::GetEdges | SmFace.cpp:10227 | 34 | |
SmFace::GetVertices | SmFace.cpp:10267 | 37 | |
SmFace::GetUpwardLoopuses | SmFace.cpp:10463 | 21 | |
SmFace::GetUpwardVertexuses | SmFace.cpp:10490 | 32 | |
SmFace::GetUpwardEdgeuses | SmFace.cpp:10528 | 33 | |
SmFace::GlobalLineIntersect | SmFace.cpp:11692 | 153 | |
SmFace::IsConnectedTo | SmFace.cpp:15413 | 51 | |
SmFace::HasSeamProblem | SmFace.cpp:15540 | 827 |
Upstream tests reaching this unit
prog_test:my_test_extent3d, prog_test:my_test_vector2d, prog_test:my_test_surface_closest_point, prog_test:my_test_drop_point, prog_test:my_test_matrix, prog_test:my_test_reversed_line_join