Richard Brice
12e69ff07a
Fixes build issue with mapping
2023-11-09 09:43:36 -08:00
Richard Brice
8409859e8d
Implements safer way to use IfcCurveSegment.UsingCurves
...
Co-authored-by: Thomas Krijnen <t.krijnen@gmail.com >
2023-11-09 03:23:13 -07:00
Richard Brice
7ed85358f9
Implements IfcSegmentedReferenceCurve and first cut at cant geometry
2023-11-08 19:43:21 -08:00
Thomas Krijnen
809668c015
Major update to halfspace algorithm, conversion result shape analysis
2023-11-02 09:04:34 +01:00
Richard Brice
b50f4a2240
Adds a virtual init_adjustments function to precompute common values for segment geometry adjustments
2023-11-01 08:35:29 -07:00
Richard Brice
bef86e261c
Renamed interpolate to compute_adjustment and made it a template function.
2023-11-01 08:34:58 -07:00
Richard Brice
969181acf3
Implements framework for adjusting geometry based on location of start point of next segment.
2023-10-27 08:10:18 -07:00
Richard Brice
0aa69a6ebf
Moves implementation of piecewise_function::evaluate(u) from h to cpp to prevent massive rebuilds everytime the function is changed.
2023-10-27 08:10:18 -07:00
Richard Brice
dd915736f5
Adds warning that the BaseCurve of IfcGradientCurve is expected to be IfcCompositeCurve
2023-10-27 08:10:18 -07:00
Richard Brice
85ece64272
Minor code format revisions
2023-10-27 08:10:18 -07:00
Richard Brice
6e8d635040
Adds test of fallback placement for IfcLinearPlacement and reduces number of tests for placement type.
...
Changed to if-else if so inst isn't tested to be every placement type, every time.
2023-10-27 08:10:18 -07:00
Richard Brice
cefbf8b4f2
Fixes runtime check for polynomial curve
2023-10-27 08:10:17 -07:00
Thomas Krijnen
a0aaa39c4b
Test for intersection result in cgal code
2023-10-27 08:10:17 -07:00
Thomas Krijnen
71166f3685
Some variations of shell mapping in occt
2023-10-27 08:10:17 -07:00
Thomas Krijnen
90f9123f35
Notify on product conversion start as in 0.7
2023-10-27 08:10:17 -07:00
Thomas Krijnen
a6f97b0b92
Implement ObjectPlacement using native recursion
2023-10-27 08:10:17 -07:00
Richard Brice
f0dbb535d3
Removed assert, added Logger::Warning and Logger::Error. Made treatment of unexpected data more permissive
2023-10-27 08:09:50 -07:00
Richard Brice
dde85265c6
Adds support for IfcLinearPlacement
2023-10-27 08:09:05 -07:00
Richard Brice
1920a6427d
Removed assert, added Logger::Warning and Logger::Error. Made treatment of unexpected data more permissive
2023-10-27 08:04:19 -07:00
Richard Brice
140dded1d1
Implements Eigen shortcut
...
Co-authored-by: Thomas Krijnen <t.krijnen@gmail.com >
2023-10-27 08:04:18 -07:00
Richard Brice
40d4c5bd01
Implements Eigen shortcut
...
Co-authored-by: Thomas Krijnen <t.krijnen@gmail.com >
2023-10-27 08:04:18 -07:00
Richard Brice
97879e47e2
Implements Eigen shortcut
...
Co-authored-by: Thomas Krijnen <t.krijnen@gmail.com >
2023-10-27 08:04:18 -07:00
Richard Brice
8b05da1da1
Implements Eigen shortcut
...
Co-authored-by: Thomas Krijnen <t.krijnen@gmail.com >
2023-10-27 08:04:18 -07:00
Richard Brice
528cf06a46
Adds support for IfcLinearPlacement
2023-10-27 08:04:17 -07:00
Thomas Krijnen
b4ef4cbbec
Add noexcept to hash functor
2023-10-27 08:04:17 -07:00
Richard Brice
512b8b9e08
Mapping of vertical profiles with IfcGradientCurve
2023-10-27 08:04:12 -07:00
Richard Brice
8497e655f5
Fixes mapping of horizontal curve with IfcCircle
2023-10-27 08:04:12 -07:00
Richard Brice
c1cab4b186
Fixes problems with horizontal curves and clothoid spirals
2023-10-27 08:04:12 -07:00
Thomas Krijnen
53096017f5
Update nef_to_halfspace_tree.h
2023-10-27 08:04:12 -07:00
Thomas Krijnen
c1a6d8f347
Small changes to curve segment handling for purpose of wrapper
2023-10-27 08:04:12 -07:00
Thomas Krijnen
fb9cf75412
#3889 Apply handling of openings on IfcFeatureElementSubtraction generically
2023-10-16 11:02:40 +02:00
Richard Brice
b9c234457d
Fixes minor issues with mapping code
2023-10-04 13:25:58 -07:00
Richard Brice
a5c07d5e24
Adds IfcPolynoialCurve for vertical curves
2023-10-04 13:25:31 -07:00
Richard Brice
7b0e2c52ac
Manually merged in aothms revisions for gradient curves and implicit_item taxonomy
2023-10-02 16:30:39 -07:00
Richard Brice
c3aeae8661
Implements recommendation to use map_impl(IfcPolyline*)
2023-09-29 13:27:23 -07:00
Richard Brice
00d8ffeba0
Reverts to Taylor Series approximation of Clothoid curve.
...
If you compare the results generated by the numeric integration and the approximation, they are very different. The approximation compares will with other software so there is likely a problem with the equation of the clothoid
2023-09-29 12:14:38 -07:00
Richard Brice
f9d259a3d8
Removes redundant function evaluation in numeric integration
2023-09-29 12:14:38 -07:00
Richard Brice
d9b534b66d
Implemented position handling with transformation matrix
2023-09-29 12:14:38 -07:00
Richard Brice
47c319aa2d
Adds a continuity check for IfcCurveSegment
2023-09-29 12:14:30 -07:00
Richard Brice
d4f543d2ad
Implemented placement handling with transformation matrix.
2023-09-28 14:58:21 -07:00
Richard Brice
1564b53ef5
Minor revision to numerical integration code
2023-09-28 14:28:17 -07:00
Richard Brice
4f2b083ffc
Revises implementation of operator(IfcSchema::IfcClothoid*) to use trapezoid rule numeric integration.
...
This is a more general approach than the Taylor Series approximation and is applicable to all the other spiral types. I stubbed out a functor for IfcSecondOrderPolynomialSpiral, but haven't tested it. The purpose is to show the concept.
2023-09-28 11:51:26 -07:00
Richard Brice
6ae0cce186
Implements mapping of IfcCurveSegment to taxonomy::geometry
2023-09-27 11:16:55 -07:00
Richard Brice
3e272efce4
Fixes cast to IfcCurveSegment for access to ParentCurve
2023-09-22 13:49:18 -07:00
Richard Brice
04b70efd7f
Fixed problem with call to boost::mpl::for_each
2023-09-21 15:48:45 -07:00
Thomas Krijnen
053e3a3191
#3098 Move boost::type application to curve to template function
2023-09-17 09:35:14 +02:00
Thomas Krijnen
a14c40feda
Check for empty result from map(IfcRepresentation) in iterator
2023-09-16 22:23:22 +02:00
Thomas Krijnen
88ef7c75b8
#3098 IfcCurveSegment and IfcClothoid handling (?)
2023-09-16 22:23:04 +02:00
Thomas Krijnen
79d456bbf1
mapping: always overwrite orientation of loop as facebound
2023-09-14 21:58:46 +02:00
Thomas Krijnen
380cf4eca5
cgal kernel: permissiveness for multiple outer bounds in face
2023-09-14 21:58:06 +02:00