Commit Graph

6676 Commits

Author SHA1 Message Date
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 6a828d7035 Instantiates IfcHierarchyHelper template for ADD2 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
Thomas Krijnen 23ab8c7ef9 In-code changes for ADD2 2023-10-27 08:04:17 -07:00
Thomas Krijnen b52752ae11 Rerun C++ codegen 2023-10-27 08:04:17 -07:00
Thomas Krijnen b865309b92 Merge v0.7.0 -- src\ifcopenshell-python\ifcopenshell\express 2023-10-27 08:04:13 -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 909978c941 Merge pull request #3826 from RickBrice/v0.8.0
Some minor tweaks and implements suggestions
2023-10-12 20:59:31 +02:00
Dirk Olbrich 616a96972a clang-format: align license blocks
- split up some very long lines
2023-10-12 12:39:16 +02:00
Dirk Olbrich 63177a7c35 clang-format: format test 2023-10-12 12:39:16 +02:00
Thomas Krijnen fa73de97b0 Option to specify algorithm for --exterior-only 2023-10-06 13:27:47 +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 d50dcadf5c Implemented placement handling with transformation matrix. 2023-09-29 08:45:02 +02:00
Richard Brice fdc0c0cbd1 Minor revision to numerical integration code 2023-09-29 08:45:02 +02:00
Richard Brice 2d14ad1667 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-29 08:45:02 +02:00
Richard Brice 9ac99b6f97 Implements mapping of IfcCurveSegment to taxonomy::geometry 2023-09-29 08:45:02 +02:00
Richard Brice 4d3a21de77 Fixes cast to IfcCurveSegment for access to ParentCurve 2023-09-29 08:45:02 +02:00
Richard Brice 60723cff2b Fixed problem with call to boost::mpl::for_each 2023-09-29 08:45:02 +02: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