Commit Graph

44 Commits

Author SHA1 Message Date
Faule Socke
945231ba94 Now actually fixed the bug with the normals.
pyassimp returned a list instead of a numpy array when the normals were
empty. This also applies to texture coordinates and other stuff which is
explicitly converted in _finalize_mesh.
2013-07-29 01:24:22 +02:00
Faule Socke
43ff04a53b Fixed a bug in the bugfix -.- 2013-07-28 22:22:49 +02:00
Faule Socke
3c02d24bf0 Fixed a bug returning not all material properties when accessing them.
Also fixed another bug occouring when no normals are provided in sample.py (lists do not have a any() method).
2013-07-28 02:10:49 +02:00
Bill Roeske
2494608927 [pyassimp] Fix py3.3 + 64bits issues
64-bit Compatibility:

The first four characters of a String material property would be cut
off. A String's length is defined in structs.py as a c_size_t
variable, which is 8 bytes wide on 64-bit Python. However, when an
aiString is used as an aiMaterial property in C/C++, the length is
truncated down to a 4-byte value on 64-bit machines (see
MaterialSystem.cpp aiMaterial::AddProperty() for details). A new
struct was declared in structs.py (MaterialPropertyString) and used
in core._get_properties().

Python 3.3 Compatibility:

The built-in function hasattr() changed in Python 3.2 to not
trap exceptions, which means a NULL pointer ValueException now
escaped when checking if a pointer was valid (hasattr(obj,
'contents') in core.call_init()) (see
http://bugs.python.org/issue9666 for details). A new helper
function was defined that preserves the legacy functionality of
trapping the exceptions (helper.hasattr_silent()) and used
throughout the code as a replacement for hasattr().

String objects would import as "bytes" rather than as a
string. This was most noticeable in the key names for
material properties, where the trailing ' of a bytes object
would remain after it was converted to a string. The
solution was to call decode() on the bytes object using
utf-8 decoding. This applies to various parts of core.py.

Closes #35
2013-06-03 10:38:30 +02:00
Séverin Lemaignan
43dd6fb3bc [pyassimp] Check cmd line args in sample.py 2013-06-03 10:37:48 +02:00
Séverin Lemaignan
024bd4c470 [pyassimp] Handle diffuse/ambient values stored as vec3 instead of vec4 2013-06-03 10:22:39 +02:00
Séverin Lemaignan
da140f2a05 [pyassimp] Minor tuning in 3d_viewer.py 2013-03-30 14:35:50 +01:00
Séverin Lemaignan
fa7ff915c1 [pyassimp] Renamed the 3d for better clarity + added a short README 2013-03-30 14:35:21 +01:00
Séverin Lemaignan
3574b6973c [pyassimp] Make sure sample.py and quicktest.py work 2013-03-30 14:35:21 +01:00
Séverin Lemaignan
fb280d7cf5 [pyassimp] Make it easier to import pyassimp
'import pyassimp' (instead of 'from pyassimp import core') is now sufficient
2013-03-30 14:35:21 +01:00
Séverin Lemaignan
b00ee8b24a [pyassimp] Minor fixes to the simplified open_gl viwer 2013-03-30 14:35:21 +01:00
Séverin Lemaignan
bf7d39280e [pyassimp] Simplified and beautify simple_opengl_viewer.py
Since the new SDL based viewer is much better suited to interactive exploration, simplify
the basic OpenGL viewer to make it an easy introductive read.
2013-03-30 14:35:21 +01:00
Alexander Gessler
c50926b43b Merge pull request #10 from severin-lemaignan/for-upstream
[pyassimp] New sample application based on SDL/pygame + various fixes
2013-01-19 17:48:22 -08:00
Rodrigo Benenson
c883967735 Fixed pyassimp core.py 2012-11-29 19:07:56 +01:00
Rodrigo Benenson
24927ff4cc fixed sample.py 2012-11-29 19:06:26 +01:00
Séverin Lemaignan
6bcc5db350 [pyassimp] Minor formatting in README.md 2012-11-10 23:55:52 +01:00
Séverin Lemaignan
d3dbde02d6 [pyassimp] Simplified and beautify simple_opengl_viewer.py
Since the new SDL based viewer is much better suited to interactive exploration, simplify
the basic OpenGL viewer to make it an easy introductive read.
2012-11-10 23:55:39 +01:00
Séverin Lemaignan
2cdda51455 [pyassimp] Added a new pygame/sdl based OpenGL viewer
This viwer uses a shader-based pipeline and has working keyboard/mouse
controls.

Makes a starting point for 'modern' OpenGL apps.
2012-11-10 23:52:42 +01:00
Séverin Lemaignan
f1bf843b55 [pyassimp] Remove obsolete code 2012-11-10 23:02:11 +01:00
Séverin Lemaignan
76d2eb7057 [pyassimp] Rework material dict
- Normalize the names
- Do not create numpy arrays for the properties
2012-11-10 22:57:07 +01:00
Séverin Lemaignan
bfbcdfbae1 [pyassimp] Fixed transformations in bounding box computation 2012-11-10 22:44:15 +01:00
aramis_acg
6d3cedc0b1 - add missing files from the last commit
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1334 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-11-10 16:01:55 +00:00
aramis_acg
4286c72e60 merge severin-lemaignan:for-upstream from github. This is a full rewrite of pyassimp, rendering it much easier to use.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1332 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-11-09 11:39:34 +00:00
aramis_acg
6dc3bc1c88 # PyAssimp: fix data type for aiString::length. Thanks to Gellule for the patch.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1091 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-11-29 13:34:48 +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
1decdf999c + really add rudimentary test script to batch-load all test files using pyassimp
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@952 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-04-19 20:51:59 +00:00
aramis_acg
9350d0e1a6 - update pyassimp genstructs script to work with the latest headers, add rudimentary test script to batch-load all test files using pyassimp
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@951 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-04-19 20:48:33 +00:00
aramis_acg
8ef1e5b4ba Add README to PyAssimp. Mention install procedure and give a basic usage sample.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@566 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-03-02 15:15:09 +00:00
aramis_acg
9d2eacfdb2 Fix call to assimp.aiReleaseImport(), scene pointer was passed in incorrectly
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@565 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-03-02 14:49:35 +00:00
aramis_acg
cc489f30e7 Change pyAssimps library detection routine to work on Linux as well
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@564 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-03-02 13:48:17 +00:00
aramis_acg
722dc4a9c2 Fix PyAssimp complaining on 'builtin_function_or_method' object has no attribute '_init'. Thanks to pekuja for the patch!
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@552 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-02-25 20:11:57 +00:00
sueastside
b2ffa9dd1b Added ASSIMP_API to aiCreateQuaternionFromMatrix and aiDecomposeMatrix.
Added aiDecomposeMatrix to PyAssimp.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@410 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-04-27 15:43:01 +00:00
sueastside
55a3d845c9 Changed structs.py to export the original names of the C structs, not uppercase.
Totally rewrote pyassimp, removing all pyassimp classes, instead using python's dynamic nature to expand the ctypes structures to include safe array access and python style tuple access.
Updated helper.py and sample.py.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@406 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-04-25 21:12:53 +00:00
aramis_acg
760bcbbf69 Updating PyAssimp to the latest data structures. Many thanks to sueastside for the patch.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@402 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-04-23 20:58:16 +00:00
sebastianhempel
a4f2aab6c3 textures
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@162 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-23 13:11:30 +00:00
sebastianhempel
64c431b5eb materials
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@161 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-23 12:38:39 +00:00
sebastianhempel
0d5bb1c427 intelligent library search
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@155 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-19 18:06:04 +00:00
sebastianhempel
a79e9cf252 sample update
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@154 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-19 17:53:25 +00:00
sebastianhempel
02f1c9c9b9 bones
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@153 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-19 17:52:58 +00:00
sebastianhempel
398879779e searches assimp-library automatically
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@151 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-18 13:36:34 +00:00
sebastianhempel
b50b8b3f43 new helper module; faces
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@150 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-18 13:17:44 +00:00
sebastianhempel
d7bc843ae6 texture coordinates
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@149 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-18 12:45:03 +00:00
sebastianhempel
4b013dbeba basic setup for test-models and some docstrings.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@148 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-17 17:08:36 +00:00
sebastianhempel
4f5a880306 PyAssimp initial import.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@147 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-17 15:25:20 +00:00