Commit: d2309abcd435f452b460d203c53c452af4b83aac
Author: Gaia Clary
Date:   Mon Nov 28 17:54:42 2016 +0100
Branches: collada-2
https://developer.blender.org/rBd2309abcd435f452b460d203c53c452af4b83aac

Added 'use collada 2' options to importer/exporter to make testing easier 
during development (will eventually be removed again)

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

M       source/blender/collada/collada.cpp
M       source/blender/collada/collada.h
M       source/blender/editors/io/io_collada.c
M       source/blender/makesrna/intern/rna_scene_api.c

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

diff --git a/source/blender/collada/collada.cpp 
b/source/blender/collada/collada.cpp
index fe8b1d2..642919e 100644
--- a/source/blender/collada/collada.cpp
+++ b/source/blender/collada/collada.cpp
@@ -48,7 +48,8 @@ int collada_import(bContext *C,
                                   int find_chains,
                                   int auto_connect,
                                   int fix_orientation,
-                                  int min_chain_length)
+                                  int min_chain_length,
+                                  int use_collada_2)
 {
 
        ImportSettings import_settings;
@@ -87,7 +88,8 @@ int collada_export(Scene *sce,
                                   int use_blender_profile,
                                   int sort_by_name,
                                   BC_export_transformation_type 
export_transformation_type,
-                   int open_sim)
+                   int open_sim,
+                                  int use_collada_2)
 {
        ExportSettings export_settings;
 
diff --git a/source/blender/collada/collada.h b/source/blender/collada/collada.h
index a441660..4d93fdc 100644
--- a/source/blender/collada/collada.h
+++ b/source/blender/collada/collada.h
@@ -58,7 +58,8 @@ int collada_import(struct bContext *C,
                                   int find_chains,
                                   int auto_connect,
                                   int fix_orientation,
-                                  int min_chain_length);
+                                  int min_chain_length,
+                                  int use_collada_2);
 
 int collada_export(struct Scene *sce,
                    const char *filepath,
@@ -81,7 +82,8 @@ int collada_export(struct Scene *sce,
                    int use_blender_profile,
                    int sort_by_name,
                    BC_export_transformation_type export_transformation_type,
-                   int open_sim);
+                   int open_sim,
+                   int use_collada_2);
 
 
 
diff --git a/source/blender/editors/io/io_collada.c 
b/source/blender/editors/io/io_collada.c
index baae92f..51a66a50 100644
--- a/source/blender/editors/io/io_collada.c
+++ b/source/blender/editors/io/io_collada.c
@@ -98,6 +98,7 @@ static int wm_collada_export_exec(bContext *C, wmOperator *op)
        int sort_by_name;
        int export_transformation_type;
        int open_sim;
+       int use_collada_2;
 
        int export_count;
 
@@ -147,6 +148,8 @@ static int wm_collada_export_exec(bContext *C, wmOperator 
*op)
        sort_by_name               = RNA_boolean_get(op->ptr, "sort_by_name");
        export_transformation_type = RNA_enum_get(op->ptr,    
"export_transformation_type_selection");
        open_sim                   = RNA_boolean_get(op->ptr, "open_sim");
+       use_collada_2              = RNA_boolean_get(op->ptr, "use_collada_2");
+
 
        /* get editmode results */
        ED_object_editmode_load(CTX_data_edit_object(C));
@@ -172,7 +175,8 @@ static int wm_collada_export_exec(bContext *C, wmOperator 
*op)
                use_blender_profile,
                sort_by_name,
                export_transformation_type,
