Skip to main content

Crate geop_core_topology

Crate geop_core_topology 

Source

Re-exports§

pub use body::Body;
pub use coedge::Coedge;
pub use coedge::CoedgeGeometry;
pub use coedge::Sense;
pub use edge::Edge;
pub use face::Face;
pub use ids::CoedgeId;
pub use ids::EdgeId;
pub use ids::FaceId;
pub use ids::ShellId;
pub use ids::SolidId;
pub use ids::VertexId;
pub use ids::WireId;
pub use model::Curve2;
pub use model::Curve3;
pub use model::Model;
pub use shell::Shell;
pub use solid::Solid;
pub use vertex::Vertex;
pub use wire::Wire;

Modules§

body
boundary
build
Building a whole body at once from a description of it (BodySpec), and describing part of a model the same way (Model::body_spec).
coedge
contains
Topological containment queries: “is this point inside this face/shell?” — distinct from crate::contains, which tests raw-geometry (“does this 3-D point lie on this NURBS surface/curve”) without any awareness of trimming loops or topology.
distance
closest_points: the least distance between two points, curves or faces of models — each where a pose puts it — and two points that attain it.
edge
edit
Incremental mutation of an existing crate::Model: unlike Model’s own insert_* methods (which only ever add a brand-new, unconnected entity), everything here restructures or replaces what’s already there.
face
ids
mass
Mass properties of solids, and areas of faces and solids, integrated over the exact trimmed NURBS faces: Model::mass_properties, Model::face_area, Model::solid_area.
merge
Topology that is no longer needed, taken out of a body described as a BodySpec (BodySpec::merged): faces that lie on one surface made one, and vertices between two edges of the same two faces dropped, the edges made one.
mesh
A body of triangles (BodySpec::of_triangles): what a mesh read from a file (STL) is as a B-rep.
model
shell
solid
test_fixtures
Test fixture — this crate’s tests, and others’ with the testing feature: a plain axis-aligned unit-cube-shaped solid, described whole and built at once (see crate::build).
uv_loop
A face’s loop in its surface’s parameter plane: the signed area it encloses, integrated exactly from its pcurves (loop_signed_area), and a polygon sampled along them, for the rasterizer to triangulate (sample_loop_to_polygon).
validation
Whole-model consistency checks. Each check lives in its own file, one check per file. Every check function takes (params, errors, model) and pushes its own violations onto errors rather than returning on the first one, so validate always runs every check and reports everything wrong in one pass.
vertex
wire