Commit Graph

87 Commits

Author SHA1 Message Date
Thomas Krijnen 700cc772fb - Add an alternative method to process openings that is potentially faster. Use IfcGeomObjects::FASTER_BOOLEANS to enable.
- Begin working on verbosity levels
2012-06-07 14:38:21 +00:00
Thomas Krijnen 82289bf065 Correctly interpret integer tokens without a leading #. Bug report: https://sourceforge.net/projects/ifcopenshell/forums/forum/1782717/topic/5280357 2012-06-07 11:56:20 +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 ca194ea423 Disable to paging functionality of the parser, IFC files are now always entirely read into memory. 2012-05-26 09:00:30 +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 a5107b9182 fix small issue in character decoding 2012-05-04 15:46:29 +00:00
Jochem Berndsen 7732801eb9 Reflection of object properties. 2012-05-04 15:15:12 +00:00
Thomas Krijnen c9f9997e67 Use floats in IfcPython 2012-04-08 08:42:03 +00:00
Thomas Krijnen 4866953119 Revert the IfcGeomObjects API to float precision instead of double. Internally double precision is still used. 2012-04-08 08:39:09 +00:00
Thomas Krijnen b2b51e343f Only add faces to shells that have a surface area larger than some threshold value 2012-04-07 14:34:44 +00:00
Thomas Krijnen aa7a290ea1 Adjust some tolerances 2012-04-07 09:59:04 +00:00
Thomas Krijnen 5c71ae6f89 Catch one more IfcException 2012-03-31 09:54:15 +00:00
Thomas Krijnen a9bba39b9d Applied Patch #3509752 by mv2ax
Made the sewing of TopoDS_Shells into a IfcGeomObjects::Setting
Limit the maximum number of faces a shell to be sewed
2012-03-23 17:38:44 +00:00
Thomas Krijnen df2bcecf96 - Fix a regression due to too high tolerance in Polyline -Loop creation.
- Make tolerances slightly more explicit, ideally these should obviously be configurable at runtime.
2012-03-20 09:32:51 +00:00
Thomas Krijnen 4760ad1910 Fix a typo preventing gcc compilation
Increment version string to 0.3.0-rc3
Add version string to IfcObj output
2012-03-19 10:12:56 +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 cdbafac676 Fix a bug in the order of applying the scaling of a IfcCartesianTransformationOperator3DnonUniform
Fix a bug in the formatting of IFC simple types
Provide a way of iterating over all entities in the IFC file
Added IFC test file by Ryan Schultz
Added another IFC test file from AutoCAD Architecture 2010
2012-03-16 15:21:52 +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 2b27b86b34 - IfcGeom: Major performance improvement by only sewing faces of IfcConnectedFaceSets when needed for boolean operations
- Automatic tests for several well known IFC files on the Internet
- IfcBlender: Make visibility in render consistent with 3d view
- Some compatibility for Ifc2x files with IfcShapeRepresentations and RepresentationIdentifier 'IAI'
2012-03-01 21:17:06 +00:00
Thomas Krijnen a9a5f8dc69 - Fix a crash if eof is unexpectedly encountered
- Warn if an entity with same ENTITY_NAME is encountered
2012-02-04 15:10:17 +00:00
Thomas Krijnen 3336102b46 No longer warn about 'empty' halfspace solids 2012-01-31 17:30:46 +00:00
Thomas Krijnen b719e12417 Provide access to IfcGeomObject geometry as Open Cascade BRep data 2012-01-31 08:56:10 +00:00
Thomas Krijnen 5ebc23656a Update cmake and vcprojs to reference ICU correctly 2012-01-31 08:53:53 +00:00
Thomas Krijnen 644ff7c033 - IfcJni: Fix access violation errors by creating a copy of the byte[]
- Add version identifier to bimserver_plugin and IfcJni
2012-01-24 13:38:37 +00:00
Thomas Krijnen 456adceef9 Add install targets to makefile 2012-01-11 13:57:00 +00:00
Thomas Krijnen 798397fa21 Do not trim conical curves if the difference between parametric values is 2pi 2012-01-02 14:56:11 +00:00
Thomas Krijnen 60aa198a0a Update bimserver_plugin and ifcjni for IfcEngineModel::getInstanceFromExpressId() 2012-01-01 15:30:19 +00:00
Thomas Krijnen 2d30fb4615 Catch errors in the processing of lists of shapes 2011-12-29 14:45:32 +00:00
Thomas Krijnen 508cb2679f #3452372 Parent Elements to Openings to Walls 2011-12-27 09:26:16 +00:00
Thomas Krijnen 9d88d75b3b Fixes #3452363 Fail to create meshes of parametric curves when no angular unit information is present in the IFC file 2011-12-07 14:07:22 +00:00
Thomas Krijnen bc56aa3397 Fixes #3452367 Incorrect parenting in ADT-FZK-Haus-2005-2006.ifc
When multiple IfcShapeRepresentations exist for one IfcProduct, all are correctly parented in IfcBlender
2011-12-07 13:44:16 +00:00
Thomas Krijnen 63e39003ae Correct parent names if using the unicode compatibilty layer 2011-12-06 11:04:05 +00:00
Thomas Krijnen 479fcd9013 Further address UCS2 - UCS4 incompatibility, move compatibility layer to ifcwrap/Interface.h 2011-12-06 10:38:14 +00:00
Thomas Krijnen 203dd2107e Fixed typo 2011-12-05 17:40:14 +00:00
Thomas Krijnen 08d3eb649c Allow for string data to be passed as vectors of int between IfcPython and IfcGeom, to circumvent SWG trying to access UCS-2 data as UCS-4 and vice versa 2011-12-05 14:23:22 +00:00
Thomas Krijnen cab44ce754 IfcBlender: provide a temporary workaround for interfacing from a UCS2 Blender Python
A real solution could be to compile IfcGeom into a dynamic library and compile multiple versions of _IfcImport.so for different configurations which are selected based on sys.maxunicode
Another alternative would be not to rely on strings when exchanging textual data but vectors of int that contain the string character codes
2011-12-04 13:33:16 +00:00
Thomas Krijnen 950dd93c4f Make IfcBlender compatible with newer blender api revisions 2011-12-01 14:23:26 +00:00
Thomas Krijnen f6da8285f7 Use std::string instead of char* for IfcGeomObjects::Init() 2011-12-01 11:19:27 +00:00
Thomas Krijnen 1a40a9f78c Fix compilation of IfcMax by separating ShapeList definition into different header 2011-11-30 11:50:17 +00:00
Thomas Krijnen d102327009 Removed old comment line 2011-11-30 10:01:20 +00:00
Thomas Krijnen 59cda0ebbd Increase block size for filestream reading 2011-11-25 14:50:59 +00:00
Thomas Krijnen 4dc0bdbe02 Guess units if none are present and convert back if needed 2011-11-02 12:52:35 +00:00
Thomas Krijnen d6d3333f9d - Correct calculation of normals
- More verbosity for geometry conversion settings
2011-10-28 09:55:26 +00:00
Thomas Krijnen 5ef06dca64 - Calculate normals (incorrectly for curved surfaces) 2011-10-27 20:42:51 +00:00
Thomas Krijnen ac155dc810 - Jave Native Interface library for use with the open source http://BIMserver.org
- IfcParse accepts char* as input
- IfcOpeningElements now return geometry
2011-10-27 16:13:29 +00:00
Thomas Krijnen cac8d9b684 IfcBlender: process relations default to False, and warning in tooltip 2011-10-24 21:05:58 +00:00
Thomas Krijnen bede68bef7 Properly clear log_stream 2011-10-24 19:26:55 +00:00
Thomas Krijnen bd79df2be7 - Make distinction between single shape and list of shapes
- Store shapes in std::vectors rather than TopoDS_Compounds
- Apply transformation only on triangulated meshes or when processing openings
- Store transformations in a gp_GTrsf to allow arbitrary transformations
- Support IfcCartesianTransformationOperator3DnonUniform
- TODO: Create proper class for ShapeList
- TODO: Carefully check for null pointers returned from IfcGeom::convert_shape()
2011-10-23 17:11:06 +00:00
Thomas Krijnen 8bcb9ffa3e - Now with actual logging to Blender texts
- More detailed feedback on progress and pop-up when import fails
2011-10-20 16:05:21 +00:00
Thomas Krijnen 59d768bcb0 No longer skips IfcShapeRepresentations if they're linked to an IfcProduct via an IfcProductRepresentation rather than an IfcProductDefinitionShape 2011-10-19 12:52:18 +00:00