Commit: e7301a1e20931f2a380d90575b8710e174cf518e
Author: Kévin Dietrich
Date: Sat Jun 11 13:25:12 2016 +0200
Branches: alembic_basic_io
https://developer.blender.org/rBe7301a1e20931f2a380d90575b8710e174cf518e
Cleanup: move some utility methods out of the AbcExporter class.
===================================================================
M source/blender/alembic/intern/abc_exporter.cc
M source/blender/alembic/intern/abc_exporter.h
===================================================================
diff --git a/source/blender/alembic/intern/abc_exporter.cc
b/source/blender/alembic/intern/abc_exporter.cc
index d9e6e31..e19c260 100644
--- a/source/blender/alembic/intern/abc_exporter.cc
+++ b/source/blender/alembic/intern/abc_exporter.cc
@@ -61,6 +61,40 @@ extern "C" {
using Alembic::Abc::TimeSamplingPtr;
using Alembic::Abc::OBox3dProperty;
+/* **************************************************************************
*/
+
+static bool object_is_smoke_sim(Object *ob)
+{
+ ModifierData *md = modifiers_findByType(ob, eModifierType_Smoke);
+
+ if (md) {
+ SmokeModifierData *smd = reinterpret_cast<SmokeModifierData
*>(md);
+ return (smd->type == MOD_SMOKE_TYPE_DOMAIN);
+ }
+
+ return false;
+}
+
+static bool object_is_shape(Object *ob)
+{
+ switch (ob->type) {
+ case OB_MESH:
+ if (object_is_smoke_sim(ob)) {
+ return false;
+ }
+
+ return true;
+ break;
+ case OB_SURF:
+ case OB_CAMERA:
+ return true;
+ default:
+ return false;
+ }
+}
+
+/* **************************************************************************
*/
+
AbcExporter::AbcExporter(Scene *scene, const char *filename, ExportSettings
&settings)
: m_settings(settings)
, m_filename(filename)
@@ -285,7 +319,7 @@ void AbcExporter::createTransformWritersFlat()
while (base) {
Object *ob = base->object;
- if (m_settings.exportObject(ob) && objectIsShape(ob)) {
+ if (m_settings.exportObject(ob) && object_is_shape(ob)) {
std::string name = get_id_name(ob);
m_xforms[name] = new AbcTransformWriter(ob,
m_archive.getTop(), 0, m_trans_sampling_index, m_settings);
}
@@ -395,7 +429,7 @@ void AbcExporter::exploreObject(EvaluationContext
*eval_ctx, Object *ob, Object
void AbcExporter::createShapeWriter(Object *ob, Object *dupliObParent)
{
- if (!objectIsShape(ob)) {
+ if (!object_is_shape(ob)) {
return;
}
@@ -523,33 +557,3 @@ void AbcExporter::setCurrentFrame(Main *bmain, double t)
m_scene->r.subframe = t - m_scene->r.cfra;
BKE_scene_update_for_newframe(bmain->eval_ctx, bmain, m_scene,
m_scene->lay);
}
-
-bool AbcExporter::objectIsShape(Object *ob)
-{
- switch(ob->type) {
- case OB_MESH:
- if (objectIsSmokeSim(ob)) {
- return false;
- }
-
- return true;
- break;
- case OB_SURF:
- case OB_CAMERA:
- return true;
- default:
- return false;
- }
-}
-
-bool AbcExporter::objectIsSmokeSim(Object *ob)
-{
- ModifierData *md = modifiers_findByType(ob, eModifierType_Smoke);
-
- if (md) {
- SmokeModifierData *smd = reinterpret_cast<SmokeModifierData
*>(md);
- return (smd->type == MOD_SMOKE_TYPE_DOMAIN);
- }
-
- return false;
-}
diff --git a/source/blender/alembic/intern/abc_exporter.h
b/source/blender/alembic/intern/abc_exporter.h
index ef7e998..44e9e68 100644
--- a/source/blender/alembic/intern/abc_exporter.h
+++ b/source/blender/alembic/intern/abc_exporter.h
@@ -66,8 +66,5 @@ private:
AbcTransformWriter *getXForm(const std::string &name);
- bool objectIsShape(Object *ob);
- bool objectIsSmokeSim(Object *ob);
-
void setCurrentFrame(Main *bmain, double t);
};
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs