Commit Graph

75 Commits

Author SHA1 Message Date
Kim Kulling
59bc03d931 X3D: Fix invalid vector::back usage (#6283)
* X3D: Fix invalid vector::back usage
2025-07-25 15:01:16 +02:00
krishty
55e6359436 More constexpr (#6066)
Co-authored-by: Krishty <krishty@krishty.com>
Co-authored-by: Kim Kulling <kimkulling@users.noreply.github.com>
2025-03-27 15:08:21 +01:00
krishty
88959b2be7 Fix Whitespace (#6063)
* Fix Whitespace

No functional changes. This commit removes trailing spaces, undesired line breaks, and formatting screwups.

* Remove more useless line breaks in license (500 out of 630 license copies do NOT use double line breaks here)

---------

Co-authored-by: Krishty <krishty@krishty.com>
Co-authored-by: Kim Kulling <kimkulling@users.noreply.github.com>
2025-03-26 00:12:55 +01:00
Kim Kulling
45898eee55 Refactorings: glTF cleanups (#6028) 2025-03-05 21:37:47 +01:00
Steve M
69558d8889 Introduce VRML format (.wrl and .x3dv) 3D model support (#5857)
- Introduce VRML format (.wrl and .x3dv) 3D model support
- Add samples
---------

Co-authored-by: Steve M <praktique-tellypresence@yahoo.com>
Co-authored-by: Kim Kulling <kimkulling@users.noreply.github.com>
2024-12-30 11:56:18 +01:00
Kim Kulling
01231d0e60 Add 2024 to copyright infos (#5475) 2024-02-23 22:30:05 +01:00
Andre Schulz
9d71a275c3 X3D: Don't convert IndexedLineSet polylines with > 2 indices to triangles/polygons
Currently, when the coordIndex attribute of an IndexedLineSet contains a
polyline with > 2 indices, X3DGeoHelper::coordIdx_str2faces_arr() will
incorrectly determine the primitive type to be aiPrimitiveType_TRIANGLE or
aiPrimitiveType_POLYGON instead of aiPrimitiveType_LINE.

To fix this, this commit adds functions to explicitly handle an IndexedLineSet.

Fixes #3101
2024-01-09 20:55:51 +01:00
Kim Kulling
1243325f10 Merge branch 'master' into kimkulling/refactoring_geoutils 2023-05-04 21:10:00 +02:00
Jackie9527
cabf3a5d17 Fix warning related to unreachable-code-return.
Signed-off-by: Jackie9527 <80555200+Jackie9527@users.noreply.github.com>
2023-04-29 00:30:21 +08:00
Kim Kulling
5d841ec9a5 Refactoring: Cleanup post-processing steps. 2023-04-16 18:20:14 +02:00
Jackie9527
87c309566f Fix warning related to missing-noreturn.
Signed-off-by: Jackie9527 <80555200+Jackie9527@users.noreply.github.com>
2023-04-01 18:46:12 +08:00
Kim Kulling
b31c04e37c Merge branch 'master' into fix-msvc-emplace-warnings 2023-01-23 21:37:41 +01:00
Kim Kulling
f830d7998e Merge branch 'master' into clean-up-ctors-dtors 2023-01-23 21:21:34 +01:00
Krishty
72f360710a Fix MSVC Warnings With “emplace_back()”
Several places in the code call `std::vector<aiVector3D>.emplace_back(0, 0, 0)`. The constructor of `aiVector3D` actually expects arguments of the type `ai_real`, (alias of `float` if compiling without `ASSIMP_DOUBLE_PRECISION`) but the literal `0` is of type `int`.

`emplace_back()` does support promotion, but `int` to `float` is a potentially lossy conversion. tl;dr: On warning level 4, MSVC spits out a very deeply nested `warning C4244: 'argument': conversion from '_Ty' to 'TReal', possible loss of data with _Ty=int and TReal=ai_real`.
2023-01-18 00:08:38 +01:00
Krishty
36305cf987 Tidy Up Constructors and Destructors
This commit does not add or remove c’tors or d’tors, so it is *not* ABI-breaking.

If a c’tor/d’tor does nothing else than the default behavior, this commit replaces it with “= default”.

If an initializer list entry does nothing else than the default behavior, this commit removes it. First and foremost, remove default c’tor calls of base classes (always called by the compiler if no other base c’tor is explicitly called) and c’tor calls of members with complex types (e.g. “std::vector”).

In a few instances, user-defined copy c’tors / move c’tors / assignment operators / move assignment operators were replaced with “= default”, too. I only did this if I had a clear understanding of what’s going on.
2023-01-16 21:47:11 +01:00
Krishty
3d3e856925 Trim Trailing Whitespace 2023-01-16 09:12:35 +01:00
Aaron Gokaslan
ccfb175460 Apply various clang-tidy checks for smartprs and modern C++ types 2022-11-08 11:03:55 -05:00
Aaron Gokaslan
e3b01e10db apply fixes to more headers 2022-09-01 12:28:45 -04:00
Kim Kulling
2b30b7e062 Merge branch 'master' into skylion007/modernize-use-emplace 2022-08-24 11:48:30 +02:00
Kim Kulling
659195d852 Fix the fixme
- Based on the implementation in top of the last one I guess I know how to fix that.
- Replacing push_back by emplace_back
2022-08-24 11:17:10 +02:00
Turo Lamminen
0d8723a3eb Add FIXME comment 2022-08-24 10:43:40 +03:00
Turo Lamminen
654ae3af4e Fix out of bounds access in X3D loader 2022-08-24 10:42:01 +03:00
Aaron Gokaslan
27edb43600 Apply modernize-use-emplace clang-tidy rule 2022-08-23 11:41:49 -04:00
Turo Lamminen
90d1464405 Remove set but unused variables 2022-08-17 11:42:32 +03:00
Aaron Gokaslan
787fcc160a Clang-Tidy performance fixes 2022-05-11 14:03:45 -04:00
Kim Kulling
50c7301a38 Update copyrights 2022-01-10 21:13:43 +01:00
Kim Kulling
776130534b Fix nullptr-dereferencing
- Fix a possible nullptr-exception.
2022-01-06 22:35:32 +01:00
sssaoi
d7bf8d6e07 Fix compile error when ASSIMP_BUILD_NO_X3D_IMPORTER is define. 2021-12-18 14:50:22 +09:00
Kim Kulling
cb657e4c13 Use correct XmlParser-methods and add some missing casts 2021-12-13 18:06:23 +01:00
IOhannes m zmölnig
0e2ac2a91c X3D: simplistic attempt to avoid crashes due to nullptr access
Related: https://github.com/assimp/assimp/issues/4201

while the crashes go away, i'm not sure whether this is the correct fix.
also, afaict the X3D importer produces wrong results anyhow
2021-12-01 12:21:29 +01:00
IOhannes m zmölnig
c8cdf3009e X3D: replace 'here' debugging printout by an assertion.
if mNodeElementCur is NULL, we get a crash anyhow...
2021-12-01 12:19:19 +01:00
IOhannes m zmölnig
23d7811276 X3D: consistent initialization with nullptr 2021-12-01 11:35:06 +01:00
IOhannes m zmölnig
836963428e Fix file-extension check for X3D-files
using the pre-existing and well-tested GetExtension() (which happens
to also normalize the extension), rather than attempting our own
buggy one...

Closes: https://github.com/assimp/assimp/issues/4177
2021-12-01 11:17:42 +01:00
Kim Kulling
952f0a53c9 Try to fix a leak 2021-11-11 19:06:25 +01:00
Kim Kulling
a31c979abc Use helloworld as X3D-Testcase 2021-11-10 20:40:05 +01:00
Kim Kulling
8ed18621db Fixes 2021-11-10 20:37:27 +01:00
Kim Kulling
791cb195be Merge branch 'master' into x3d_pugi_migration_artenuvielle 2021-10-20 21:14:43 +02:00
IOhannes m zmölnig
3b8126d26a Fix spelling mistake 2021-10-08 08:48:01 +02:00
René Martin
e92177cb99 changed use and def attribute check for x3d importer to upper case
This is how it is specified in the standard.
2021-09-17 14:24:57 +02:00
Kim Kulling
d0f7200196 Update X3DImporter_Geometry3D.cpp 2021-09-16 21:01:44 +02:00
René Martin
a8a6aa2bd8 fixed some compiling issues 2021-09-15 14:49:46 +02:00
René Martin
3f6a371b64 migrated x3d importer to pugixml reader 2021-09-12 11:37:33 +02:00
René Martin
3001d88172 Merge branch 'master' into x3d_pugi_migration 2021-09-07 15:04:08 +02:00
Krishty
758116b083 removed trailing spaces and tabs from source and text
This commit ignores the “contrib” folder in order to prevent merge conflicts in dependencies, should these be updated via git.
2021-07-29 13:28:51 +02:00
Aaron Gokaslan
b17c2f29e9 Replace noexcept with proper macro 2021-06-22 12:44:36 -04:00
Aaron Gokaslan
94c3abd841 Apply various performance fixes from clang-tidy 2021-06-22 12:27:15 -04:00
Kim Kulling
ebb9b1b2af Next iteration 2021-06-10 23:36:07 +02:00
Kim Kulling
d600b45cd2 Merge branch 'x3d_pugi_migration' of https://github.com/assimp/assimp into x3d_pugi_migration 2021-06-03 22:21:10 +02:00
Kim Kulling
3a32612b71 Add skipping of unused nodes. 2021-06-03 20:55:31 +02:00
Kim Kulling
8cae8c5461 Fix static code analysis findings 2021-05-07 11:52:16 +02:00