-               open_sim);
+               open_sim,
+               use_collada_2);
 
        if (export_count == 0) {
                BKE_report(op->reports, RPT_WARNING, "No objects selected -- 
Created empty export file");
@@ -270,6 +274,9 @@ static void uiCollada_exportSettings(uiLayout *layout, 
PointerRNA *imfptr)
        row = uiLayoutRow(box, false);
        uiItemR(row, imfptr, "sort_by_name", 0, NULL, ICON_NONE);
 
+       row = uiLayoutRow(box, false);
+       uiItemR(row, imfptr, "use_collada_2", 0, NULL, ICON_NONE);
+
 }
 
 static void wm_collada_export_draw(bContext *UNUSED(C), wmOperator *op)
@@ -384,6 +391,10 @@ void WM_OT_collada_export(wmOperatorType *ot)
 
        RNA_def_boolean(ot->srna, "open_sim", 0, "Export to SL/OpenSim",
                        "Compatibility mode for SL, OpenSim and other 
compatible online worlds");
+
+       RNA_def_boolean(ot->srna, "use_collada_2", 0, "Use Collada-2",
+                       "Use the new Version of the Collada Exporter (in 
development)");
+
 }
 
 
@@ -396,6 +407,7 @@ static int wm_collada_import_exec(bContext *C, wmOperator 
*op)
        int auto_connect;
        int fix_orientation;
        int  min_chain_length;
+       int use_collada_2;
 
        if (!RNA_struct_property_is_set(op->ptr, "filepath")) {
                BKE_report(op->reports, RPT_ERROR, "No filename given");
@@ -407,6 +419,7 @@ static int wm_collada_import_exec(bContext *C, wmOperator 
*op)
        find_chains      = RNA_boolean_get(op->ptr, "find_chains");
        auto_connect     = RNA_boolean_get(op->ptr, "auto_connect");
        fix_orientation  = RNA_boolean_get(op->ptr, "fix_orientation");
+       use_collada_2    = RNA_boolean_get(op->ptr, "use_collada_2");
        min_chain_length = RNA_int_get(op->ptr, "min_chain_length");
 
        RNA_string_get(op->ptr, "filepath", filename);
@@ -416,7 +429,8 @@ static int wm_collada_import_exec(bContext *C, wmOperator 
*op)
                find_chains,
                auto_connect,
                fix_orientation,
-               min_chain_length))
+               min_chain_length,
+               use_collada_2))
        {
                return OPERATOR_FINISHED;
        }
@@ -453,6 +467,14 @@ static void uiCollada_importSettings(uiLayout *layout, 
PointerRNA *imfptr)
 
        row = uiLayoutRow(box, false);
        uiItemR(row, imfptr, "min_chain_length", 0, NULL, ICON_NONE);
+
+       box = uiLayoutBox(layout);
+       row = uiLayoutRow(box, false);
+       uiItemL(row, IFACE_("Special Options:"), ICON_MESH_DATA);
+
+       row = uiLayoutRow(box, false);
+       uiItemR(row, imfptr, "use_collada_2", 0, NULL, ICON_NONE);
+
 }
 
 static void wm_collada_import_draw(bContext *UNUSED(C), wmOperator *op)
@@ -508,5 +530,9 @@ void WM_OT_collada_import(wmOperatorType *ot)
                0,
                INT_MAX);
 
+       RNA_def_boolean(ot->srna,
+               "use_collada_2", 0, "Use Collada-2",
+               "Use the new Version of the Collada Importer (in development)");
+
 }
 #endif
diff --git a/source/blender/makesrna/intern/rna_scene_api.c 
b/source/blender/makesrna/intern/rna_scene_api.c
index 85c0b01..03b2762 100644
--- a/source/blender/makesrna/intern/rna_scene_api.c
+++ b/source/blender/makesrna/intern/rna_scene_api.c
@@ -284,13 +284,16 @@ static void rna_Scene_collada_export(
         int use_object_instantiation,
         int use_blender_profile,
         int sort_by_name,
-        int open_sim,
-        int export_transformation_type)
+               int open_sim,
+               int use_collada_2,
+               int export_transformation_type)
 {
        collada_export(scene, filepath, apply_modifiers, export_mesh_type, 
selected,
                       include_children, include_armatures, include_shapekeys, 
deform_bones_only,
                       active_uv_only, include_uv_textures, 
include_material_textures,
-                      use_texture_copies, use_ngons, use_object_instantiation, 
use_blender_profile, sort_by_name, export_transformation_type, open_sim);
+                      use_texture_copies, use_ngons, use_object_instantiation,
+                      use_blender_profile, sort_by_name, 
export_transformation_type, open_sim,
+                      use_collada_2);
 }
 
 #endif
@@ -376,6 +379,7 @@ void RNA_api_scene(StructRNA *srna)
        parm = RNA_def_boolean(func, "use_blender_profile", 1, "Use Blender 
Profile", "Export additional Blender specific information (for material, 
shaders, bones, etc.)");
        parm = RNA_def_boolean(func, "sort_by_name", 0, "Sort by Object name", 
"Sort exported data by Object name");
        parm = RNA_def_boolean(func, "open_sim", 0, "Export for SL/OpenSim", 
"Compatibility mode for SL, OpenSim and similar online worlds");
+       parm = RNA_def_boolean(func, "use_collada_2", 0, "Use Collada 2", "Use 
the new Version of the Collada Exporter (in development)");
 
        parm = RNA_def_int(func, "export_transformation_type", 0, INT_MIN, 
INT_MAX,
                    "Transformation", "Transformation type for translation, 
scale and rotation", INT_MIN, INT_MAX);

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

Reply via email to