[Bf-blender-cvs] [d2309ab] collada-2: Added 'use collada 2' options to importer/exporter to make testing easier during development (will eventually be removed again)

Gaia Clary noreply at git.blender.org
Mon Nov 28 18:09:37 CET 2016


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);




More information about the Bf-blender-cvs mailing list