[Bf-blender-cvs] [9e18fcbb36b] blender-v2.79a-release: BLI_polyfill2d_test: script to generate test data
Campbell Barton
noreply at git.blender.org
Wed Jan 3 12:48:15 CET 2018
Commit: 9e18fcbb36b4a2416efc9cec08c57d22df3867b2
Author: Campbell Barton
Date: Wed Sep 20 13:39:31 2017 +1000
Branches: blender-v2.79a-release
https://developer.blender.org/rB9e18fcbb36b4a2416efc9cec08c57d22df3867b2
BLI_polyfill2d_test: script to generate test data
===================================================================
M tests/gtests/blenlib/BLI_polyfill2d_test.cc
===================================================================
diff --git a/tests/gtests/blenlib/BLI_polyfill2d_test.cc b/tests/gtests/blenlib/BLI_polyfill2d_test.cc
index 5f10837fca1..e887f12b6d0 100644
--- a/tests/gtests/blenlib/BLI_polyfill2d_test.cc
+++ b/tests/gtests/blenlib/BLI_polyfill2d_test.cc
@@ -329,6 +329,43 @@ static void polyfill_to_obj(
/* -------------------------------------------------------------------- */
/* tests */
+/**
+ * Script to generate the data below:
+ *
+ * \code{.py}
+ * # This example assumes we have a mesh object in edit-mode
+ *
+ * import bpy
+ * import bmesh
+ *
+ * obj = bpy.context.edit_object
+ * me = obj.data
+ * bm = bmesh.from_edit_mesh(me)
+ *
+ * def clean_float(num):
+ * if int(num) == num:
+ * return str(int(num))
+ * prec = 1
+ * while True:
+ * text = f"{num:.{prec}f}"
+ * if float(text) == num:
+ * return text
+ * prec += 1
+ *
+ * for f in bm.faces:
+ * if f.select:
+ * print(f"\t// data for face: {f.index}")
+ * print("\tconst float poly[][2] = {", end="")
+ * coords = [[clean_float(num) for num in l.vert.co[0:2]] for l in f.loops]
+ * print("\t ", end="")
+ * for i, (x, y) in enumerate(coords):
+ * if (i % 2) == 0:
+ * print("\n\t ", end="")
+ * print(f"{{{x}, {y}}}", end=",")
+ * print("\n\t};")
+ * \endcode
+ */
+
#define POLY_TRI_COUNT(len) ((len) - 2)
More information about the Bf-blender-cvs
mailing list