Commit Graph

92 Commits

Author SHA1 Message Date
Thomas Krijnen 347a3c80bb More logger changes 2026-06-11 21:09:56 +02:00
Richard Brice 32a601d057 fixes build problem from commit a7738eeb 2026-06-10 13:31:32 -07:00
Thomas Krijnen a7738eeb64 Pass around non-static logger instances and programmatic access to messages in-memory 2026-06-10 18:40:17 +02:00
Thomas Krijnen a751fb956d Introduce unique error codes 2026-06-10 18:40:17 +02:00
Richard Brice 42ed398169 Simplifies line and circle parent curves and parent curve normalization 2026-05-25 10:34:29 -07:00
Richard Brice f70044d373 Fixes bug computing cross slope 2026-05-25 10:34:29 -07:00
Thomas Krijnen 9d9e9ed4cb Merge remote-tracking branch 'origin/v0.8.0' into tfk-rocksdb-storage 2025-08-26 10:17:57 +02:00
Thomas Krijnen 88ac0a0f6c Wrong preprocessor statement #6765 2025-05-31 14:14:43 +02:00
Thomas Krijnen 4bc88eac2f ifdefs around geometry handling for 4.3 rc schemas #6710 2025-05-17 16:01:28 +02:00
Richard Brice 42c49af4e3 Implements business to geometry mapping for alignment cant.
Also fixes problems that were created by this work in other files
2025-03-29 15:30:04 -07:00
Thomas Krijnen 61c4797b8f Fix issue in CurveSegment 2025-03-28 12:08:10 +01:00
Richard Brice 04e07db0a3 Import alignment from csv (#6234)
* Start of the official alignment API

* Import alignment into bonsai model using CSV file
2025-03-14 07:31:50 -07:00
Richard Brice 79046e2970 Compute horizontal project of vertical spiral curve 2025-02-12 16:47:51 -08:00
Scott Lecher a7a9fcc73a adds calculations for projected_length of gradient curve segments (#6006) 2025-01-22 15:37:29 -08:00
Richard Brice 933d845472 Fixes IfcPolynomialCurve when used as IfcCurveSegment.ParentCurve in horizontal alignments 2025-01-06 14:36:37 -08:00
Richard Brice 26ba761c68 Refactors alignment geometry 2025-01-02 11:10:56 -08:00
Richard Brice eadf35f031 Fixes unit conversion for polynomial coefficients 2024-12-02 14:45:05 -08:00
Richard Brice 3672ce90d0 Minor tweak for cant with IfcCosineSpiral and IfcSineSpiral 2024-11-04 15:00:27 -08:00
Richard Brice f3ce57480a Fixes unit conversion problem in IfcCurveSegment 2024-10-31 08:55:01 -07:00
Richard Brice e270583451 Fixes unit conversion on clothoid constant 2024-10-24 08:43:47 -07:00
Richard Brice 647e379c69 Fixes problem with evaluating point on vertical alignment
Fixes evaluation of IfcLine parent curve for IfcGradientCurve. See https://github.com/IfcOpenShell/IfcOpenShell/discussions/5587
2024-10-20 08:19:49 -07:00
Richard Brice abe3d7e5db Fixes problem normalizing IfcDirection direction ratios 2024-09-28 06:19:41 -07:00
Richard Brice cc7171060f Decouples evaluation of a piecewise_function from the function itself (#5344) 2024-09-10 10:11:17 -07:00
Richard Brice c9d2390d9a Implements cant geometry 2024-09-06 10:02:08 -07:00
Thomas Krijnen d80bcd1a94 Unify variant storage (#5118) 2024-08-23 20:29:07 +02:00
Richard Brice c31c34b7d2 reimplements piecewise_function using PIMPL idiom
PIMPL idiom allows implementaiton of piecewise_function to evolve without envoking systemwide recompile (unless the class definition changes)
2024-08-01 12:34:49 -07:00
Richard Brice 60b007d28a Fixes domain of vertical and cant pwf (Issue #5072) 2024-07-29 09:48:15 -07:00
Richard Brice 9bf68db080 Fixes mapping of cant segments without superelevations 2024-07-17 15:46:36 -07:00
Thomas Krijnen a2334f4ce0 More 4X3 non-ADD2 permissiveness in param values on polynomials 2024-06-28 13:39:19 +02:00
Richard Brice 579768c35f Fixes problem with cant values 2024-05-22 13:51:55 -07:00
Richard Brice a45f6f980f Prevents divide by zero when clothoid constant is 0.0 2024-05-20 13:17:18 -07:00
Richard Brice 507e4a8211 Fixes problem with constant cant 2024-05-08 10:28:01 -07:00
Richard Brice a0b4c24224 Updates taxonomy::piecewise_function so it's immutable and implements internal caching. Adds new evaluate2 method that returns loop and vector of distance along for each loop point. 2024-05-07 10:24:46 -07:00
Richard Brice 648ca4d477 Resolves IfcSegmentCurve parent curve parameterization for line and clothoid 2024-05-04 18:07:09 -07:00
Richard Brice 6cb511b681 Removed IfcPolyLine as a parent curve for IfcCurveSegment. 2024-05-04 16:14:15 -07:00
Richard Brice 4dec319333 Re-write of IfcCurveSegment to eliminate recursion problem and provides a more standardized approach for all parent curve types 2024-05-04 16:03:36 -07:00
Thomas Krijnen 710f19af08 Prevent stackoverflow on long alignments in adjustments 2024-04-29 21:02:31 +02:00
Thomas Krijnen e6cc500227 Some basic code to lookup lengths for pre ADD2 schemas 2024-04-29 21:00:59 +02:00
Richard Brice e946e34823 Apparent fix to cant placement matrix 2024-04-15 12:41:36 -07:00
Richard Brice a1d8aaf999 Fixes problems with Helmert curves 2024-04-11 11:13:02 -07:00
Richard Brice 4807e5b432 Fixes curve segment placement issues 2024-04-10 15:15:11 -07:00
Richard Brice a34da81ac5 Fixes tilt slope for cant 2024-04-10 14:09:46 -07:00
Richard Brice 6d5a9f8716 Fixes anon namespace that was causing problems with linking 2024-04-10 11:48:26 -07:00
Richard Brice fda4c674d9 Fixes more problems with mapping IfcCurveSegment 2024-04-09 16:46:43 -07:00
Richard Brice a94d1e53b7 Fixes some problems with mapping IfcCurveSegment 2024-04-06 19:02:18 -07:00
Richard Brice 83a127b570 Implements IfcSegmentReferenceCurve and cant 2024-03-28 15:04:17 -07:00
Richard Brice ebe6015561 Fixes vertical clothoid, vertical circle, and horizontal cubic cases for alignment 2024-03-06 12:00:35 -08:00
Richard Brice fcfeac95bf WIP getting alignment geometry to match unit test from bSI Rail Room 2024-03-01 10:55:20 -08:00
Richard Brice 0baf3dac52 Adds support for IfcCosineSpiral, IfcSineSpiral, and updates implementation to match results from bSI Railway Room test cases. 2024-02-26 16:34:41 -08:00
Richard Brice bb88ba5bdf Updates implementation of IfcXXXPolynomialSpiral curves as parent curve 2024-02-16 13:54:26 -08:00