Skip to main content

Crate ifc_style

Crate ifc_style 

Source
Expand description

Strict, codec-independent IFC presentation and annotation views.

Appearance stays separate from geometry: this crate exposes colour, style, texture, layer, styled-item, and annotation semantics over ifc_model::Model without placing presentation state in the geometry kernel. Reads and writes resolve attribute slots through the selected ifc_schema::Schema, so IFC2x3, IFC4, and IFC4X3 layout drift is explicit rather than guessed.

Structs§

Annotation
A schema-aware view of IfcAnnotation.
AnnotationDraft
Draft input for create_annotation: the writable attributes of a new IfcAnnotation.
AnnotationFillArea
A bounded fill region made from one outer and optional inner curves.
AnnotationFillAreaDraft
Draft input for create_annotation_fill_area: the writable attributes of a new IfcAnnotationFillArea.
AppearanceDeclaration
One census entry: an IFC4 ADD2 presentation-appearance schema declaration paired with how this crate supports it.
Attenuation
Attenuation over distance, as three coefficients.
BlobTexture
Borrowed projection of IfcBlobTexture: a raster image embedded inline as binary data.
BlobTextureDraft
Attributes of an IfcBlobTexture.
ColourRgb
Borrowed projection of IfcColourRgb: a normalized red/green/blue colour.
ColourRgbDraft
Draft input for create_colour_rgb: the writable attributes of a new IfcColourRgb.
CurveStyle
Borrowed projection of IfcCurveStyle.
CurveStyleDraft
Attributes of an IfcCurveStyle.
CurveStyleFont
Borrowed projection of IfcCurveStyleFont: a named list of dash/gap patterns applied along a styled curve.
CurveStyleFontPattern
Borrowed projection of IfcCurveStyleFontPattern: one visible/invisible segment pair in a dashed curve font.
FillAreaStyle
Borrowed projection of IfcFillAreaStyle.
FillAreaStyleHatching
Borrowed projection of IfcFillAreaStyleHatching: a parallel-line hatch pattern.
FillAreaStyleTiles
Borrowed projection of IfcFillAreaStyleTiles: a repeating tile pattern.
GoniometricLight
The goniometric-only attributes of an IfcLightSourceGoniometric.
ImageTexture
Borrowed projection of IfcImageTexture: a raster image referenced by URL rather than embedded inline.
ImageTextureDraft
What to stage for an IfcImageTexture.
IndexedTextureMap
Borrowed projection of an indexed texture map (IfcIndexedTriangleTextureMap or IfcIndexedPolygonalTextureMap): binds a texture to a tessellated face set via per-vertex texture-coordinate indices.
LightDistributionData
Borrowed projection of IfcLightDistributionData: one main-plane angle and the intensities measured across the secondary angles in that plane.
LightIntensityDistribution
Borrowed projection of IfcLightIntensityDistribution: a luminaire’s photometric distribution, as a curve type plus its sampled data rows.
LightSource
Borrowed projection of IfcLightSource: the colour and intensity every light shares, independent of how it is positioned or aimed.
LightSourceAmbient
Borrowed projection of IfcLightSourceAmbient.
LightSourceDirectional
Borrowed projection of IfcLightSourceDirectional: parallel rays with an orientation but no position.
LightSourceDraft
The four attributes every IfcLightSource carries.
LightSourceGoniometric
Borrowed projection of IfcLightSourceGoniometric: a real luminaire described by photometric data rather than a renderer’s approximation.
LightSourcePositional
Borrowed projection of IfcLightSourcePositional: a point light with a quadratic distance-attenuation law.
LightSourceSpot
Borrowed projection of IfcLightSourceSpot: a positional light narrowed to a cone and aimed along an orientation.
PixelTexture
Borrowed projection of IfcPixelTexture: an explicit width/height/colour raster.
PixelTextureDraft
Attributes of an IfcPixelTexture.
PlanarBox
Borrowed projection of IfcPlanarBox: a planar extent plus the placement that positions it.
PlanarExtent
Borrowed projection of IfcPlanarExtent: a rectangular presentation area.
PointLight
Where a light sits and how it falls off.
PresentationLayer
Borrowed projection of IfcPresentationLayerAssignment (and its IfcPresentationLayerWithStyle subtype).
PresentationLayerDraft
Draft input for create_presentation_layer_with_style: the writable attributes of a new IfcPresentationLayerWithStyle.
PresentationStyleAssignment
Borrowed projection of the IFC2x3 IfcPresentationStyleAssignment wrapper entity, which groups a list of presentation styles under one id.
ResolvedStyle
The outcome of resolving an item’s effective presentation style through the direct-assignment-over-layer-style cascade.
SpotCone
The cone geometry of a spot light.
StyleView
Entry point for strict presentation and annotation projections.
StyledItem
Borrowed projection of IfcStyledItem: binds one or more presentation styles to a single IfcRepresentationItem.
StyledItemDraft
Draft input for create_styled_item: the writable attributes of a new IfcStyledItem.
SurfaceStyle
Borrowed projection of IfcSurfaceStyle.
SurfaceStyleDraft
Draft input for create_surface_style: the writable attributes of a new IfcSurfaceStyle.
SurfaceStyleLighting
Borrowed projection of IfcSurfaceStyleLighting: the four colour coefficients driving IFC’s simplified BRDF-like lighting model.
SurfaceStyleRefraction
Borrowed projection of IfcSurfaceStyleRefraction.
SurfaceStyleRendering
Borrowed projection of IfcSurfaceStyleRendering (a subtype of IfcSurfaceStyleShading adding rendering-oriented colour selects and the reflectance method).
SurfaceStyleRenderingDraft
Authored fields for an IfcSurfaceStyleRendering.
SurfaceStyleShading
Borrowed projection of IfcSurfaceStyleShading (and its IfcSurfaceStyleRendering subtype, whose extra attributes live in crate::SurfaceStyleRendering).
SurfaceStyleShadingDraft
Draft input for create_surface_style_shading: the writable attributes of a new IfcSurfaceStyleShading.
SurfaceStyleWithTextures
Borrowed projection of IfcSurfaceStyleWithTextures.
SurfaceTexture
Borrowed projection of IfcSurfaceTexture, the abstract base attributes shared by IfcBlobTexture, IfcPixelTexture, and IfcImageTexture.
TextLiteral
A schema-aware view of IfcTextLiteral (including its subtype).
TextLiteralDraft
Draft input for create_text_literal: the writable attributes of a new IfcTextLiteral.
TextLiteralWithExtent
A schema-aware view of IfcTextLiteralWithExtent.
TextLiteralWithExtentDraft
Draft input for create_text_literal_with_extent: the writable attributes of a new IfcTextLiteralWithExtent.
TextModelDraft
Attributes of an IfcTextStyleTextModel.
TextStyle
Borrowed projection of IfcTextStyle.
TextStyleFontModel
Borrowed projection of IfcTextStyleFontModel.
TextureCoordinate
Borrowed projection of an IfcTextureCoordinate (and its generator/map subtypes): procedural or explicit texture-coordinate assignment for a mapped item.
TextureVertex
Borrowed projection of IfcTextureVertex: a single 2D texture coordinate.
TextureVertexList
Borrowed projection of IfcTextureVertexList: an indexed list of texture coordinates shared across faces via crate::IndexedTextureMap.

