Commit Graph

59 Commits

Author SHA1 Message Date
Thomas Krijnen ce91d296b6 dllimport/export #6926 2025-09-26 14:24:49 +02:00
krande 1cd32be2fc Refactor test_sweeps.py: remove _is_swept_shape, restructure test directories, update test fixtures, and adjust assertions for geometry validation. Extend sweep_along_curve constructor to support fixed reference direction. 2025-08-27 19:37:47 +02:00
krande d01bf9690d Add test and input for simple_sweep_2.ifc; extend constructor for sweep_along_curve to support fixed reference swept area solids
Includes `simple_sweep_2.ifc` test input, geometry validations in `test_sweeps.py`, and a new constructor for `sweep_along_curve` to handle directrix-based sweeps.
2025-08-27 12:11:02 +02:00
Kristoffer Andersen 5719c3db2b Merge branch 'v0.8.0' into feat/IfcFixedReferenceSweptAreaSolid 2025-08-26 14:13:53 +02:00
krande 115d3d4498 start work on improving support for IfcFixedReferenceSweptAreaSolid 2025-08-26 13:32:44 +02:00
Thomas Krijnen bb329affb8 settings: DeferProcessingFirstElement, MaxOffset, MaxOffsetDeviation, ApplyOffset; taxonomy: centroid funcs; iterator get_tasks + items() funcs; geom.map_shape() 2025-07-01 21:10:24 +02:00
Thomas Krijnen 439f9c14ce OcctNoCleanTriangulation CacheShapes PermissiveShapeReuse setting; Cgal conditional copy during triangulation; occt cheaper check for triangulation existance #6712 2025-05-18 22:14:22 +02:00
Richard Brice 7ffd2742d6 Fixes bug mapping geometry for IfcSectionedSolidHorizontal that was introduced in 26ba761 2025-02-22 16:11:10 -08:00
Kipre 4bee713455 Fix transform matrix computation in Axis2Placement3D 2025-01-29 15:37:59 +01:00
Richard Brice 26ba761c68 Refactors alignment geometry 2025-01-02 11:10:56 -08:00
csritter a8157e7dd6 Merge branch 'v0.8.0' into v0.8.0 2024-09-25 11:20:47 -03:00
Thomas Krijnen 1697e49e65 Merge branch 'v0.8.0' into fix-ifccircle-ifcellipse-processing 2024-09-12 20:18:57 +02:00
Andrej730 cb21f9bc07 taxonomy::cast - order upgrades in the same order as in taxonomy::dcast for consistency 2024-09-12 16:30:06 +05:00
Andrej730 f930897240 taxonomy::dcast - add missing curve_to_loop_upgrade 2024-09-12 16:30:05 +05:00
Thomas Krijnen 2545769f67 Add support for IfcSectionedSurface 2024-09-12 11:20:48 +02:00
Andrej730 005c17084b dispatch_with_upgrade to use only upgrade types for optimization 2024-09-11 19:42:47 +05:00
Andrej730 37315e941a taxonomy.h - move upgrades code to cpp 2024-09-11 15:53:04 +05:00
Richard Brice cc7171060f Decouples evaluation of a piecewise_function from the function itself (#5344) 2024-09-10 10:11:17 -07:00
Cristian Ritter 56d19039e3 always apply in diffuse color, if doens't have surface color
Signed-off-by: Cristian Ritter <cristian_ritter@hotmail.com>
2024-08-26 15:34:50 -03:00
csritter ae2933eea5 prevent a copy
Co-authored-by: Thomas Krijnen <t.krijnen@gmail.com>
2024-08-26 01:08:06 -03:00
Cristian Ritter 7d50491a99 checking if diffuse has value, if not, use surface
Signed-off-by: Cristian Ritter <cristian_ritter@hotmail.com>
2024-08-20 12:16:19 -03:00
Cristian Ritter 371b4b6079 removing unnecessary use_surface_color on calc_hash 2024-08-20 11:45:29 -03:00
Cristian Ritter cd3df94a4b add surface and use_surface_color on style class 2024-08-19 18:44:43 -03:00
Cristian Ritter b5a61753a5 Adding --surface-color in conversion settings to force the use of surface color instead of diffuse color. Issue #5075 2024-08-15 13:56:31 -03: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
Thomas Krijnen cf3d050423 Rename taxonomy kind enum accordingly 2024-07-03 20:04:52 +02:00
Thomas Krijnen d4efcd40f9 Advanced brep, sweeps and various fixes #4848 #4895 2024-07-03 14:36:35 +02:00
Thomas Krijnen fecca6a8b2 What a bad idea to let ellipse inherit from circle" 2024-06-28 16:19:43 +02:00
Thomas Krijnen 599ca56496 Mark piecewise_function as geom_item #4727 2024-06-27 09:33:04 +02:00
Thomas Krijnen 1299a8f512 Mark edge as geom_item 2024-06-26 21:21:47 +02:00
Thomas Krijnen 8da68f599b Move print() to header, distinguish properly between curve_sense and edge orientation, unwrap trimmed curves as edge bases, don't mutated cached edge in oriented edge processing, etc. #4895 2024-06-24 21:56:27 +02:00
Thomas Krijnen 0e42130e9d Taxonomy curve upgrades #4832 2024-06-18 20:18:39 +02:00
Thomas Krijnen 691fe549d7 taxonony::cast throws exceptions now on invalid casts 2024-06-18 13:52:42 +02:00
Richard Brice 579768c35f Fixes problem with cant values 2024-05-22 13:51:55 -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
Thomas Krijnen 6fdf46f151 Add back support for IfcSphere 2024-04-29 20:56:37 +02:00
luzpaz 1819a45e4c Fix various typos in src/ifcgeom* subdirs 2024-04-16 10:05:04 +02:00
Richard Brice 98ec4220eb Adds method to piecewise_function to evaluate over a range. 2024-04-06 10:40:22 -07:00
Thomas Krijnen bf1d2befd8 Address compiler warnings 2024-03-14 11:10:19 +01:00
Thomas Krijnen ca0488892c Add eigen constructur to point3 and direction3 2024-03-14 11:04:44 +01:00
Richard Brice f12c3aae09 Adds caching of loop upgraded to pwf to loop class 2024-01-15 15:52:26 -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
Thomas Krijnen ef929f9d30 Const ptr references and address some warnings 2023-12-18 13:51:12 +00:00
Thomas Krijnen c4326e557c Remove const 2023-12-15 14:31:40 +01:00
Thomas Krijnen 0cf5d1c968 #4084 debug iterator failure 2023-12-15 14:03:08 +01: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 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 528cf06a46 Adds support for IfcLinearPlacement 2023-10-27 08:04:17 -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