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
Thomas Krijnen
191c029546
Correctly allow rule labels to be optional
2016-04-09 13:29:35 +02:00
Thomas Krijnen
fa585e60ee
Update EXPRESS code generator to work on ancient IFC schemas
2016-04-08 23:23:45 +02:00
Thomas Krijnen
0ff9de3cd9
Update EXPRESS code generator to work on ancient IFC schemas
2016-04-08 23:23:29 +02:00
Thomas Krijnen
74e495cec0
python2.7 compatibility on code generator
2016-03-18 11:17:26 +01:00
Thomas Krijnen
0ceef8fe67
Use constant time parent enumeration lookup
2016-03-18 11:14:14 +01:00
aothms
da0af77570
Compatibility for older versions of cmake, python, open cascade, boost
2016-02-18 13:17:15 +01:00
aothms
4122759f1a
Add option to compile (external) schema by cmake
2016-02-15 16:59:47 +01:00
Stinkfist0
16a82f035f
templates.py: disable C4100 warnings for headers created by this file + move <map> inclusion to .cpp as it's not needed in .h + use spaces instead of tabs consistently for these files as seems to be the convention.
2015-11-22 02:26:28 +02:00
aothms
9096895bdb
Support for schemas using TYPE definitions to redeclare BINARY types
2015-09-08 15:27:05 +02:00
aothms
810d3eab1e
Ignore tail remarks in the express schema parser
2015-08-13 14:18:59 +02:00
Thomas Krijnen
1ec14118fe
Introduce specific exception for out of range attribute indexing
2015-06-17 11:04:28 +00:00
Thomas Krijnen
4f60c7d48c
Provide concrete C++ implementations for all multidimensional aggregate types in IFC4
2015-06-16 12:58:07 +00:00
Thomas Krijnen
3d6b330366
Reintroduce binary type in express parser
2015-05-21 12:53:17 +00:00
Thomas Krijnen
37d4e9bcbd
Fix express parser for simple types that redefine aggregates of entities
2015-05-21 12:09:57 +00:00
Thomas Krijnen
955190b517
Add support for reading and writing BINARY attributes. Rename members of the IfcUtil::ArgumentType enumeration.
2015-04-07 15:06:56 +00:00
Thomas Krijnen
0a0f44b674
Reduce link time for MSVC release builds. Patch by ch0kee.
2015-03-22 19:52:29 +00:00
Thomas Krijnen
9bbbc6e7d9
Extend Python's dir() function on entity instances with attribute and inverse attribute names of entities
2015-02-27 13:41:33 +00:00
Thomas Krijnen
ee87466521
1) Implement a breadth-first traversal of forward references 2) implement entity instance deletion from a file 3) recursively copy entity instances to another file
2015-02-17 19:48:41 +00:00
Thomas Krijnen
8581fed39b
Track inverse attributes more correctly
...
Rename Size() to size() on EntityList and friends
2015-01-10 22:13:52 +00:00
Thomas Krijnen
f3c26c372d
Parse the spf header and check schema_identifiers against compiled schema
2015-01-05 17:46:23 +00:00
Thomas Krijnen
4d5d749255
Merge developments from the python_wrapper branch into master
2015-01-05 14:11:42 +00:00
Thomas Krijnen
1b54ba039d
- Add support for IFC4 nurbs surfaces (IfcBSplineSurfaceWithKnots and IfcAdvancedFace)
...
- Remove unnecessary typedefs
2014-05-04 14:42:55 +00:00
Thomas Krijnen
17f873b486
First stab at a new express parser to have some more luck with Ifc4
2014-02-17 22:13:55 +00:00
Thomas Krijnen
2353c25fb8
- Handle explicit attributes re-declared as derived in a subtype
...
- Update IfcOpenHouse to import correctly in Autodesk Autocad Architecture 2013
2012-11-10 09:36:34 +00:00
Thomas Krijnen
0ef6577407
Fix some errors and warnings
2012-08-13 09:17:08 +00:00
Thomas Krijnen
6f1e1c3bad
NOTE: From now on Boost is required in order to compile IfcOpenShell
...
====================================================================
- Use boost::optional for optional IFC arguments
- Use boost::uuid for the creation of GlobalIds
- New IfcGeomObjects setting to force alignment of TopoDS_Face normal to CCW orientation
- Removed static Ifc class, renamed to non-static IfcFile. IfcFile renamed to IfcSpfStream
- Introduced Logger class
- Introduced EntityBuffer class that keeps track of all writable entities created to add them all in once to the IfcFile class
2012-08-11 13:24:08 +00:00
Thomas Krijnen
3e95e7474b
Allow for the initialization of SELCECT data types for writable entities (still no proper type checking though for SELECTs)
2012-07-19 23:51:57 +00:00
Thomas Krijnen
e4e8f05980
Update IfcExpressParser to generate writable schema
2012-07-19 23:03:25 +00:00
Thomas Krijnen
e3f0a5fafd
Prefix IfcUtil::ArgumentType in order to avoid collisions with Windows API defines
2012-06-07 11:42:02 +00:00
Thomas Krijnen
89a6e7375a
Fix a bunch of msvc warnings regarding empty switch statements in the reflection methods
2012-05-16 10:52:49 +00:00
Jochem Berndsen
7732801eb9
Reflection of object properties.
2012-05-04 15:15:12 +00:00
Thomas Krijnen
c31bc16dba
Try to better my life as a programmer, starting with more comments and documentation
2012-03-17 11:47:31 +00:00
Thomas Krijnen
3bb008c89f
- Switch to double precision
...
- Allow accessing entities by GlobalId
- Some more support for writing back IFC
- Prefix EXPRESS Enum values to avoid collisions
- Fix a bug in the SenseAgreement of Cartesian trimmed curves
- Use straight line segment in case point projection failed on trimmed curve
- Add epsilon to polylines and -loops point equality test
- Decompose a convex polygonal bounded halfspace into several unbounded halfspace and process only if they operate on a volume larger than some epsilon
- No longer fail connected facesets if a single face is invalid
- Updated IfcBlender for compatibility with Blender 2.62
- Added additional test files
2012-03-13 11:56:52 +00:00
Thomas Krijnen
6dbf618360
- Throw and catch IfcExceptions while parsing
...
- Fix issues with left-handed IfcCartesianTransformationOperator3D [fixes #3405491 Issues with MappingTarget of IfcMappedItem]
2011-10-13 11:25:59 +00:00
Thomas Krijnen
d02eeac132
Reduce unnecessary use of smart pointers
...
Speed up type checking by using std::maps and switch statements
Add compile flag to win/IfcGeom.vcproj
2011-09-03 13:58:59 +00:00
Thomas Krijnen
2561f94acb
- Fixed a bug regarding IfcUnitAssignment
...
- Separate IFC parsing library and geometry libraries [#3395025 ]
- Added example for IfcParse usage without geometry or Open CASCADE functionality
- Cleanup of vcproj Open CASCADE dependencies
- Added function to query parent class type in IfcExpressParser.py
2011-08-24 12:21:07 +00:00
Thomas Krijnen
5a475bfa66
IfcExpressParser: Initial commit of python script to convert the IFC2X3_TC1.exp ISO-10303-11 Express file into C++ code for the IfcParse library
2011-07-28 14:32:44 +00:00