Skip to main content

Crate ifc_systems

Crate ifc_systems 

Source
Expand description

ifc-systems – Distribution systems: ports, connectivity and system grouping.

23 entities in IFC4. Turns a bag of pipes and ducts into a connected network that can be traced – the basis of any MEP analysis.

§Module map

ModuleRole
systemIfcSystem, IfcDistributionSystem and grouping
portIfcDistributionPort and port assignment to elements
connectivityIfcRelConnectsPorts and network traversal
flowFlow direction and segment/fitting/terminal roles
errorWhy a system query failed

§Status

Implemented: systems with subtype-aware discovery and membership, ports and both element-attachment forms, the undirected connection graph with cycle-safe traversal, flow roles and direction, and zones. assignment (services-building relationships) is a reserved scaffold.

Re-exports§

pub use authoring::assign_to_group;
pub use authoring::assign_to_group_with_owner_history;
pub use authoring::connect_port_to_element;
pub use authoring::connect_port_to_element_with_owner_history;
pub use authoring::connect_ports;
pub use authoring::connect_ports_with_owner_history;
pub use authoring::contain_in_spatial_structure;
pub use authoring::contain_in_spatial_structure_with_owner_history;
pub use authoring::create_classified_system;
pub use authoring::create_classified_system_with_owner_history;
pub use authoring::create_group;
pub use authoring::create_group_with_owner_history;
pub use authoring::create_port;
pub use authoring::create_port_with_owner_history;
pub use authoring::create_system;
pub use authoring::create_system_with_owner_history;
pub use authoring::nest_ports;
pub use authoring::nest_ports_with_owner_history;
pub use authoring::reference_in_spatial_structure;
pub use authoring::reference_in_spatial_structure_with_owner_history;
pub use authoring::ClassifiedSystemDraft;
pub use authoring::SystemAuthoringError;
pub use authoring::SystemAuthoringResult;
pub use authoring::SystemKind;

Modules§

authoring
Transactional authoring of systems, ports and their connections.

Structs§

Connection
One stated port-to-port connection.
ConnectionGraph
An undirected port connection graph.
FlowNetwork
A network oriented by flow direction.
FlowQuery
The answer to a directed query.
NetworkGraph
A network view that also steps THROUGH elements, not just between them.
NotInSchema
An accessor that reads an attribute the declared release does not define for the entity’s type.
Port
A port as the file states it.
SpatialPlacement
Where one element sits in the spatial structure.
System
A system as the file states it, with its members resolved.
Zone
A zone: a grouping of spatial elements.

Enums§

Attachment
How a port was attached to its element.
Direction
Which way a query walks.
ElementRole
What kind of flow element this is, by schema ancestry.
FlowDirection
Which way material or energy moves through a port.
RoleInconsistency
A disagreement between an element’s role and how its ports are directed.
SchemaGap
Why a per-attribute accessor bound to the model’s declared release could not produce a value.
SchemaResolutionError
Why a model’s declared schema release could not be resolved.
SchemaVersion
The IFC release a read binds to (re-exported from ifc-schema). Which IFC schema version a table describes.
SystemAnomaly
A system membership the file states but cannot support.

Functions§

long_name_of
LongName of a single IfcZone, distinguishing “not authored” from “this release has no such attribute”.
ports
Every port in the file, with its owning element resolved.
role_inconsistencies
Check every element that owns ports for role/direction disagreement.
schema_of
Resolve the IFC release a model declares, from its FILE_SCHEMA header.
spatial_placements
Read spatial containment and referencing for every element that has either.
systems
Every system in the file, with members resolved and anomalies reported.
try_zones
zones, refusing a header that binds no single known release.
zones
Every IfcZone in the file, with WR1-valid members resolved.