Commit Graph

3357 Commits (dec93efc92a6b34d8cc9e080381d6429c4b7f04b)

Author SHA1 Message Date
aramis_acg 36b3695a31 - improve symmetry between Assimp::Importer and Assimp::Exporter.
+ aiCopyScene -- a bit dysfunctional because we will also need getters and setters for all other scene components to avoid running into ownership & heap issues when users modify scenes.
# fix handling of postprocessing during exporting

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1061 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-08-04 08:53:59 +00:00
aramis_acg 665f73861e - move importer and postprocessing step construction chain to separate files to make them available to the exporter part.
+ introduce aiScene::mPrivate. This is a potentially breaking API change. The new member is added at the end of the structure though, so serious regressions are not to be expected.
+ add a mPreprocessing parameter to all Export API calls. Allow exporters to specify further PP steps to be executed prior to handing control to them. The entire export API now operates on a copy of the scene that the user passed in.
- mass refactoring: all constructors of BaseProcess/BaseImporter inherited classes are public now and Importer will perhaps feel a bit sad after having loft all of its friends.
# fix const correctness in SceneCombiner


git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1060 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-08-01 20:58:31 +00:00
aramis_acg 967e87d625 # ammendment to previous: take care for gcc.major > 4
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1059 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-28 21:53:52 +00:00
aramis_acg 4f5b36b850 # [3358562] disable the second set of LogFunctions<T>::LogXXX overloads, which cause trouble on Mac OSX with gcc 4.2 for reasons not totally comprehensible to me.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1058 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-28 12:23:39 +00:00
aramis_acg dc2bf5d6bd + add rudimentary Python3 version of PyAssimp. Conversion using 2to3 plus some manual tweaks.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1057 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-20 00:36:26 +00:00
aramis_acg c58480d608 + first version of OBJ exporter
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1056 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-19 21:41:59 +00:00
aramis_acg d29dde1646 # NoBoost: fix a critical issue in the foreach replacement. All local variables introduced by the loop header have longer, magic names now. This avoids unintended shadowing of other local variables.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1055 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-18 03:13:57 +00:00
aramis_acg 97ce1d2bcd # fix vc9 project file
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1054 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-18 03:06:03 +00:00
aramis_acg de0b632e15 - IFC: implement the SameSense flag for IfcCompositeCurveSegment
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1053 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-18 02:17:36 +00:00
aramis_acg 409eb6cee7 - IFC: IfcTrimmingCurve sampling code now supports trimming by points rather than by parameter values.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1052 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-18 01:13:40 +00:00
aramis_acg 56a5230d3a # IFC: improve IfcTrimmedCurve implementation and support wrap-over parameters for closed, conic curves.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1051 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-17 23:35:39 +00:00
aramis_acg 5f341dcf00 - update README and INSTALL, slight doc fixes.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1050 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-17 21:25:23 +00:00
aramis_acg 969c2ccf9f - PyAssimp: move structsgen.py script away from /scripts and place it in a sub-folder of port/PyAssimp. This is consistent with the way how SWIG-dependent bindings handle such files.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1049 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-17 01:55:58 +00:00
aramis_acg 00be2f920b - ff=unix for all Python scripts in ./scripts to avoid shebang trouble under *nix.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1048 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-17 01:14:13 +00:00
aramis_acg a84eead533 - IFC: update entity list, modify the script to take the new folder structure into account.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1047 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-17 01:12:01 +00:00
aramis_acg a7e43173db git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1046 67173fc5-114c-0410-ac8e-9d2fd5bffc1f 2011-07-17 01:09:56 +00:00
aramis_acg d6b557dcc0 - update revision number in header
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1045 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-16 21:16:25 +00:00
aramis_acg 0276a09a87 # Ifc: fix generation of wall openings, now no longer 'forgets' wall parts.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1043 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-15 21:51:33 +00:00
aramis_acg 47836d23e7 # fix vc10 compile warning
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1042 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-15 21:50:32 +00:00
kimmi b2c4963f72 Update : Add a hint for the source of the m3-data definition.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1041 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-15 11:15:10 +00:00
kimmi cd963608c6 Feature : Add first M3-format deta definitions and a prototype importer for M3-models. Many thanks to libm3 for their great work ( see http://code.google.com/p/libm3/ ).
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1040 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-15 11:13:42 +00:00
aramis_acg bc076cc60e - various documentation improvements. Remove viewer section, add list of third-party resources and fix some doxygen markup and also some wording errors.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1039 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-14 17:46:05 +00:00
aramis_acg 7ad99f3baf # lowercase include (mingw cross compile fix). Thanks to abma for the patch.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1038 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-14 16:59:18 +00:00
aramis_acg 211a6cb0e7 # fix small flaw in the docs for the deboning process
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1035 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-06-28 15:56:32 +00:00
aramis_acg 29676ce70f # Fix gcc compile error (namespace ambiguous)
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1034 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-06-14 16:46:33 +00:00
aramis_acg 81ad224f84 - IFC: Refactor source to simplify maintenance.
- IFC: rate all available representations by a simple ranking system and take the one that is easiest to load. This should avoid loading the same geometry twice. Also it might result in quality improvements when BRep geometry is avoided in favour of extrusion geometry.
# IFC: Various bugfixes related to geometry loading.


git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1033 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-06-14 15:58:22 +00:00
aramis_acg ffdb479411 + Blender: read specular hardness. Thanks to Marvin for the patch.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1032 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-06-09 15:10:54 +00:00
aramis_acg 3db25db8e2 # when compiling with MSVC's C compiler, (void)param won't be accepted, omit it at all to avoid trouble.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1031 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-06-09 14:43:28 +00:00
aramis_acg e479ca33d4 manual IFC merge, forgot some points
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1030 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-06-09 14:29:46 +00:00
aramis_acg 9edc0a9b8e merge with git://github.com/tonttu/assimp.git
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1029 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-06-09 14:29:32 +00:00
ulfjorensen 2de55ee880 Bugfix: apply transformation as well when filtering out empty proxy nodes in XFile imports. Thanks to Magnus Norddahl for the patch
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1028 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-06-08 12:25:03 +00:00
aramis_acg 323b9d8400 # make source UV index for tangent space computation configurable via the AI_CONFIG_PP_CT_TEXTURE_CHANNEL_INDEX option.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1027 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-06-02 14:02:30 +00:00
aramis_acg 2f4989a35d # include <memory> and <typeinfo>, which were missing if compiled with the boost workaround enabled
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1026 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-31 18:15:50 +00:00
aramis_acg 1aab7e4a5e # noboost.tuple: prefix access of nested, but dependent templates with template<> for ISO compliance
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1025 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-31 18:14:16 +00:00
aramis_acg 89b6c2b288 # make noboost`s BOOST_FOREACH work with const containers
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1024 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-31 18:13:13 +00:00
aramis_acg 68a10dd1b0 + add dummy implementation of make_shared to boost workaround (unlike the original, it does *not* offer any performance benefits).
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1023 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-31 17:38:22 +00:00
aramis_acg b9f14beb76 - IFC: use boost::make_shared to cut the number of allocations by 50%.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1022 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-31 17:37:17 +00:00
aramis_acg 326b11b72f # bugfix boost workaround, shared_ptr didn't offer a const operator*
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1021 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-31 17:35:17 +00:00
aramis_acg a4e371af4b # fic gcc compile error caused by a temporary beeing accidentially bound to a non-const reference
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1020 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-31 14:33:46 +00:00
aramis_acg 1e2dd3eefc - IFC: use smart pointers to keep STEP-SELECT entities in the converted output data structures. This allows us to free the original parameter tuples early as ownership of their members can be transferred. This cuts down memory overhead to 8x (assuming a typical x64 builds) and reduces loading time on average by ~5% as measured on my system.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1019 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-31 14:23:43 +00:00
aramis_acg 0db3f8b3f4 + add 3 test cubes to improve testing coverage of the x file format. The compressed cube is a test for the previous commit, r1012, which fixed a bug in the x loader.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1018 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-31 13:34:57 +00:00
aramis_acg 228be125cf # really fix false negative reading compressed x files. Silently ignore out-of-bounds indices.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1017 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-31 13:27:52 +00:00
aramis_acg 15565c4858 # IFC: fix potential crash during merging of polygon boundaries
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1016 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-30 21:04:11 +00:00
aramis_acg 23ea1ac97d # STEP: reduce memory overhead of STEP reader. A typical x64 build now has approx. 10x overhead (compared to the size of the file being read), as opposed to 20-40x that it had before.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1015 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-30 20:17:57 +00:00
aramis_acg bf7b1d3514 # IFC: track references only for the types for which we actually need reverse indices. On average, this results in a 10% reduction in memory usage and a 5% speed improvement.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1014 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-30 15:38:48 +00:00
aramis_acg af8533a0bf # IFC: add workaround to read malformed files that contain IFCSIUNIT elements with the first field not set, which is not allowed by the IFC2X3 specification.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1013 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-30 14:52:39 +00:00
aramis_acg ccd4a9d78d # fix include path to <unzip.h> for hand-maintained vc9 solution
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1012 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-30 14:41:57 +00:00
aramis_acg e7c9e4d5aa [3309083] Allow external unzip, and buildsys cleanup (many thanks to Rick Mattes for the patch).
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1011 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-30 14:13:33 +00:00
aramis_acg 799ae75d67 # Obj: add missing check for empty normals, which caused models with no or partial normal sets to fail in some cases.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1010 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-29 20:38:46 +00:00
aramis_acg d467b5bb27 # improve robustness of IFC loader: filter out duplicate points, adjacent colinear edges, silently ignore zero-vertex polygons. fix various small bugs and improve numeric stability of some code segments.
- workaround: silently drop very small nested polygon boundaries to avoid cases where a large polygon brep (i.e. a slab) has extremely holes that are so extremely small in comparison to the dimensions of the outer polygon that the resulting numeric accuracies make the triangulation fail. I guess the ultimate solution would be a delauney triangulator with extremely high numeric stability, however this is difficult to achieve.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1009 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-29 19:16:52 +00:00