Thomas Krijnen
336b07a7a2
Use BRepMesh_IncrementalMesh rather than BRepMesh::Mesh. Thanks lorinma.
2015-01-19 16:02:34 +00:00
Thomas Krijnen
3b157b0f3e
Use BRepMesh_IncrementalMesh rather than BRepMesh::Mesh. Thanks lorinma.
2015-01-16 14:32:50 +00:00
Thomas Krijnen
414b761453
Don't rely on operator bool() but on bool operator!() for truthiness of boost::optionals. Fixes compilation with boost 1.56+.
2015-01-16 13:24:40 +00:00
Thomas Krijnen
53c95db28f
Fix for IfcSpecularExponent
2015-01-06 14:13:24 +00:00
Thomas Krijnen
61d73ebfd6
Improvements for precision handling
2015-01-06 14:09:28 +00:00
Thomas Krijnen
33625c6422
More robust processing of IfcPolyline and IfcPolyLoop
2014-07-28 20:03:53 +00:00
Thomas Krijnen
f68060f566
Fixes for IfcRectangleHollowProfileDef and filleted profile generation.
2014-07-24 11:14:54 +00:00
Thomas Krijnen
dce878515e
Correct an invalid default value for IfcCartesianTransformationOperator3D.Axis3. Thanks Stefan.
2014-07-19 10:30:13 +00:00
Thomas Krijnen
577565a494
- Check the validity of solids created from sewed shells and potentially revert to a shell or compound of faces
...
- Flag shape representations, for which no item succeeds, as failed
2014-06-27 12:00:41 +00:00
Thomas Krijnen
18620d29ae
Apply the same precision value when merging a compound of faces into a solid just-in-time for subtraction
2014-06-11 10:35:06 +00:00
Thomas Krijnen
79839d487a
Detect cases where Newell's Method returns a zero-length vector and make no attempt to normalize it in order to prevent an exception. In this case the face will be flagged as invalid down the road, because its perimeter doesn't span any area.
2014-06-11 10:32:15 +00:00
Thomas Krijnen
6fe2e2366d
Process IfcStyledItems directly applied to an IfcFacetedBrep
2014-04-09 10:57:45 +00:00
Thomas Krijnen
4242bb7c1b
Account for unit magnitude in matrix translation part when CONVERT_BACK_UNITS is enabled
2014-04-08 07:28:07 +00:00
Thomas Krijnen
1bbd08f1a4
Increased verbosity in unsupported entity instances
2014-04-02 15:28:04 +00:00
Thomas Krijnen
f387090078
Take into account face location when serializing shape as tesselated faceset.
2014-03-22 21:13:02 +00:00
Thomas Krijnen
790bdee195
Correctly treat IfcLShapeProfileDef.Width as optional attribute
...
Fix IfcCShapeProfileDef having Width and Depth interchanged
2014-03-22 18:46:07 +00:00
Thomas Krijnen
b6a811ae7e
Handle missing or invalid unit and precision information more gracefully during IfcGeomObject initialization
2014-03-22 12:56:08 +00:00
Thomas Krijnen
fa195194c6
Prevent a construction error when trying to normalize a zero length normal during triangulation, which happens very, very rarely.
2014-03-22 10:48:29 +00:00
Thomas Krijnen
c47a43caf7
IfcGeomObjects: No longer implicitly turn off the availability of triangulated data when USE_BREP_DATA is set. Use DISABLE_TRIANGULATION to explicitly disable the generation of triangulated data to gain performance when only OCC brep data is needed.
2014-01-02 13:33:54 +00:00
Thomas Krijnen
2bd37fd088
IfcConvert: Unit names and magnitudes + cosmetic fixes
2013-12-31 14:10:38 +00:00
Thomas Krijnen
586ad14013
#28 USE_BREP_DATA setting does not respect CONVERT_BACK_UNITS setting
2013-12-27 09:36:14 +00:00
Thomas Krijnen
9577778573
Fix for gcc thanks to Ivano Ras
2013-11-25 21:20:07 +00:00
Thomas Krijnen
bffb19a92f
Use the precision from the IfcGeometricRepresentationContext to dictate OCC modeler tolerances
2013-11-24 15:44:27 +00:00
Thomas Krijnen
03beb42d2e
Cosmetic changes
2013-08-12 00:26:15 +00:00
Thomas Krijnen
b4059cc340
Tweak processing of IfcBooleanClippingResult and IfcPolygonalBoundedHalfSpace
2013-08-09 05:13:02 +00:00
Thomas Krijnen
14a3f80c59
Correct a regression in matrix multiplication order
2013-07-20 22:12:40 +00:00
Thomas Krijnen
063f498066
Additional compatibility for std::tr1::array
2013-07-20 22:00:12 +00:00
Thomas Krijnen
d6693ff931
Representation surface style initialization fix submitted by ckimmig
2013-07-20 21:41:26 +00:00
Thomas Krijnen
17ebefa158
Fix a bug in the processing of an IfcTrimmedCurve with an IfcLine as a basis constructed from an IfcVector with non-unit length.
2013-06-10 15:47:41 +00:00
Thomas Krijnen
12a0571bf4
Prefix array with tr1 to accomodate older compilers
2013-05-13 07:12:42 +00:00
Thomas Krijnen
1d1fd49608
Added missing files
2013-05-13 06:40:30 +00:00
Thomas Krijnen
3f048efc79
Add an adapter for IfcGeom::SurfaceStyle so that IfcGeomObjects (and most notably the Python wrapper) need not to be aware of boost::optional
...
Expose shading and rendering styles to the Python wrapper as well
2013-05-11 15:26:35 +00:00
Thomas Krijnen
dccbccfa06
A limited attempt at some const correctness in the IfcGeomObjects interface
2013-05-11 10:03:20 +00:00
Thomas Krijnen
80bc1b5dab
[Work in progress] Start adding support for IfcSurfaceStyleShading and -Rendering
2013-05-05 08:49:25 +00:00
Thomas Krijnen
5d4ff0b54a
First push of a more all-round geometrical file conversion utility
2013-03-24 10:48:39 +00:00
Thomas Krijnen
4f26622e03
Do revert to unknown plane angle unit state after guessing when creating an IfcCompositeCurve
2012-12-31 15:48:04 +00:00
Thomas Krijnen
e56281a72e
- Correctly format REALs according to ISO 10303-21 instead of C++ std::stream double formatting
...
- Add the IfcHierarchyHelper to assist in the creation of IFC files
- Add the IfcOpenHouse example for writing topological geometry and tessellated Open Cascade shapes to IFC
2012-11-04 16:26:33 +00:00
Thomas Krijnen
e729795da2
Add an option to disable the subtraction of IfcOpeningElements from relating building elements to the IfcGeomObject settings
2012-10-19 08:20:43 +00:00
Thomas Krijnen
2f500aa098
IfcGeom: Use the 'wire creation tolerance' on point projection for trimmed curves
...
Fall back to trimming by parameter if possible and point projection fails
2012-09-16 12:49:55 +00:00
Jang Myeongho
da616ffd64
- Added getter to IfcFile object
...
- fixed wrong operator to judge plan angle unit is not exist.
- guessed plane angle unit stay in a file processing.
2012-08-21 07:06:59 +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
975d0caa0f
If no plane angle unit is provided in the IFC file, create composite curves using both radians and degrees and see which 'looks best' (=successfully created and/or closed curve)
2012-07-29 15:16:30 +00:00
Thomas Krijnen
b4e42025fd
Convert all .cpp and .h files to UTF-8 with BOM
2012-07-19 18:26:47 +00:00
Jang Myeongho
217a7c6599
added break statements.
2012-06-27 15:59:09 +00:00
Jang Myeongho
00de61cbfc
fixed wrong assertion.
2012-06-27 11:16:37 +00:00
Thomas Krijnen
4975de6d74
Apply patch #3537663 by myueho: https://sourceforge.net/tracker/?func=detail&atid=2204968&aid=3537663&group_id=543113
2012-06-25 15:08:58 +00:00
Thomas Krijnen
2137ad2488
Apply patch #3534755 by myueho to use the standard M_PI instead of relying on PI defined in OCC, which recently got removed upstream.
2012-06-13 07:13:31 +00:00
Thomas Krijnen
b1adf124c6
Reorder the definition of IfcCircleHollowProfileDef and IfcCircleProfileDef in order for the hollow profiles to get interpreted correctly
2012-06-12 17:03:39 +00:00
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