[Bf-blender-cvs] [5961487] temp_custom_loop_normals: SetSplitModifier: code reorganization.

Bastien Montagne noreply at git.blender.org
Fri Aug 22 12:48:07 CEST 2014


Commit: 5961487388c558d742737184ea2c5bbf9230ab1b
Author: Bastien Montagne
Date:   Fri Aug 22 12:29:25 2014 +0200
Branches: temp_custom_loop_normals
https://developer.blender.org/rB5961487388c558d742737184ea2c5bbf9230ab1b

SetSplitModifier: code reorganization.

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

M	source/blender/modifiers/intern/MOD_setsplitnormal.c

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

diff --git a/source/blender/modifiers/intern/MOD_setsplitnormal.c b/source/blender/modifiers/intern/MOD_setsplitnormal.c
index 8b03131..853848a 100644
--- a/source/blender/modifiers/intern/MOD_setsplitnormal.c
+++ b/source/blender/modifiers/intern/MOD_setsplitnormal.c
@@ -51,81 +51,6 @@
 #include "MOD_util.h"
 
 
-static bool is_valid_target(SetSplitNormalModifierData *smd)
-{
-	if (smd->mode == MOD_SETSPLITNORMAL_MODE_ELLIPSOID) {
-		return true;
-	}
-	else if (ELEM(smd->mode, MOD_SETSPLITNORMAL_MODE_GEOM_FACENOR, MOD_SETSPLITNORMAL_MODE_GEOM_LOOPNOR) &&
-	         smd->target && smd->target->type == OB_MESH)
-	{
-		return true;
-	}
-	return false;
-}
-
-static void initData(ModifierData *md)
-{
-	SetSplitNormalModifierData *smd = (SetSplitNormalModifierData *) md;
-
-	smd->mode = MOD_SETSPLITNORMAL_MODE_ELLIPSOID;
-}
-
-static void copyData(ModifierData *md, ModifierData *target)
-{
-	modifier_copyData_generic(md, target);
-}
-
-static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *md)
-{
-	SetSplitNormalModifierData *smd = (SetSplitNormalModifierData *)md;
-	CustomDataMask dataMask = CD_CUSTOMLOOPNORMAL;
-
-	/* Ask for vertexgroups if we need them. */
-	if (smd->defgrp_name[0]) {
-		dataMask |= (CD_MASK_MDEFORMVERT);
-	}
-
-	return dataMask;
-}
-
-static bool dependsOnNormals(ModifierData *UNUSED(md)) {
-	return true;
-}
-
-static void foreachObjectLink(ModifierData *md, Object *ob, ObjectWalkFunc walk, void *userData)
-{
-	SetSplitNormalModifierData *smd = (SetSplitNormalModifierData *) md;
-
-	walk(userData, ob, &smd->target);
-}
-
-static void foreachIDLink(ModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
-{
-	SetSplitNormalModifierData *smd = (SetSplitNormalModifierData *) md;
-
-	walk(userData, ob, (ID **)&smd->target);
-}
-
-static bool isDisabled(ModifierData *md, int UNUSED(useRenderParams))
-{
-	SetSplitNormalModifierData *smd = (SetSplitNormalModifierData *)md;
-
-	return !is_valid_target(smd);
-}
-
-static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *UNUSED(scene),
-                           Object *UNUSED(ob), DagNode *obNode)
-{
-	SetSplitNormalModifierData *smd = (SetSplitNormalModifierData *) md;
-
-	if (smd->target) {
-		DagNode *Node = dag_get_node(forest, smd->target);
-
-		dag_add_relation(forest, Node, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "SetSplitNormal Modifier");
-	}
-}
-
 static bool ensure_target_dm(Object *target_ob, DerivedMesh **r_target_dm)
 {
 	*r_target_dm = target_ob->derivedFinal;
@@ -599,6 +524,19 @@ static void setSplitNormalModifier_do_loopnormal(
 	}
 }
 
+static bool is_valid_target(SetSplitNormalModifierData *smd)
+{
+	if (smd->mode == MOD_SETSPLITNORMAL_MODE_ELLIPSOID) {
+		return true;
+	}
+	else if (ELEM(smd->mode, MOD_SETSPLITNORMAL_MODE_GEOM_FACENOR, MOD_SETSPLITNORMAL_MODE_GEOM_LOOPNOR) &&
+	         smd->target && smd->target->type == OB_MESH)
+	{
+		return true;
+	}
+	return false;
+}
+
 static void setSplitNormalModifier_do(SetSplitNormalModifierData *smd, Object *ob, DerivedMesh *dm)
 {
 	const int num_verts = dm->getNumVerts(dm);
@@ -657,6 +595,68 @@ static void setSplitNormalModifier_do(SetSplitNormalModifierData *smd, Object *o
 	}
 }
 
+static void initData(ModifierData *md)
+{
+	SetSplitNormalModifierData *smd = (SetSplitNormalModifierData *) md;
+
+	smd->mode = MOD_SETSPLITNORMAL_MODE_ELLIPSOID;
+}
+
+static void copyData(ModifierData *md, ModifierData *target)
+{
+	modifier_copyData_generic(md, target);
+}
+
+static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *md)
+{
+	SetSplitNormalModifierData *smd = (SetSplitNormalModifierData *)md;
+	CustomDataMask dataMask = CD_CUSTOMLOOPNORMAL;
+
+	/* Ask for vertexgroups if we need them. */
+	if (smd->defgrp_name[0]) {
+		dataMask |= (CD_MASK_MDEFORMVERT);
+	}
+
+	return dataMask;
+}
+
+static bool dependsOnNormals(ModifierData *UNUSED(md)) {
+	return true;
+}
+
+static void foreachObjectLink(ModifierData *md, Object *ob, ObjectWalkFunc walk, void *userData)
+{
+	SetSplitNormalModifierData *smd = (SetSplitNormalModifierData *) md;
+
+	walk(userData, ob, &smd->target);
+}
+
+static void foreachIDLink(ModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
+{
+	SetSplitNormalModifierData *smd = (SetSplitNormalModifierData *) md;
+
+	walk(userData, ob, (ID **)&smd->target);
+}
+
+static bool isDisabled(ModifierData *md, int UNUSED(useRenderParams))
+{
+	SetSplitNormalModifierData *smd = (SetSplitNormalModifierData *)md;
+
+	return !is_valid_target(smd);
+}
+
+static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *UNUSED(scene),
+                           Object *UNUSED(ob), DagNode *obNode)
+{
+	SetSplitNormalModifierData *smd = (SetSplitNormalModifierData *) md;
+
+	if (smd->target) {
+		DagNode *Node = dag_get_node(forest, smd->target);
+
+		dag_add_relation(forest, Node, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "SetSplitNormal Modifier");
+	}
+}
+
 static DerivedMesh *applyModifier(ModifierData *md, Object *ob, DerivedMesh *dm, ModifierApplyFlag UNUSED(flag))
 {
 	setSplitNormalModifier_do((SetSplitNormalModifierData *)md, ob, dm);




More information about the Bf-blender-cvs mailing list