Skip to content

IfcConvert enhancements #20

@Stinkfist0

Description

@Stinkfist0

Hi. Thought to open up a discussion of the enhancements I have made to IfcConvert in https://github.com/Tridify/IfcOpenShell-SourceForge before I start to reimplementing and cleaning up these to the new fork. Here's what I have done:

  • new functionality for IfcConvert (taken from the --help output):
  --names arg                     A list of names or wildcard patterns that 
                                  should be included in or excluded from the 
                                  geometrical output, depending on whether 
                                  --exclude or --include is specified. The 
                                  names are handled case-sensitively. Cannot be
                                  placed right before input file argument.
  --no-normals                    Disables computation of normals. Saves time 
                                  and file size and is useful in instances 
                                  where you're going to recompute normals for 
                                  the exported model in other modelling 
                                  application in any case.

  --use-names                     Use entity names instead of unique IDs for 
                                  naming objects and materials upon 
                                  serialization Applicable for .obj and .dae 
                                  output.
  --use-guids                     Use entity GUIDs instead of unique IDs for 
                                  naming objects upon serialization. Overrides 
                                  possible usage of --use-names for objects but
                                  not for materials.Applicable for .obj and 
                                  .dae output.
  --center-model                  Centers the models upon serialization by the 
                                  applying the center point of the scene bounds
                                  as an offset. Applicable only for .dae output
                                  currently.
  --generate-uvs                  Generates UVs by using simple box projection.
                                  Requires normals. Applicable only for .dae 
                                  output currently.
  • new IFCCONVERT_DOUBLE_PRECISION build option: typedef real_t either to double (ON) or to float (OFF) and use real_t throughout the IfcConvert codebase

In hindsight, --no-normals might not be that useful after all. Also while I started adding new options, I did this: https://github.com/Tridify/IfcOpenShell-SourceForge/commit/b5725e2b4703a87a03585e869e791a2cd3cfec78 Does this seem good idea to you? Also, thinking more about it, majority of the new options are not really geometry iterator settings, but serializer settings, so maybe we should add a new class or enum/field for the serializer settings that are used only in IfcConvert?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions