Commit Graph

7567 Commits

Author SHA1 Message Date
Richard Brice 248f969520 Implements framework for adjusting geometry based on location of start point of next segment. 2023-10-27 20:50:44 +02:00
Richard Brice cef3de4e57 Moves implementation of piecewise_function::evaluate(u) from h to cpp to prevent massive rebuilds everytime the function is changed. 2023-10-27 20:48:39 +02:00
Richard Brice f448339fce Adds warning that the BaseCurve of IfcGradientCurve is expected to be IfcCompositeCurve 2023-10-27 20:48:29 +02:00
Richard Brice b83f2de5c4 Minor code format revisions 2023-10-27 20:48:11 +02:00
Richard Brice ba4ff68597 Fixes runtime check for expected IfcPolynomialCurve coefficients and adds fallback check to IfcObjectPlacement (#3936)
* Adds support for IfcLinearPlacement

* Instantiates IfcHierarchyHelper template for ADD2

* Implements Eigen shortcut

Co-authored-by: Thomas Krijnen <t.krijnen@gmail.com>

* Implements Eigen shortcut

Co-authored-by: Thomas Krijnen <t.krijnen@gmail.com>

* Implements Eigen shortcut

Co-authored-by: Thomas Krijnen <t.krijnen@gmail.com>

* Implements Eigen shortcut

Co-authored-by: Thomas Krijnen <t.krijnen@gmail.com>

* Removed assert, added Logger::Warning and Logger::Error. Made treatment of unexpected data more permissive

* Fixes runtime check for polynomial curve

* 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.

---------

Co-authored-by: Thomas Krijnen <t.krijnen@gmail.com>
2023-10-25 09:42:39 +02:00
Thomas Krijnen e9c70f8d83 Test for intersection result in cgal code 2023-10-24 20:57:02 +02:00
Thomas Krijnen f911bbd931 Some variations of shell mapping in occt 2023-10-24 20:56:39 +02:00
Thomas Krijnen 85b3509ce3 Notify on product conversion start as in 0.7 2023-10-24 20:56:06 +02:00
Thomas Krijnen ad61353fb5 Implement ObjectPlacement using native recursion 2023-10-24 20:54:25 +02:00
Richard Brice 2a53911c52 Removed assert, added Logger::Warning and Logger::Error. Made treatment of unexpected data more permissive 2023-10-24 17:05:51 +02:00
Richard Brice 94b567a25b Implements Eigen shortcut
Co-authored-by: Thomas Krijnen <t.krijnen@gmail.com>
2023-10-24 17:05:51 +02:00
Richard Brice 3237190d83 Implements Eigen shortcut
Co-authored-by: Thomas Krijnen <t.krijnen@gmail.com>
2023-10-24 17:05:51 +02:00
Richard Brice 5482ca145e Implements Eigen shortcut
Co-authored-by: Thomas Krijnen <t.krijnen@gmail.com>
2023-10-24 17:05:51 +02:00
Richard Brice 6f5f7016fe Implements Eigen shortcut
Co-authored-by: Thomas Krijnen <t.krijnen@gmail.com>
2023-10-24 17:05:51 +02:00
Richard Brice 5c64a1bd8d Instantiates IfcHierarchyHelper template for ADD2 2023-10-24 17:05:51 +02:00
Richard Brice fc22d2fa51 Adds support for IfcLinearPlacement 2023-10-24 17:05:51 +02:00
Thomas Krijnen 4f3dacd6d5 Use --start/end-group on linux to fix ld geomserver 2023-10-21 22:29:41 +02:00
Thomas Krijnen 164125fe70 Add noexcept to hash functor 2023-10-18 09:47:30 +02:00
Thomas Krijnen fd3ef6508b In-code changes for ADD2 2023-10-18 09:47:29 +02:00
Thomas Krijnen 1eb8ef08d2 Rerun C++ codegen 2023-10-18 09:47:28 +02:00
Thomas Krijnen 6302be6bfd Merge v0.7.0 -- src\ifcopenshell-python\ifcopenshell\express 2023-10-18 09:47:27 +02:00
Richard Brice d52f12973a Mapping of vertical profiles with IfcGradientCurve 2023-10-17 09:20:50 +02:00
Richard Brice 3eb85cc36a Fixes mapping of horizontal curve with IfcCircle 2023-10-17 09:20:50 +02:00
Richard Brice e794911926 Fixes problems with horizontal curves and clothoid spirals 2023-10-17 09:20:50 +02:00
Thomas Krijnen 51f72b4edc Update nef_to_halfspace_tree.h 2023-10-16 21:28:38 +02:00
Thomas Krijnen 661c8bc50f Small changes to curve segment handling for purpose of wrapper 2023-10-14 16:37:50 +02: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 d971e0e62e clang-format: remove duplicates from base style 2023-10-12 12:39:16 +02:00
Dirk Olbrich 63177a7c35 clang-format: format test 2023-10-12 12:39:16 +02:00
Dirk Olbrich 17838f2426 clang-format: no column length, no short blocks 2023-10-12 12:39:16 +02:00
Dirk Olbrich 1969828340 clang-format: add style file 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 ae09a1acac Merge branch 'v0.8.0' of https://github.com/RickBrice/IfcOpenShell into v0.8.0 2023-09-29 13:27:54 -07:00
Richard Brice c3aeae8661 Implements recommendation to use map_impl(IfcPolyline*) 2023-09-29 13:27:23 -07:00
Richard Brice 9c5758b77c Merge branch 'v0.8.0' into v0.8.0 2023-09-29 12:37:14 -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 6510291f21 Updated build scripts to use boost_1.79.0 2023-09-29 08:45:02 +02:00