Enums§

AnnotationType
The IfcAnnotationTypeEnum classifying an IfcAnnotation’s purpose.
AppearanceKind
The syntactic kind of an IFC4 ADD2 presentation-appearance schema declaration: an entity, a defined/select type, or a global rule function.
AppearanceSupport
How thoroughly this crate exposes a given IFC4 ADD2 presentation-appearance schema declaration.
BoxAlignment
Alignment of an IfcTextLiteralWithExtent inside its planar extent.
ColourOrFactor
One resolved member of the IfcColourOrFactor select.
CurveWidth
The two curve widths MeasureOfWidth admits.
ExternalStyleKind
Which externally defined style is being named.
FillStyleKind
Which IfcFillStyleSelect member a fill style is.
HatchLineDistance
IfcHatchLineDistanceSelect: the spacing between hatch lines.
LightSourceKind
Which concrete IfcLightSource subtype an entity declares.
PresentationStyleMember
One member of IFC2x3/IFC4’s legacy presentation-style select.
SizeValue
A resolved IfcSizeSelect value.
StyleError
A malformed, unresolved, or unsupported presentation contract.
StyleSource
Which mechanism, if any, supplied a resolved item’s effective styles.
SurfaceSide
The IfcSurfaceSide enumeration: which face(s) of a surface a style applies to.
TextPath
Direction in which a text literal is laid out.

Constants§

APPEARANCE_DECLARATIONS
The full, test-verified census of IFC4 ADD2 presentation-appearance schema declarations and how this crate supports each one.
PREDEFINED_COLOUR_NAMES
The names PreDefinedColourNames admits, lower-case as the schema states.
PREDEFINED_CURVE_FONT_NAMES
The names PreDefinedCurveFontNames admits.

Functions§

create_annotation
Stage a new IfcAnnotation in tx. Fails if GlobalId does not parse as a GUID, if PredefinedType is USERDEFINED with an empty ObjectType, or if any referenced entity does not resolve to its expected IFC type.
create_annotation_fill_area
Stage a new IfcAnnotationFillArea in tx. Fails if outer_boundary or any of inner_boundaries does not resolve to an IfcCurve.
create_blob_texture
Stage an IfcBlobTexture, embedding the raster bytes in the file.
create_colour_rgb
Stage a new IfcColourRgb in tx. Fails if any channel is not a finite value in [0, 1].
create_colour_rgb_list
Stage an IfcColourRgbList.
create_curve_style
Stage an IfcCurveStyle.
create_curve_style_font
Stage an IfcCurveStyleFont.
create_curve_style_font_and_scaling
Stage an IfcCurveStyleFontAndScaling.
create_curve_style_font_pattern
Stage an IfcCurveStyleFontPattern.
create_draughting_predefined_colour
Stage an IfcDraughtingPreDefinedColour.
create_draughting_predefined_curve_font
Stage an IfcDraughtingPreDefinedCurveFont.
create_externally_defined_style
Stage an externally defined style reference.
create_fill_area_style
Stage an IfcFillAreaStyle.
create_fill_area_style_hatching
Stage an IfcFillAreaStyleHatching.
create_fill_area_style_tiles
Stage an IfcFillAreaStyleTiles.
create_image_texture
Stage an IfcImageTexture.
create_indexed_colour_map
Stage an IfcIndexedColourMap.
create_indexed_polygonal_texture_map
Stage an IfcIndexedPolygonalTextureMap.
create_indexed_triangle_texture_map
Stage an IfcIndexedTriangleTextureMap.
create_light_distribution_data
Stage an IfcLightDistributionData: one row of a photometric table.
create_light_intensity_distribution
Stage an IfcLightIntensityDistribution: a photometric table.
create_light_source_ambient
Stage an IfcLightSourceAmbient: light with no position or direction.
create_light_source_directional
Stage an IfcLightSourceDirectional: parallel rays, no position.
create_light_source_goniometric
Stage an IfcLightSourceGoniometric.
create_light_source_positional
Stage an IfcLightSourcePositional: a point light with falloff.
create_light_source_spot
Stage an IfcLightSourceSpot.
create_pixel_texture
Stage an IfcPixelTexture.
create_planar_extent
Pick whichever spelling of an attribute the target schema declares.
create_presentation_layer_assignment
Stage an IfcPresentationLayerAssignment.
create_presentation_layer_with_style
Stage a new IfcPresentationLayerWithStyle in tx. Fails if name is empty, assigned_items is empty, or any assigned item or layer style does not resolve to its expected type.
create_styled_item
Stage a new IfcStyledItem in tx. Fails if styles is empty, item does not resolve to an IfcRepresentationItem, or a style does not resolve to its expected type for the target schema version.
create_surface_style
Stage a new IfcSurfaceStyle in tx. Fails if elements is empty, exceeds five members, contains two members from the same surface-style element category, or any member does not resolve to its expected type.
create_surface_style_lighting
Stage an IfcSurfaceStyleLighting: the four physical colour terms.
create_surface_style_refraction
Stage an IfcSurfaceStyleRefraction.
create_surface_style_rendering
Stage an IfcSurfaceStyleRendering.
create_surface_style_shading
Stage a new IfcSurfaceStyleShading in tx. Fails if surface_colour does not resolve to an IfcColourRgb, or transparency is not a finite value in [0, 1].
create_surface_style_with_textures
Stage an IfcSurfaceStyleWithTextures.
create_text_literal
Stage a new IfcTextLiteral in tx. Fails if literal is empty or placement does not resolve to an IfcPlacement.
create_text_literal_with_extent
Stage a new IfcTextLiteralWithExtent in tx. Fails if literal is empty, or if placement/extent do not resolve to their expected types.
create_text_style
Stage an IfcTextStyle.
create_text_style_font_model
Stage an IfcTextStyleFontModel.
create_text_style_for_defined_font
Stage an IfcTextStyleForDefinedFont.
create_text_style_text_model
Stage an IfcTextStyleTextModel.
create_texture_coordinate_generator
Stage an IfcTextureCoordinateGenerator: coordinates computed, not listed.
create_texture_coordinate_indices
Stage an IfcTextureCoordinateIndices.
create_texture_coordinate_indices_with_voids
Stage an IfcTextureCoordinateIndicesWithVoids.
create_texture_map
Stage an IfcTextureMap: explicit texture coordinates on a face.
create_texture_vertex
Stage an IfcTextureVertex: one 2-tuple of parameter values.
create_texture_vertex_list
Stage an IfcTextureVertexList.

Type Aliases§

StyleResult
The result type returned by this crate’s projection and authoring operations.