Commit Graph

85 Commits

Author SHA1 Message Date
Thomas Krijnen c8a9d5b743 Address comment by @RickBrice 2024-03-13 13:18:12 +01:00
Thomas Krijnen 3b08f644ed Uncomment type assertion and comment out writing to stdout 2024-03-13 13:18:12 +01:00
Thomas Krijnen d06280f0e7 First rough draft of alignment-based IfcFixedReferenceSweptAreaSolid 2024-03-13 13:18:12 +01:00
Richard Brice ebe6015561 Fixes vertical clothoid, vertical circle, and horizontal cubic cases for alignment 2024-03-06 12:00:35 -08:00
Dirk Olbrich 95b5926353 ifcgeom, serializer: fix missing includes 2024-03-06 09:25:02 +01: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 77b56b6826 Fixes typo in IfcPointByDistanceExpression 2024-02-28 18:38:41 -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
Richard Brice abddb74bd9 Adds placeholder implementations for IfcXXXOrderPolynomialSpiral - there are some bugs, but the basic implementation framework is good. 2024-01-17 12:59:48 -08:00
Richard Brice a8b88b8ae1 Adds loop_to_piecewise_function_upgrade
This provides for a more uniform treatment of curves when mapping IfcOffsetCurveByDistances and IfcPointByDistanceExpression
2024-01-11 15:37:44 -08:00
Richard Brice 5815417198 Fixes documentation in comment 2024-01-11 15:36:17 -08:00
Thomas Krijnen ef929f9d30 Const ptr references and address some warnings 2023-12-18 13:51:12 +00:00
Richard Brice 662a4bb6e9 Fixes generated geometry based on evolving understanding of IFC 2023-12-13 16:17:10 -08:00
Richard Brice 7fef3efbeb Fixes horizontal alignment issues 2023-12-13 16:17:10 -08:00
Richard Brice 4b933812a7 Generalized calculation of spiral curve tangent vector 2023-12-07 08:01:31 -08:00
Richard Brice 9e32c0ea93 Fixes problem computing Axis vector for cant 2023-12-06 15:31:01 -08:00
Richard Brice 6c808c097e Merge branch 'IfcOpenShell:v0.8.0' into v0.8.0 2023-12-01 07:22:29 -08:00
Richard Brice 2126381a15 Adds conversion settings to control the granularity of points computed for a piecewise_function 2023-11-22 15:49:24 -08:00
Richard Brice 39c3cac05d Fixes bugs in segment reference curve geometry 2023-11-22 08:32:59 -08:00
Richard Brice 5f7e89a5f8 Implements IfcOffsetCurveByDistance mapping 2023-11-21 08:54:06 -08:00
Richard Brice 49d9245e29 Fixes problem computing tangent and normal vectors for Circle 2023-11-21 08:49:16 -08:00
Thomas Krijnen b52c5ab082 Don't emit empty results for representation and allow implicit items to
pass when using --plan
2023-11-21 14:41:31 +01:00
Richard Brice 49b3805859 Updates treatment of IfcLine to account for the fact that IfcLine.Orientation.DirectionRatios are generally normalized. 2023-11-20 11:15:35 -08:00
Richard Brice afb8375e70 Fixes problem with vertical curve slopes 2023-11-17 08:03:03 -08:00
Richard Brice f4ba3fe487 Still trying to figure out cant 2023-11-16 16:17:41 -08:00
Richard Brice f204135aa6 Fixing bugs 2023-11-15 07:21:19 -08:00
Thomas Krijnen 65e874c67f Drastic settings refactoring 2023-11-15 10:32:33 +01:00
Richard Brice 8303a04b4f A couple tweaks for IfcCurveSegment 2023-11-09 09:48:05 -08:00
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 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 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
Richard Brice 512b8b9e08 Mapping of vertical profiles with IfcGradientCurve 2023-10-27 08:04:12 -07:00