Anders Granskogen Bjørnstad
475b8554a8
Site local placement ( #240 )
...
* ifcgeom: Add placement_rel_to for convert()
Change geometry conversion in `convert()` for `ObjectPlacement` such
that we can stop the `PlacementRelTo()` recursion when we hit an
`ObjectPlacement` that places a certain type, e.g. a `IfcSite'.
Introduce a new IteratorSetting `SITE_LOCAL_PLACEMENT` which will be
exposed in `IfcConvert`.
* IfcConvert: Add --site-local-placement
Some IFC authoring tools may put the global origo at a large distance
away from the actual building geometry. Also, the global X- and Y-axes
may be at arbitrary angles with natural building axes. Using
--center-model or --model-offset may place the converted geometry closer
to origo, but will still use the global IFC definition of axis
directions. Also, in a scenario with multiple IFC files for one
construction site, using --center-model on each of them would not
generate consistent geometry across OBJ or DAE files.
Solve this by introducing --site-local-placement which will disregard
the ObjectPlacement at the IfcSite level.
2017-08-19 17:21:10 +02:00
Thomas Krijnen
62794d4b07
Unused variable warning
2017-08-09 12:55:03 +02:00
Thomas Krijnen
aa0a6aa5d1
Fix #178
2017-08-01 16:45:11 +02:00
Thomas Krijnen
ae0afe2c0a
mmap #22
2017-07-25 16:27:13 +02:00
Stinkfist0
7eb1346407
IfcConvert: prevent doing IfcFile::Init() "prematurely", e.g. before some additional program option parsing that might fail.
2017-06-23 14:12:07 +02:00
Stinkfist0
771b1f3d3c
IfcConvert: consistent style for user error prints.
2017-06-23 14:12:07 +02:00
Stinkfist0
3fb96cad0b
IfcConvert: make sure to delete temp file if no actual conversion occurs. Also fixes serializer memory leaks. Closes #199 .
...
C
2017-06-23 14:12:07 +02:00
Stinkfist0
f3f4c41f8d
IfcConvert: add --no-progress option to suppress possible progress bar type of prints that use carriage return.
2017-06-05 11:41:55 +02:00
Stinkfist0
0adcb9ae20
IfcConvert --filter-file: Specifies a filter file that describes the used filtering criteria.
2017-06-05 11:41:55 +02:00
Tristan Zimpfer
78b904dfeb
Differentiate slab types when option --use-element-types is used.
2017-04-26 10:28:38 +02:00
Balleux Benjamin
7edca081bf
Raise an error when the option --use-element-hierarchy is used with a file different of .dae
2017-04-25 10:13:18 +02:00
Balleux Benjamin
95acd4c517
Clean : remove debug lines
...
Find the floor of an element in the IfcGeomIterator class
2017-04-21 15:49:34 +02:00
Balleux Benjamin
7ce795def3
clean WIP
2017-04-20 15:06:49 +02:00
Balleux Benjamin
8e4febecc0
clean : Remove the debug print
...
debug : don't display the name of the element in unity anymore
2017-04-19 16:38:35 +02:00
Balleux Benjamin
195979d4f0
Merge branch 'feature/hierarchy' of https://github.com/mitmadness/IfcOpenShell into feature/hierarchy
...
# Conflicts:
# src/ifcconvert/ColladaSerializer.cpp
2017-04-19 15:09:59 +02:00
Balleux Benjamin
ab0e47c55f
Options added : --use-element-types and --use-element-hierarchy
2017-04-19 12:07:03 +02:00
Balleux Benjamin
a02b189f69
Bug Fix : the previous commit made the program crash when an object has no parent
2017-04-12 16:11:37 +02:00
Balleux Benjamin
a2aa2bf9eb
Send hierarchy data to the serializer WIP
2017-04-12 14:38:54 +02:00
Balleux Benjamin
b9e9bfeceb
Handle errors : when an object has no parent
2017-04-12 13:36:12 +02:00
Balleux Benjamin
37f7fbecca
Retrieve the type and the hierarchy of the IFC and write it in the .dae files
2017-04-11 17:26:30 +02:00
Thomas Krijnen
50ea73a28f
Update IfcConvert help text
2017-03-04 14:16:54 +01:00
Stinkfist0
026b4853a2
IfcConvert: single point for IFC file parsing and potential parsing error reporting.
2017-03-04 13:54:19 +01:00
Stinkfist0
cd132473f5
IfcConvert: instead of global --traverse option provide --include+ and --exclude+ options that control traversal on per filter basis.
2017-03-04 13:54:19 +01:00
Stinkfist0
06c1ea9d2c
Doc tweaks [ci skip]
2017-03-04 13:54:19 +01:00
Stinkfist0
b058647d46
IfcLogger: convenience shorthands Notice(), Warnings() and Error()
2017-03-04 13:54:19 +01:00
Stinkfist0
0383221d00
IfcConvert: print information about the used filters.
2017-03-04 13:54:19 +01:00
Stinkfist0
678d422ec8
Fix errors in rebase merge.
2017-03-04 13:54:19 +01:00
Stinkfist0
eade74c919
Fix --traverse --exlucde=<entities|layers> + clean up duplicate code. filter::traverse_match: dynamic_cast instead of static_cast as the decomposing entity is not guaranteed to be IfcProduct
2017-03-04 13:54:19 +01:00
Stinkfist0
9074f25e93
Fix --exclude=arg when --traverse used also.
2017-03-04 13:54:19 +01:00
Stinkfist0
4b5790e83a
IfcConvert: minor cleanup + fix guid exclusion filter's value population.
2017-03-04 13:54:19 +01:00
Stinkfist0
470b08cd04
IfcConvert: output regular prints to cout instead of cerr.
2017-03-04 13:54:19 +01:00
Stinkfist0
d88c93a150
Cleaning up geom filters.
2017-03-04 13:54:19 +01:00
Stinkfist0
7101ac22c8
Refactor template class arg_filter into string_arg_filter instead, support for IfcProxy.Tag (untested, did not find suitable test input yet).
2017-03-04 13:54:19 +01:00
Stinkfist0
1b7d38a56d
support for IfcConvert -include=arg <Description|Tag> (for IfcElement.Tag, not yet for IfcProxy.Tag).
2017-03-04 13:54:19 +01:00
Stinkfist0
de5864fc72
IfcConvert: change syntax of --<include|exclude>=<names|guids> to --<include|exclude>=arg <Name|GlobalId>. The plan is to support arbitrary arguments in the future.
2017-03-04 13:54:19 +01:00
Stinkfist0
195d68cd0a
Generalize IfcGeom::Iterator filtering and move make the filter specification external to the Iterator.
2017-03-04 13:54:19 +01:00
Stinkfist0
d8a11dd096
Refactoring and cleaning up geom iterator filtering.
2017-03-04 13:54:19 +01:00
Stinkfist0
63b0488909
Implement filtering created geometry by layer assignments.
2017-03-04 13:54:19 +01:00
Stinkfist0
3abee03b9b
Filtering by entity GUID and layer name w.i.p.
2017-03-04 13:54:19 +01:00
Stinkfist0
f1709dc71a
IfcConvert/IfcGeom: Possibility to include and exclude simultaneously by type and name, w.i.p.
2017-03-04 13:54:19 +01:00
Stinkfist0
fa76aa9bb0
IfcConvert: add --unicode=utf8|escape when UNICODE_SUPPORT enabled.
2017-01-14 20:13:46 +01:00
Stinkfist0
f0e07f3447
Add status prints for writing XML output. Re: #122
2017-01-14 20:13:46 +01:00
Stinkfist0
80f0ff688d
IfcConvert: add --model-ofset x;y;z option. Remove SerializerSettings::CENTER_MODEL as unneeded.
2017-01-14 20:13:46 +01:00
Stinkfist0
ecff54c480
IfcConvert --precision option.
...
Sets the decimal precision to be used to format floating-point values, 15 by default.
Use a negative value to use the system's default precision (should be 6 typically).
Applicable for OBJ and DAE output. For DAE output, value >= 15 means that up to 16 decimals are used,
and any other value means that 6 or 7 decimals are used.
2017-01-14 20:13:46 +01:00
Stinkfist0
2d58a1bc7c
Separate serialization-specific settings from IteratorSettings into its own class, SerializerSettings.
2017-01-14 20:13:46 +01:00
Ali Kämäräinen
714a365942
IfcConvert/IfcGeom --traverse option ( #159 )
...
geometry filtering option for including/excluding decomposition and containment of filtered entities.
Usage example: IfcConvert Duplex_A_20110907.ifc Level1.dae --include --traverse --names "Level 1"
2016-11-13 13:44:38 +01:00
Ali Kämäräinen
4a85e5e7a5
MSYS build scripts and instructions ( #99 ) and warning fixes
...
* Preliminary MSYS2 + MinGW build scripts and instructions.
* CMakeLists.txt: MinGW tweaks, enforce C++03, suppress warnings for now.
* Fix some GCC warnings.
* Fix unused parameter warnings coming from Ifc*.h.
* Fix warning regarding unreachable code (++jt) on MSVC.
* Add IfcParse_EXPORT for IfcInvalidTokenException
* Fix potentially uninitialized pointer variables.
* Note about OpenCASCADE cyclic dependencies fix.
* GCC warning fix: don't generate 'current_enum' variable that is only set and not used for anything ever
* Work around -Wmaybe-uninitialized warnings about boost::optional constructs. Also prevent passing of negative values for --bounds.
* Remove unused variable.
* CMakeLists.txt: ENABLE_BUILD_OPTIMIZATIONS for GCC (simply enforce -03)
2016-07-15 05:49:32 +02:00
Thomas Krijnen
39e26dff46
Merge branch 'master' into layerset_slicing
...
# Conflicts:
# src/ifcconvert/IfcConvert.cpp
# src/ifcgeom/IfcGeom.h
# src/ifcgeom/IfcGeomFunctions.cpp
# src/ifcgeom/IfcGeomIteratorSettings.h
2016-05-02 15:13:30 +02:00
Thomas Krijnen
c6d5adfa42
Merge branch 'master' into performance_improvements
...
# Conflicts:
# src/ifcexpressparser/implementation.py
# src/ifcgeom/IfcGeomFunctions.cpp
# src/ifcparse/Ifc4.cpp
2016-04-24 15:22:10 +02:00
Stinkfist0
d7f990d8bd
IfcConvert: Do not use temp file for MTL as it's such a small file. Fixes #55 .
2016-03-28 11:47:21 +03:00