mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-17 02:49:12 +00:00
60 lines
3.0 KiB
Markdown
60 lines
3.0 KiB
Markdown
|
|
# IfcPatch
|
||
|
|
|
||
|
|
Utility for applying modification recipes to IFC files. IfcPatch enables programmatic editing and correction of IFC models through a collection of patches that can fix common issues, migrate data, or transform models.
|
||
|
|
|
||
|
|
## Available Recipes
|
||
|
|
|
||
|
|
### Alignment and Linear Placement
|
||
|
|
- **AddGeometricRepresentationToAlignment** - Add geometric representations to alignment elements
|
||
|
|
- **AddLinearPlacementFallbackPosition** - Add fallback positions for linear placements
|
||
|
|
- **AddZeroLengthSegmentToAlignment** - Add zero-length segments to alignments
|
||
|
|
- **PatchStationReferentPosition** - Patch station referent positions
|
||
|
|
|
||
|
|
### Data Conversion and Migration
|
||
|
|
- **AGS2IFC** - Convert AGS (geotechnical) data to IFC
|
||
|
|
- **ConvertLengthUnit** - Convert between length units
|
||
|
|
- **ConvertNestToAggregate** - Convert nesting relationships to aggregations
|
||
|
|
- **ConvertPropertiesToQuantities** - Convert properties to quantities
|
||
|
|
- **Migrate** - Migrate between IFC schema versions
|
||
|
|
|
||
|
|
### Element Extraction and Manipulation
|
||
|
|
- **ExtractElements** - Extract specific elements into a new model
|
||
|
|
- **ExtractPropertiesToSQLite** - Export properties to SQLite database
|
||
|
|
- **Ifc2Sql** - Convert IFC to SQL database
|
||
|
|
- **TessellateElements** - Tessellate elements into triangulated geometry
|
||
|
|
|
||
|
|
### Fixing Software-Specific Issues
|
||
|
|
- **FixArchiCADToRevitDoorSwings** - Fix door swing orientation from ArchiCAD for Revit
|
||
|
|
- **FixArchiCADToRevitSpaces** - Fix space data from ArchiCAD for Revit
|
||
|
|
- **FixRevit2025TINs** - Fix TIN (Triangulated Irregular Network) issues from Revit 2025
|
||
|
|
- **FixRevitClassificationCodeTypes** - Fix classification code data types from Revit
|
||
|
|
- **FixRevitTINs** - Fix TIN issues from Revit
|
||
|
|
|
||
|
|
### Geometry and Representation
|
||
|
|
- **AssignConstituentFractions** - Assign fractions to material constituents
|
||
|
|
- **DowngradeIndexedPolyCurve** - Convert indexed poly curves to simpler representations
|
||
|
|
- **RemoveSiteRepresentation** - Remove geometric representation from site elements
|
||
|
|
|
||
|
|
### Merging and Optimization
|
||
|
|
- **MergeDuplicateTypes** - Merge duplicate element types
|
||
|
|
- **MergeProjects** - Merge multiple IFC projects
|
||
|
|
- **MergeStyles** - Merge duplicate styles
|
||
|
|
- **Optimise** - Optimize file size and structure
|
||
|
|
- **PurgeData** - Remove unused data from model
|
||
|
|
|
||
|
|
### Spatial and Coordinate Systems
|
||
|
|
- **OffsetObjectPlacements** - Offset object placement coordinates
|
||
|
|
- **OffsetStoreyElevations** - Offset storey elevations
|
||
|
|
- **ResetAbsoluteCoordinates** - Reset absolute coordinates to origin
|
||
|
|
- **ResetSpatialElementLocations** - Reset spatial element locations
|
||
|
|
- **SetFalseOrigin** - Set a false origin for coordinates
|
||
|
|
- **SetRefElevation** - Set reference elevation
|
||
|
|
- **SetWorldCoordinateSystem** - Set world coordinate system
|
||
|
|
- **SplitByBuildingStorey** - Split model by building storeys
|
||
|
|
|
||
|
|
### Utilities
|
||
|
|
- **RecycleNonRootedElements** - Remove or recycle non-rooted elements
|
||
|
|
- **RegenerateGlobalIds** - Regenerate GlobalId values for elements
|
||
|
|
- **RemoveRevitUniformatClassification** - Remove Revit Uniformat classification
|
||
|
|
- **UnsharePsets** - Unshare property sets between elements
|