solidcore

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 functionDefined atLinesRust (from the file header)
SmFace::FindVertexSectorSmFace.cpp:9408611
SmFace::GetBrepSmFace.cpp:1016513
SmFace::GetEdgesSmFace.cpp:1022734
SmFace::GetVerticesSmFace.cpp:1026737
SmFace::GetUpwardLoopusesSmFace.cpp:1046321
SmFace::GetUpwardVertexusesSmFace.cpp:1049032
SmFace::GetUpwardEdgeusesSmFace.cpp:1052833
SmFace::GlobalLineIntersectSmFace.cpp:11692153
SmFace::IsConnectedToSmFace.cpp:1541351
SmFace::HasSeamProblemSmFace.cpp:15540827

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