- IFC: implement automatic conversion from polygons with holes to polygons that consist of only one piece and are thus applicable to triangulation by ear-cutting. This solves many of the broken windows that would fall victim to z-fighting in earlier revisions.

- IFC: reduce logging overhead
- Move parts of IFC and BLENDs logging code to a shared implementation.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@994 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
This commit is contained in:
aramis_acg
2011-05-09 18:00:55 +00:00
parent 6a9e0f57d4
commit c55509132b
7 changed files with 297 additions and 88 deletions

View File

@@ -52,7 +52,6 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include "BlenderModifier.h"
#include "StreamReader.h"
#include "TinyFormatter.h"
#include "MemoryIOWrapper.h"
// zlib is needed for compressed blend files
@@ -68,7 +67,7 @@ using namespace Assimp;
using namespace Assimp::Blender;
using namespace Assimp::Formatter;
const std::string LogFunctions<BlenderImporter>::log_prefix = "BLEND: ";
static const aiLoaderDesc blenderDesc = {
"Blender 3D Importer \nhttp://www.blender3d.org",
"Assimp Team",
@@ -976,30 +975,5 @@ aiNode* BlenderImporter::ConvertNode(const Scene& in, const Object* obj, Convers
return node.dismiss();
}
// ------------------------------------------------------------------------------------------------
/*static*/ void BlenderImporter::ThrowException(const std::string& msg)
{
throw DeadlyImportError("BLEND: "+msg);
}
// ------------------------------------------------------------------------------------------------
/*static*/ void BlenderImporter::LogWarn(const Formatter::format& message) {
DefaultLogger::get()->warn(std::string("BLEND: ")+=message);
}
// ------------------------------------------------------------------------------------------------
/*static*/ void BlenderImporter::LogError(const Formatter::format& message) {
DefaultLogger::get()->error(std::string("BLEND: ")+=message);
}
// ------------------------------------------------------------------------------------------------
/*static*/ void BlenderImporter::LogInfo(const Formatter::format& message) {
DefaultLogger::get()->info(std::string("BLEND: ")+=message);
}
// ------------------------------------------------------------------------------------------------
/*static*/ void BlenderImporter::LogDebug(const Formatter::format& message) {
DefaultLogger::get()->debug(std::string("BLEND: ")+=message);
}
#endif