Thomas Krijnen
7ae6bf4374
Rename geometry and serializer files
...
Apply the rename manifest, normalize serializer filenames to the classes they define, and update includes and CMake source lists.
Generated with the assistance of an AI coding tool.
2026-08-08 14:20:05 +02:00
Thomas Krijnen
02481b3247
Wrap more classes into ifcopenshell:: namespace
2026-08-08 13:58:39 +02:00
Thomas Krijnen
af58eaf79f
Last minute refactoring
2026-08-08 07:42:45 +02:00
Thomas Krijnen
7fc2d9a998
Merge remote-tracking branch 'origin/v0.8.0' into ifcviewer-wgpu
2026-07-09 13:21:39 +02:00
Bruno Postle
78697582f7
Add missing standard library includes for self-sufficient headers
...
Fixes builds with newer GCC/libstdc++ that no longer provide <cstdint>,
<cstring>, <cfloat>, <memory>, <algorithm> etc. transitively. Also
disambiguates visit<> calls in taxonomy.h with the full namespace and
casts the character value in IfcCharacterDecoder to uint32_t to silence
ambiguous overload warnings.
2026-06-11 18:41:07 +02:00
Bruno Postle
bd264f1d85
Add missing standard library includes for self-sufficient headers
...
Fixes builds with newer GCC/libstdc++ that no longer provide <cstdint>,
<cstring>, <cfloat>, <memory>, <algorithm> etc. transitively. Also
disambiguates visit<> calls in taxonomy.h with the full namespace and
casts the character value in IfcCharacterDecoder to uint32_t to silence
ambiguous overload warnings.
2026-06-05 08:54:27 +02:00
Thomas Krijnen
a07f56db6f
Restructure and rename
2026-03-31 15:32:36 +02:00
Richard Brice
e282a18474
Fixes crash in taxonomy::loft::print_impl when axis == nullptr
2026-03-08 09:55:47 -07:00
Thomas Krijnen
0469a9528b
use basic casts to prevent needless item upgrades #7738
2026-03-06 16:34:12 +01:00
Richard Brice
df7318973d
Adds support for IfcOpenCrossProfileDef and branching with IfcSectionedSurface
2026-01-14 13:28:07 -08:00
Thomas Krijnen
7098beb819
Work towards v1.0 data model with encapsulated weak_ptr as basis for instances
2026-01-05 21:42:01 +01:00
Thomas Krijnen
f09ca658f1
Initial investigation into lofting open profile with tags
2025-12-02 16:34:24 +01:00
Thomas Krijnen
bd57cc8735
Move sweep directrix closer to origin #7408
2025-11-30 09:56:27 +01:00
Osyotr
066326ab3b
Fix warning C4275
...
It's not enough to disable this warning by adding /wd4257 at build time because it's triggered when the library is consumed.
2025-10-03 18:12:56 +02:00
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