Commit Graph

60 Commits (5f04cf09e7beb29e538a69b660caa3cdeff08a7c)

Author SHA1 Message Date
Andor Goetzendorff f4fd5840b1 Encode filename using file system encoding instead of ASCII 2018-05-15 15:35:44 +02:00
Robert Spencer c036a3b840 Add pyassimp code generation script for materials
In the style of gen/structsgen.py, we construct a similar method for
keeping the constants in materials.py up to date.
2018-01-10 12:33:44 +02:00
Robert Spencer ce5b78f6c0 Remove check for 'assimp' in name of directories to be searched for library in python port 2018-01-06 15:17:29 +02:00
Unknown 12dbbd4ce9 Misc. typos
Some are doxy comments, some are just trivial source comment typos. 
Found using `codespell -q 3 --skip="./contrib" -I ../assimp-whitelist.txt`
whereby whitelist contained:
```
childs
iff
lod
nto
ot
whitespaces
```
2017-11-09 17:19:26 -05:00
Daeyun Shin bf9d319489
Update helper.py
Search for libassimp.so in LD_LIBRARY_PATH if available.
2017-10-31 15:43:39 -07:00
Mel Massadian 37f5619149 created a python3 version of the 3dviewer and fixed the / = float in py3 2017-08-23 20:02:58 +02:00
rodrigo figueroa 01a288ff35 Added support for python3
When using python3 and running any of the provided scripts I get:
NameError: name 'unicode' is not defined.  Python3 does not have unicode. Using try-except method helps to support python3
2017-07-20 22:48:07 -07:00
Séverin Lemaignan 4d37f90ea5 Revert "Installing assimp library as well"
This reverts commit 33bd5cfcfb.

Installing the assimp library from setup.py is *not* a good idea as
it will break every packaging effort.

Besides, the original commit relies on an hard-coded path to find the
library that may not exist.
2017-06-06 15:14:18 +01:00
Robert Spencer 28da8c643d Adds texture type enum to pyassimp
Keeping the same style of `postprocess.py`, this is a port of the aiTextureType enum in [`material.h`](https://github.com/assimp/assimp/blob/master/include/assimp/material.h).
2017-04-26 15:05:45 +02:00
Guillaume Bittoun 33bd5cfcfb Installing assimp library as well 2017-04-08 12:14:30 +02:00
Kim Kulling 1ca54c0b2f closes https://github.com/assimp/assimp/issues/1211: defensice handling
of utf-8 decode issues.
2017-03-23 17:11:52 +01:00
Séverin Lemaignan 9aee9d6966 [pyassimp] Look as well for the assimp library using std 64bit path 2016-12-15 16:49:44 +00:00
Michael Görner f1a984bd3b only check a library folder if it actually exists
otherwise this breaks for no reason if /usr/local/lib is missing.
2016-04-22 11:35:44 +02:00
Kim Kulling 001eede34c Merge pull request #847 from stevenjt/python-scene-export
Added ability to export scenes with PyAssimp
2016-04-03 17:43:05 +02:00
Steven Thompson 06e262f892 Added ability to export scenes with PyAssimp 2016-04-03 13:03:16 +01:00
Eric Engestrom 87e7cf00a2 Fix spelling mistakes 2016-04-03 01:38:00 +01:00
Steven Thompson 2c3bbe041a Set xrange to range for Python 3.0 and above 2016-03-27 20:12:22 +01:00
Alexander Gessler 709f19e5ab Merge pull request #664 from Tcll/master
Added auto-detection of numpy
2015-10-04 16:59:24 +02:00
Tcll 5ce968c67f Added auto-detection of numpy 2015-09-28 14:18:22 -04:00
Tcll 2e725c0dc5 Added auto-detection of numpy
If numpy is not installed, pyassimp returns lists to allow the user to manage the data type.
2015-09-28 14:15:06 -04:00
Kim Kulling 85c8d7b89b PyViewer: Add local path search path for ssimp lib. 2015-08-08 17:04:46 +02:00
Michael Dawson-Haggerty 25012f7b8a added list of supported formats, pulled from webpage and test/models 2015-01-27 22:53:31 -05:00
Michael Dawson-Haggerty 704e57db4e changed default postprocessing option to triangulate quad meshes 2015-01-27 22:47:05 -05:00
Oliver Nagy 3721b19a61 pyassimp/quicktest now runs without installing pyassimp first. 2014-11-23 15:42:11 +11:00
Oliver Nagy f12a0a3b1c Replaced 'xrange' by 'range' to maintain Python 3.x compatibility. 2014-11-22 16:24:32 +11:00
Michael Dawson-Haggerty 8d27a27445 fixed docstrings 2014-09-04 01:21:37 -04:00
Michael Dawson-Haggerty 7fff52bf86 cleaned up error message autoreplacement 2014-09-04 01:06:30 -04:00
Michael Dawson-Haggerty 5ae65987c0 added the ability to load from file objects with pyassimp.load, as opposed to only being able to load from paths 2014-09-04 01:04:00 -04:00
autosquid fd4f7f4572 for python binding to work on mac
add dylib to ext_whitelist for posix system
2014-03-11 00:34:49 +08:00
Michael Dawson-Haggerty f1e43f560a added additional search paths for dll on windows 2013-11-12 22:06:42 -05:00
Eximius e0935c7ec5 PyAssimp optimize: load Armadillo: 33.8s -> 6.7s 2013-11-03 08:53:58 +00:00
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 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
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
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 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 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