Commit: 8547816ca2f31fdfab6f95dfff5dd50f179ba6c1
Author: Kévin Dietrich
Date:   Mon Jun 20 18:45:08 2016 +0200
Branches: alembic_basic_io
https://developer.blender.org/rB8547816ca2f31fdfab6f95dfff5dd50f179ba6c1

Remove custom ID properties writing code for now.

===================================================================

M       source/blender/alembic/intern/abc_camera.cc
M       source/blender/alembic/intern/abc_exporter.cc
M       source/blender/alembic/intern/abc_mesh.cc
M       source/blender/alembic/intern/abc_object.cc
M       source/blender/alembic/intern/abc_object.h
M       source/blender/alembic/intern/abc_transform.cc

===================================================================

diff --git a/source/blender/alembic/intern/abc_camera.cc 
b/source/blender/alembic/intern/abc_camera.cc
index 5928777..dcd4788 100644
--- a/source/blender/alembic/intern/abc_camera.cc
+++ b/source/blender/alembic/intern/abc_camera.cc
@@ -66,14 +66,6 @@ AbcCameraWriter::AbcCameraWriter(Scene *scene,
 
 void AbcCameraWriter::do_write()
 {
-       if (m_first_frame) {
-               ID *id = static_cast<ID *>(m_object->data);
-
-               if (hasProperties(id)) {
-                       writeProperties(id, 
m_camera_schema.getUserProperties(), true);
-               }
-       }
-
        Camera *cam = static_cast<Camera *>(m_object->data);
 
        m_stereo_distance.set(cam->stereo.convergence_distance);
diff --git a/source/blender/alembic/intern/abc_exporter.cc 
b/source/blender/alembic/intern/abc_exporter.cc
index e7eb0c1..16ab176 100644
--- a/source/blender/alembic/intern/abc_exporter.cc
+++ b/source/blender/alembic/intern/abc_exporter.cc
@@ -458,36 +458,6 @@ void AbcExporter::createShapeWriter(Object *ob, Object 
*dupliObParent)
                return;
        }
 
-       int enable_hair = true;
-       int enable_hair_child = true;
-       int enable_geo = true;
-
-       ID *id = reinterpret_cast<ID *>(ob);
-       IDProperty *xport_props = IDP_GetProperties(id, 0);
-
-       /* Check for special export object flags. */
-       if (xport_props) {
-               IDProperty *enable_prop = IDP_GetPropertyFromGroup(xport_props, 
"abc_hair");
-               if (enable_prop) {
-                       enable_hair = IDP_Int(enable_prop);
-               }
-
-               enable_prop = IDP_GetPropertyFromGroup(xport_props, "abc_geo");
-               if (enable_prop) {
-                       if (IDP_Int(enable_prop) == 2) {
-                               enable_geo = false;
-                       }
-                       else {
-                               enable_geo = IDP_Int(enable_prop);
-                       }
-               }
-
-               enable_prop = IDP_GetPropertyFromGroup(xport_props, 
"abc_hair_child");
-               if (enable_prop) {
-                       enable_hair_child = IDP_Int(enable_prop);
-               }
-       }
-
        ParticleSystem *psys = static_cast<ParticleSystem 
*>(ob->particlesystem.first);
 
        for (; psys; psys = psys->next) {
@@ -495,8 +465,8 @@ void AbcExporter::createShapeWriter(Object *ob, Object 
*dupliObParent)
                        continue;
                }
 
-               if ((psys->part->type == PART_HAIR) && enable_hair) {
-                       m_settings.export_child_hairs = enable_hair_child;
+               if (psys->part->type == PART_HAIR) {
+                       m_settings.export_child_hairs = true;
                        m_shapes.push_back(new AbcHairWriter(m_scene, ob, 
xform, m_shape_sampling_index, m_settings, psys));
                }
                else if (psys->part->type == PART_EMITTER) {
@@ -507,30 +477,24 @@ void AbcExporter::createShapeWriter(Object *ob, Object 
*dupliObParent)
        switch(ob->type) {
                case OB_MESH:
                {
-                       if (enable_geo) {
-                               Mesh *me = static_cast<Mesh *>(ob->data);
-
-                               if (!me || me->totvert == 0) {
-                                       return;
-                               }
+                       Mesh *me = static_cast<Mesh *>(ob->data);
 
-                               m_shapes.push_back(new AbcMeshWriter(m_scene, 
ob, xform, m_shape_sampling_index, m_settings));
+                       if (!me || me->totvert == 0) {
+                               return;
                        }
 
+                       m_shapes.push_back(new AbcMeshWriter(m_scene, ob, 
xform, m_shape_sampling_index, m_settings));
                        break;
                }
                case OB_SURF:
                {
-                       if (enable_geo) {
-                               Curve *cu = static_cast<Curve *>(ob->data);
-
-                               if (!cu) {
-                                       return;
-                               }
+                       Curve *cu = static_cast<Curve *>(ob->data);
 
-                               m_shapes.push_back(new AbcNurbsWriter(m_scene, 
ob, xform, m_shape_sampling_index, m_settings));
+                       if (!cu) {
+                               return;
                        }
 
+                       m_shapes.push_back(new AbcNurbsWriter(m_scene, ob, 
xform, m_shape_sampling_index, m_settings));
                        break;
                }
                case OB_CAMERA:
diff --git a/source/blender/alembic/intern/abc_mesh.cc 
b/source/blender/alembic/intern/abc_mesh.cc
index 38fb02d..6b9ca23 100644
--- a/source/blender/alembic/intern/abc_mesh.cc
+++ b/source/blender/alembic/intern/abc_mesh.cc
@@ -488,17 +488,6 @@ void AbcMeshWriter::writeCommonData(DerivedMesh *dm, 
Schema &schema)
                samp.setFaces(Int32ArraySample(it->second));
                face_set.getSchema().set(samp);
        }
-
-       if (hasProperties(reinterpret_cast<ID *>(m_object->data))) {
-               if (m_settings.export_props_as_geo_params) {
-                       writeProperties(reinterpret_cast<ID *>(m_object->data),
-                                       schema.getArbGeomParams(), false);
-               }
-               else {
-                       writeProperties(reinterpret_cast<ID *>(m_object->data),
-                                       schema.getUserProperties(), true);
-               }
-       }
 }
 
 DerivedMesh *AbcMeshWriter::getFinalMesh()
diff --git a/source/blender/alembic/intern/abc_object.cc 
b/source/blender/alembic/intern/abc_object.cc
index 5b9c093..1eabf91 100644
--- a/source/blender/alembic/intern/abc_object.cc
+++ b/source/blender/alembic/intern/abc_object.cc
@@ -113,229 +113,6 @@ void AbcObjectWriter::write()
        m_first_frame = false;
 }
 
-bool AbcObjectWriter::hasProperties(ID *id)
-{
-       IDProperty *idgroup = IDP_GetProperties(id, false);
-       getAllProperties(idgroup, m_props, "");
-       return !m_props.empty();
-}
-
-void AbcObjectWriter::writeProperties(ID *id, const OCompoundProperty &props, 
bool writeAsUserData)
-{
-       for (int i = 0, e = m_props.size(); i < e; ++i) {
-               if (props.getPropertyHeader(m_props[i].first)){
-                       continue;
-               }
-
-               if (writeAsUserData) {
-                       writeProperty(m_props[i].second, m_props[i].first, 
props);
-               }
-               else {
-                       writeGeomProperty(m_props[i].second, m_props[i].first, 
props);
-               }
-       }
-}
-
-void AbcObjectWriter::getAllProperties(IDProperty *group,
-                                       std::vector<std::pair<std::string, 
IDProperty *> > &allProps,
-                                       const std::string &parent)
-{
-       if (!group) {
-               return;
-       }
-
-       const char *separator = ".";
-
-       IDProperty *prop = static_cast<IDProperty *>(group->data.group.first);
-
-       while (prop) {
-               switch (prop->type) {
-                       case IDP_STRING:
-                       case IDP_INT:
-                       case IDP_FLOAT:
-                       case IDP_DOUBLE:
-                       {
-                               std::string name(parent);
-
-                               if (!name.empty()) {
-                                       name.append(separator);
-                               }
-
-                               name.append(prop->name);
-                               allProps.push_back(std::make_pair(name, prop));
-
-                               break;
-                       }
-                       case IDP_GROUP:
-                       {
-                               /* ignore ui properties */
-                               if (STREQ("_RNA_UI", prop->name)) {
-                                       std::string name(parent);
-
-                                       if (!name.empty()) {
-                                               name.append(separator);
-                                       }
-
-                                       name.append(prop->name);
-                                       getAllProperties(prop, allProps, name);
-                               }
-
-                               break;
-                       }
-                       case IDP_ARRAY:
-                       case IDP_ID:
-                       case IDP_IDPARRAY:
-                       break;
-               }
-
-               prop = prop->next;
-       }
-}
-
-void AbcObjectWriter::writeArrayProperty(IDProperty *p, const 
OCompoundProperty &abcProps)
-{
-       std::string name(p->name);
-
-       switch (p->subtype) {
-               case IDP_INT:
-               {
-                       OInt32ArrayProperty op(abcProps, name);
-                       op.set(OInt32ArrayProperty::sample_type(static_cast<int 
*>(IDP_Array(p)), p->len));
-                       break;
-               }
-               case IDP_FLOAT:
-               {
-                       OFloatArrayProperty op(abcProps, name);
-                       
op.set(OFloatArrayProperty::sample_type(static_cast<float *>(IDP_Array(p)), 
p->len));
-                       break;
-               }
-               case IDP_DOUBLE:
-               {
-                       ODoubleArrayProperty op(abcProps, name);
-                       
op.set(ODoubleArrayProperty::sample_type(static_cast<double *>(IDP_Array(p)), 
p->len));
-                       break;
-               }
-       }
-}
-
-void AbcObjectWriter::writeProperty(IDProperty *p, const std::string &name, 
const OCompoundProperty &abcProps)
-{
-       switch (p->type) {
-               case IDP_STRING:
-               {
-                       OStringProperty op(abcProps, name);
-                       op.set(IDP_String(p));
-                       break;
-               }
-               case IDP_INT:
-               {
-                       OInt32Property op(abcProps, name);
-                       op.set(IDP_Int(p));
-                       break;
-               }
-               case IDP_FLOAT:
-               {
-                       OFloatProperty op(abcProps, name);
-                       op.set(IDP_Float(p));
-                       break;
-               }
-               case IDP_DOUBLE:
-               {
-                       ODoubleProperty op(abcProps, name);
-                       op.set(IDP_Double(p));
-                       break;
-               }
-               case IDP_ARRAY:
-               {
-                       writeArrayProperty(p, abcProps);
-                       break;
-               }
-               case IDP_ID:
-               case IDP_IDPARRAY:
-               case IDP_GROUP:
-                       break;
-       }
-}
-
-void AbcObjectWriter::writeGeomProperty(IDProperty *p, const std::string 
&name, const OCompoundProperty &abcProps)
-{
-       switch (p->type) {
-               case IDP_STRING:
-               {
-                       std::string val = IDP_String(p);
-                       Alembic::AbcGeom::OStringGeomParam param(abcProps, 
name, false, Alembic::AbcGeom::kConstantScope, 1, 0);
-                       Alembic::AbcGeom::OStringGeomParam::Sample samp;
-                       samp.setScope(Alembic::AbcGeom::kConstantScope);
-                       samp.setVals(Alembic::AbcGeom::StringArraySample(&val, 
1));
-                       param.set(samp);
-
-                       break;
-               }
-               case IDP_INT:
-               {
-                       int val = IDP_Int(p);
-                       Alembic::AbcGeom::OInt32GeomParam param(abcProps, name, 
false, Alembic::AbcGeom::kConstantScope, 1, 0);
-                       Alembic::AbcGeom::OInt32GeomParam::Sample samp;
-                       samp.setScope(Alembic::AbcGeom::kConstantScope);
-                       samp.setVals(Alembic::AbcGeom::Int32ArraySample(&val, 
1));
-                       param.set(samp);
-
-                       break;
-               }
-               case IDP_FLOAT:
-               {
-                       float val = IDP_Float(p);
-                       Alembic::AbcGeom::OFloatGeomParam param(abcProps, name, 
false, Alembic::AbcGeom::kConstantScope, 1, 0);
-                       Alembic::AbcGeom::OFloatGeomParam::Sample samp;
-                       samp.setScope(Alembic::AbcGeom::kConstantScope);
-                       samp.setVals(Alembic::AbcGeom::FloatArraySample(&val, 
1));
-                       param.set(samp);
-
-                       break;
-               }
-               case IDP_DOUBLE:
-               {
-                       double val = IDP_Double(p);
-                       Alembic::AbcGeom::ODoubleGeomParam param(abcProps, 
name, false, Alembic::AbcGeom::kConstantScope, 1, 0);
-                       Alembic::AbcGeom::ODoubleGeomParam::Sample samp;
-                       samp.setScope(Alembic::AbcGeom::kConstantScope);
-                       samp.setVals(Alembic::AbcGeom::DoubleArraySample(&val, 
1));
-                       param.set(samp);
-
-                       break;
-               }
-               case IDP_ARRAY:
-               case IDP_IDPARRAY:
-               case IDP_GROUP:
-               case IDP_ID:
-                       break;
-       }
-}
-
-bool AbcObjectWriter::getPropertyValue(ID *id, const std::string &name, double 
&val)
-{
-       IDProperty *idgroup = IDP_GetProperties(id, false);
-       IDProperty *prop = IDP_GetPropertyFromGroup(idgroup, name.c_str());
-
-       if (prop) {
-               switch (prop->type) {
-                       case IDP_FLOAT:
-                               val = IDP_Float(prop);
-                               return true;
-
-                       case IDP_DOUBLE:
-                               val = IDP_Double(prop);
-                               return true;
-
-                       case IDP_INT:
-                               val = IDP_Int(prop);
-                               return true;
-               }
-       }
-
-       return false;
-}
-
 /* ************************************************************************** 
*/
 
 AbcObjectReader::AbcObjectReader(const IObject &object, ImportSettings 
&settings)
diff --git a/source/blender/alembic/intern/abc_object.h 
b/source/blender/alembic/intern/abc_object.h
index 62fd121..5283bc9 100644
--- a/source/blender/alembic/intern/abc_object.h
+++ b/source/blender/alembic/intern/abc_object.h
@@ -70,18 +70,6 @@ public:
 
 

@@ Diff output truncated at 10240 characters. @@

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to