IfcConvert(1)
π NAME π
IfcConvert β converts IFC files to various formats π¦ (section 1, bestie, we're in the big leagues)
okay so picture this: it's IfcOpenShell, it's IfcConvert 0.8.0 (rocking OCC 7.8.1), and it is literally here to take your IFC file and turn it into something else. The whole shape of it is:
IfcConvert [options] <input.ifc> [<output>]
And what's it converting (the geometry in) an IFC file into?? So many options, we love a versatile queen π:
.objβ WaveFront OBJ (and yes, a.mtlfile is also created, she comes with accessories π ).stpβ STEP, aka Standard for the Exchange of Product Data.igsβ IGES, aka Initial Graphics Exchange Specification.xmlβ XML, for property definitions and the decomposition tree.svgβ SVG, Scalable Vector Graphics (2D floor plan energy πΊοΈ).cityjsonβ City JSON format for geospatial data.ttlβ TTL/WKT, RDF Turtle with Well-Known-Text geometry.ifcβ IFC-SPF, Industry Foundation Classes
And here's a lil quality-of-life moment: if you don't hand it an output filename, <input>.obj will be used as the output file. No output name? She picks one herself. Self-sufficient icon behavior.
π Command line options π
-h [ --help ]β shows you the usage information, the classic cry-for-help but make it productive--versionβ displays the version information β¨-v [ --verbose ]β more verbose log messages. Use it twice (-vv) and you're at debugging level β that's the deep lore, iykyk-q [ --quiet ]β less status and progress output, for when you want her to stop yapping--stderr-progressβ outputs progress to the stderr stream-y [ --yes ]β answers'yes'automatically to possible confirmation queries (e.g. overwriting an existing output file) β consent pre-granted, so be careful out there π--no-progressβ suppresses possible progress bar type of prints that use carriage return--log-format argβ log format:plainorjson--log-file argβ redirects log output to a file
π Geometry options π
--kernel arg (=opencascade)β the geometry kernel to use (opencascade,cgal,cgal-simple).-j [ --threads ] arg (=1)β number of parallel processing threads for geometry interpretation. Default is a humble little1.--center-modelβ centers the elements by applying the center point of all placements as an offset. Heads up bestie, this can take several minutes on large models, so go make a snack π--center-model-geometryβ centers the elements by applying the center point of all mesh vertices as an offset.--model-offset argβ applies an arbitrary offset of the form'x;y;z'to all placements.--model-rotation argβ applies an arbitrary quaternion rotation of the form'x;y;z;w'to all placements.--include argβ specifies that the instances that match a specific filtering criteria are to be included in the geometrical output:'entities'β the following list of types should be included. SVG output defaults toIfcSpacebeing included. The entity names are handled case-insensitively.'layers'β the instances that are assigned to presentation layers of which names match the given values should be included.'attribute <AttributeName>'β products whose value for<AttributeName>should be included. Currently supported arguments areGlobalId,Name,Description, andTag.
The values for 'layers' and 'arg' are handled case-sensitively (wildcards supported). Also, real talk: --include and --exclude cannot be placed right before the input file argument, and only a single one of each argument is supported for now. See also --exclude.
--include+ argβ same as--includebut it applies the filtering also to the decomposition and/or containment (IsDecomposedBy,HasOpenings,FillsVoid,ContainedInStructure) of the filtered entity. For example,--include+=arg Name "Level 1"includes the entity with name"Level 1"and all of its children β she said bring the whole family π. See--includefor more information.--exclude argβ specifies that the entities that match a specific filtering criteria are to be excluded in the geometrical output. See--includefor the syntax and more details. The default value is'--exclude=entities IfcOpeningElement IfcSpace'.--exclude+ argβ same as--excludebut applies filtering also to the decomposition and/or containment of the filtered entity. See--include+for more details.--filter-file argβ specifies a filter file that describes the used filtering criteria. Supported formats are'--include=arg GlobalId. Spaces and tabs can be used as delimiters. Multiple filters of the same type with different values can be inserted on their own lines. See--include,--include+,--exclude, and--exclude+for more details.--default-material-file argβ specifies a material file that describes the material object types will have if an object does not have any specified material in the IFC file.
fr fr, that's the whole page β every flag, every default, every weird missing space preserved with love π«Ά
and that's the vibe check bestie β¨ this was IfcConvert(1) from IfcOpenShell IfcConvert 0.8.0 (OCC 7.8.1), dated 26 November 2025. go convert something iconic π π
π¦ where this page comes from
- ubuntu stonking: ifcopenshell 0.8.1+dfsg1-6 Β· LGPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms