Andrej730
2155e3206f
logger: use Logger* instead of Logger& to propagate signature using swig
...
See the comment in IfcLogger.h explaining this.
2026-07-16 17:28:24 +05:00
Petru Conduraru
7322263a5e
GltfSerializer: clamp roughnessFactor into the valid glTF range #8073
...
roughnessFactor was computed as 1/specularity. An IfcSpecularExponent of
0 produced infinity, which nlohmann::json serialises as null and makes
the glTF invalid; exponents below 1 produced values above 1, which glTF
also forbids. Map exponents <= 1 to full roughness and keep 1/exponent
above that, so the factor always lands in [0, 1].
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-06 13:33:47 +02:00
Thomas Krijnen
3136c74c2f
Pass logger to proj callback
2026-06-11 21:57:42 +02: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
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
9e9d664511
.glb --separate-z-up-node option
2025-11-17 18:26:00 +01:00
Thomas Krijnen
d6daa64c48
Support --element-hierarchy in .glb output
2025-11-17 14:05:59 +01:00
Andrej730
babf95785c
Move IFCOPENSHELL_VERSION definition from IfcParse.h
...
To prevent recompiling all files that have IfcParse.h include and improve caching.
2025-09-30 19:17:46 +05:00
skemaikin
21a4db7823
serialize roughnessFactor
...
add roughnessFactor for gltf serialization
2025-06-29 14:24:52 +02:00
Thomas Krijnen
5510fb1e3c
Add constexpr
2025-02-24 13:30:45 +01:00
Thomas Krijnen
8bba25497b
Add material name in gltF
2024-12-07 16:36:40 +01:00
csritter
2b8124071a
Merge branch 'v0.8.0' into v0.8.0
2024-08-26 10:26:10 -03:00
Thomas Krijnen
d80bcd1a94
Unify variant storage ( #5118 )
2024-08-23 20:29:07 +02: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
Thomas Krijnen
c01263d721
shared_ptr styles all over #4833
2024-06-10 20:13:12 +02:00
Thomas Krijnen
f504053b27
Fixes after gltf ECEF merge
2024-04-16 11:04:21 +02:00
Thomas Krijnen
2eecfd6422
Option to write Earth-Centered Earth-Fixed glTF
2024-04-16 10:55:54 +02:00
Chetan
76708dd8ce
Create constants ELEMENT_ARRAY_BUFFER and ARRAY_BUFFER to allow for more descriptive bufferview construction. Change the bufferViewId variable from a static variable to a member variable because python instances of IfcOpenShell can have multiple serializers open at any given time. This commit also includes some minor code reformatting and code comments explaining the changes done. Finally integer constants GLB_FILE_HEAER, GLB_JSON_HEADER, GLB_BINARY_CHUNK_HEADER were added to make the glb file header creation more descriptive
2024-04-16 10:26:48 +02:00
Chetan
f4cce9878f
Give each accessor its own buffer view to improve the memory and rendering efficiency of the glb file
2024-04-16 10:25:02 +02:00
Chetan
0ef14bad6f
When creating a GLTF file, make the material double sided to fix a bug where some surfaces were transparent. This will allow surfaces created from a mesh to be be viewed from all angles regardless of the shape of the mesh or the directions of the normals.
2024-04-16 10:10:50 +02:00
Thomas Krijnen
65e874c67f
Drastic settings refactoring
2023-11-15 10:32:33 +01:00
Thomas Krijnen
fa73de97b0
Option to specify algorithm for --exterior-only
2023-10-06 13:27:47 +02:00
Thomas Krijnen
65a5646bf0
Major update: taxonomy shared pointers, collection type safety, work towards hashing
2023-07-27 16:42:06 +08:00
Thomas Krijnen
c78b2893de
Proceed with merge
2023-03-21 20:15:01 +01:00
Thomas Krijnen
bdc6fcb66f
#1803 Use abstract GeometrySerializer as cache to eliminate cyclic dependencies
2021-10-18 11:38:01 +02:00
Thomas Krijnen
eeaf04c6ea
Remove templates on iterator and element
2021-07-11 15:00:59 +02:00
Thomas Krijnen
f032378ca7
no double/float parametrization anymore
2021-07-11 11:03:35 +02:00
Thomas Krijnen
603cf011c3
Implement LINE primitives in glb exporter #864
2020-06-07 16:39:23 +02:00
Thomas Krijnen
b0b844ea5a
Provide node names in gltf serializer
2019-06-07 10:38:52 +02:00
Thomas Krijnen
8ee86f9968
Clean up glb tempfiles in case of error
2019-06-04 17:03:58 +02:00
Thomas Krijnen
2590bd01d5
Fix gltf max accessor meta-data
2019-06-04 16:55:19 +02:00
Thomas Krijnen
bcf8cadc30
Correct Y-UP transform in gltf serializer
2019-05-21 18:02:10 +02:00
Thomas Krijnen
f3a7a6594a
Small gcc fixes
2019-05-08 13:46:21 +02:00
Thomas Krijnen
3023e084a6
Initial implementation of a direct binary glTF serializer
2019-05-07 17:06:45 +02:00