[Bf-blender-cvs] [6444572c46d] custom-manipulators: Cleanup: only expose base struct for manipulator geometry
Campbell Barton
noreply at git.blender.org
Thu Apr 6 08:33:33 CEST 2017
Commit: 6444572c46deb1759675e119c3a55a547f0cb41b
Author: Campbell Barton
Date: Thu Apr 6 16:33:06 2017 +1000
Branches: custom-manipulators
https://developer.blender.org/rB6444572c46deb1759675e119c3a55a547f0cb41b
Cleanup: only expose base struct for manipulator geometry
===================================================================
M source/blender/windowmanager/manipulators/intern/manipulator_library/arrow_manipulator.c
M source/blender/windowmanager/manipulators/intern/manipulator_library/dial_manipulator.c
M source/blender/windowmanager/manipulators/intern/manipulator_library/geom_arrow_manipulator.c
M source/blender/windowmanager/manipulators/intern/manipulator_library/geom_cube_manipulator.c
M source/blender/windowmanager/manipulators/intern/manipulator_library/geom_dial_manipulator.c
M source/blender/windowmanager/manipulators/intern/manipulator_library/manipulator_geometry.h
M source/blender/windowmanager/manipulators/intern/wm_manipulator_api.c
M source/blender/windowmanager/manipulators/intern/wm_manipulator_intern.h
===================================================================
diff --git a/source/blender/windowmanager/manipulators/intern/manipulator_library/arrow_manipulator.c b/source/blender/windowmanager/manipulators/intern/manipulator_library/arrow_manipulator.c
index 0fc788256c4..ff582479a51 100644
--- a/source/blender/windowmanager/manipulators/intern/manipulator_library/arrow_manipulator.c
+++ b/source/blender/windowmanager/manipulators/intern/manipulator_library/arrow_manipulator.c
@@ -66,12 +66,7 @@
#include "manipulator_library_intern.h"
/* to use custom arrows exported to geom_arrow_manipulator.c */
-//#define MANIPULATOR_USE_CUSTOM_ARROWS
-
-#ifdef MANIPULATOR_USE_CUSTOM_ARROWS
-ManipulatorGeometryInfo arrow_head_draw_info = {0};
-#endif
-ManipulatorGeometryInfo cube_draw_info = {0};
+#define USE_MANIPULATOR_CUSTOM_ARROWS
/* ArrowManipulator->flag */
enum {
@@ -139,8 +134,8 @@ static void arrow_draw_geom(const ArrowManipulator *arrow, const bool select, co
glLineWidth(1.0);
}
else {
-#ifdef MANIPULATOR_USE_CUSTOM_ARROWS
- wm_manipulator_geometryinfo_draw(&arrow_head_draw_info, select);
+#ifdef USE_MANIPULATOR_CUSTOM_ARROWS
+ wm_manipulator_geometryinfo_draw(&wm_manipulator_geom_data_arrow, select);
#else
const float vec[2][3] = {
{0.0f, 0.0f, 0.0f},
@@ -168,7 +163,7 @@ static void arrow_draw_geom(const ArrowManipulator *arrow, const bool select, co
gpuScale3f(size, size, size);
/* draw cube */
- wm_manipulator_geometryinfo_draw(&cube_draw_info, select);
+ wm_manipulator_geometryinfo_draw(&wm_manipulator_geom_data_cube, select);
}
else {
const float len = 0.25f;
@@ -198,7 +193,7 @@ static void arrow_draw_geom(const ArrowManipulator *arrow, const bool select, co
gpuPopMatrix();
-#endif /* MANIPULATOR_USE_CUSTOM_ARROWS */
+#endif /* USE_MANIPULATOR_CUSTOM_ARROWS */
}
}
@@ -446,25 +441,6 @@ wmManipulator *MANIPULATOR_arrow_new(wmManipulatorGroup *mgroup, const char *nam
{
int real_style = style;
-#ifdef MANIPULATOR_USE_CUSTOM_ARROWS
- if (!arrow_head_draw_info.init) {
- arrow_head_draw_info.nverts = _MANIPULATOR_nverts_arrow,
- arrow_head_draw_info.ntris = _MANIPULATOR_ntris_arrow,
- arrow_head_draw_info.verts = _MANIPULATOR_verts_arrow,
- arrow_head_draw_info.normals = _MANIPULATOR_normals_arrow,
- arrow_head_draw_info.indices = _MANIPULATOR_indices_arrow,
- arrow_head_draw_info.init = true;
- }
-#endif
- if (!cube_draw_info.init) {
- cube_draw_info.nverts = _MANIPULATOR_nverts_cube,
- cube_draw_info.ntris = _MANIPULATOR_ntris_cube,
- cube_draw_info.verts = _MANIPULATOR_verts_cube,
- cube_draw_info.normals = _MANIPULATOR_normals_cube,
- cube_draw_info.indices = _MANIPULATOR_indices_cube,
- cube_draw_info.init = true;
- }
-
/* inverted only makes sense in a constrained arrow */
if (real_style & MANIPULATOR_ARROW_STYLE_INVERTED) {
real_style |= MANIPULATOR_ARROW_STYLE_CONSTRAINED;
diff --git a/source/blender/windowmanager/manipulators/intern/manipulator_library/dial_manipulator.c b/source/blender/windowmanager/manipulators/intern/manipulator_library/dial_manipulator.c
index aa13c1dd0fb..d44b2ca6708 100644
--- a/source/blender/windowmanager/manipulators/intern/manipulator_library/dial_manipulator.c
+++ b/source/blender/windowmanager/manipulators/intern/manipulator_library/dial_manipulator.c
@@ -73,11 +73,7 @@
#endif
/* to use custom dials exported to geom_dial_manipulator.c */
-//#define MANIPULATOR_USE_CUSTOM_DIAS
-
-#ifdef MANIPULATOR_USE_CUSTOM_DIAS
-ManipulatorGeometryInfo dial_draw_info = {0};
-#endif
+// #define USE_MANIPULATOR_CUSTOM_DIAL
typedef struct DialManipulator {
wmManipulator manipulator;
@@ -103,8 +99,9 @@ static void dial_geom_draw(
const DialManipulator *dial, const float col[4], const bool select,
float axis_modal_mat[4][4], float clip_plane[4])
{
-#ifdef MANIPULATOR_USE_CUSTOM_DIAS
- wm_manipulator_geometryinfo_draw(&dial_draw_info, select);
+#ifdef USE_MANIPULATOR_CUSTOM_DIAL
+ UNUSED_VARS(dial, col, axis_modal_mat, clip_plane);
+ wm_manipulator_geometryinfo_draw(&wm_manipulator_geom_data_dial, select);
#else
const bool filled = (dial->style == MANIPULATOR_DIAL_STYLE_RING_FILLED);
@@ -347,17 +344,6 @@ wmManipulator *MANIPULATOR_dial_new(wmManipulatorGroup *mgroup, const char *name
DialManipulator *dial = MEM_callocN(sizeof(DialManipulator), name);
const float dir_default[3] = {0.0f, 0.0f, 1.0f};
-#ifdef MANIPULATOR_USE_CUSTOM_DIAS
- if (!dial_draw_info.init) {
- dial_draw_info.nverts = _MANIPULATOR_nverts_dial,
- dial_draw_info.ntris = _MANIPULATOR_ntris_dial,
- dial_draw_info.verts = _MANIPULATOR_verts_dial,
- dial_draw_info.normals = _MANIPULATOR_normals_dial,
- dial_draw_info.indices = _MANIPULATOR_indices_dial,
- dial_draw_info.init = true;
- }
-#endif
-
dial->manipulator.draw = manipulator_dial_draw;
dial->manipulator.intersect = NULL;
dial->manipulator.render_3d_intersection = manipulator_dial_render_3d_intersect;
diff --git a/source/blender/windowmanager/manipulators/intern/manipulator_library/geom_arrow_manipulator.c b/source/blender/windowmanager/manipulators/intern/manipulator_library/geom_arrow_manipulator.c
index ee5b50278b6..acdb772472d 100644
--- a/source/blender/windowmanager/manipulators/intern/manipulator_library/geom_arrow_manipulator.c
+++ b/source/blender/windowmanager/manipulators/intern/manipulator_library/geom_arrow_manipulator.c
@@ -27,111 +27,117 @@
* \ingroup wm
*/
-int _MANIPULATOR_nverts_arrow = 25;
-int _MANIPULATOR_ntris_arrow = 46;
+#include "manipulator_geometry.h"
-float _MANIPULATOR_verts_arrow[][3] = {
- {-0.000000, 0.012320, 0.000000},
- {-0.000000, 0.012320, 0.974306},
- {0.008711, 0.008711, 0.000000},
- {0.008711, 0.008711, 0.974306},
- {0.012320, -0.000000, 0.000000},
- {0.012320, -0.000000, 0.974306},
- {0.008711, -0.008711, 0.000000},
- {0.008711, -0.008711, 0.974306},
- {-0.000000, -0.012320, 0.000000},
- {-0.000000, -0.012320, 0.974306},
- {-0.008711, -0.008711, 0.000000},
- {-0.008711, -0.008711, 0.974306},
- {-0.012320, 0.000000, 0.000000},
- {-0.012320, 0.000000, 0.974306},
- {-0.008711, 0.008711, 0.000000},
- {-0.008711, 0.008711, 0.974306},
- {0.000000, 0.072555, 0.974306},
- {0.051304, 0.051304, 0.974306},
- {0.072555, -0.000000, 0.974306},
- {0.051304, -0.051304, 0.974306},
- {-0.000000, -0.072555, 0.974306},
- {-0.051304, -0.051304, 0.974306},
- {-0.072555, 0.000000, 0.974306},
- {-0.051304, 0.051304, 0.974306},
- {0.000000, -0.000000, 1.268098},
+static float verts[][3] = {
+ {-0.000000, 0.012320, 0.000000},
+ {-0.000000, 0.012320, 0.974306},
+ {0.008711, 0.008711, 0.000000},
+ {0.008711, 0.008711, 0.974306},
+ {0.012320, -0.000000, 0.000000},
+ {0.012320, -0.000000, 0.974306},
+ {0.008711, -0.008711, 0.000000},
+ {0.008711, -0.008711, 0.974306},
+ {-0.000000, -0.012320, 0.000000},
+ {-0.000000, -0.012320, 0.974306},
+ {-0.008711, -0.008711, 0.000000},
+ {-0.008711, -0.008711, 0.974306},
+ {-0.012320, 0.000000, 0.000000},
+ {-0.012320, 0.000000, 0.974306},
+ {-0.008711, 0.008711, 0.000000},
+ {-0.008711, 0.008711, 0.974306},
+ {0.000000, 0.072555, 0.974306},
+ {0.051304, 0.051304, 0.974306},
+ {0.072555, -0.000000, 0.974306},
+ {0.051304, -0.051304, 0.974306},
+ {-0.000000, -0.072555, 0.974306},
+ {-0.051304, -0.051304, 0.974306},
+ {-0.072555, 0.000000, 0.974306},
+ {-0.051304, 0.051304, 0.974306},
+ {0.000000, -0.000000, 1.268098},
};
-float _MANIPULATOR_normals_arrow[][3] = {
- {0.000000, 0.776360, -0.630238},
- {0.000000, 0.594348, -0.804163},
- {0.548967, 0.548967, -0.630238},
- {0.420270, 0.420270, -0.804163},
- {0.776360, 0.000000, -0.630238},
- {0.594378, 0.000000, -0.804163},
- {0.548967, -0.548967, -0.630238},
- {0.420270, -0.420270, -0.804163},
- {0.000000, -0.776360, -0.630238},
- {0.000000, -0.594378, -0.804163},
- {-0.548967, -0.548967, -0.630238},
- {-0.420270, -0.420270, -0.804163},
- {-0.776360, 0.000000, -0.630238},
- {-0.594378, 0.000000, -0.804163},
- {-0.548967, 0.548967, -0.630238},
- {-0.420270, 0.420270, -0.804163},
- {0.000000, 0.843226, -0.537492},
- {0.596271, 0.596271, -0.537492},
- {0.843226, 0.000000, -0.537492},
- {0.596271, -0.596271, -0.537492},
- {0.000000, -0.843226, -0.537492},
- {-0.596271, -0.596271, -0.537492},
- {-0.843226, 0.000000, -0.537492},
- {-0.596271, 0.596271, -0.537492},
- {0.000000, 0.000000, 1.000000},
+static float normals[][3] = {
+ {0.000000, 0.776360, -0.630238},
+ {0.000000, 0.594348, -0.804163},
+ {0.548967, 0.548967, -0.630238},
+ {0.420270, 0.420270, -0.804163},
+ {0.776360, 0.000000, -0.630238},
+ {0.594378, 0.000000, -0.804163},
+ {0.548967, -0.548967, -0.630238},
+ {0.420270, -0.420270, -0.804163},
+ {0.000000, -0.776360, -0.630238},
+ {0.000000, -0.594378, -0.804163},
+ {-0.548967, -0.548967, -0.630238},
+ {-0.420270, -0.420270, -0.804163},
+ {-0.776360, 0.000000, -0.630238},
+ {-0.594378, 0.000000, -0.804163},
+ {-0.548967, 0.548967, -0.630238},
+ {-0.420270, 0.420270, -0.804163},
+ {0.000000, 0.843226, -0.537492},
+ {0.596271, 0.596271, -0.537492},
+ {0.843226, 0.000000, -0.537492},
+ {0.596271, -0.596271, -0.537492},
+ {0.000000, -0.843226, -0.537492},
+ {-0.596271, -0.596271, -0.537492},
+ {-0.843226, 0.000000, -0.537492},
+ {-0.596271, 0.596271, -0.537492},
+ {0.000000, 0.000000, 1.000000},
};
-unsigned short _MANIPULATOR_indices_arrow[] = {
- 1, 3, 2,
- 3, 5, 4,
- 5, 7, 6,
- 7, 9, 8,
- 9, 11, 10,
- 11, 13, 12,
- 5, 18, 19,
- 15, 1, 0,
- 13, 15, 14,
- 6, 10, 14,
- 11, 21, 22,
- 7, 19, 20,
- 13, 22, 23,
- 3, 17, 18,
- 9, 20, 21,
- 15, 23, 16,
- 1, 16, 17,
- 23, 22, 24,
- 21, 20, 24,
- 19, 18, 24,
- 17, 16, 24,
- 16, 23, 24,
- 22, 21, 24,
- 20, 19, 24,
- 18, 17, 24,
- 0, 1, 2,
- 2, 3, 4,
- 4, 5, 6,
- 6, 7, 8,
- 8, 9, 10,
- 10, 11, 12,
- 7, 5, 19,
- 14, 15, 0,
- 12, 13, 14,
- 14, 0, 2,
- 2, 4, 6,
- 6, 8, 10,
- 10, 12, 14,
- 14, 2, 6,
- 13, 11, 22,
- 9, 7, 20,
- 15, 13, 23,
- 5, 3, 18,
- 11, 9, 21,
- 1, 15, 16,
- 3, 1, 17,
+static unsigned short indices[] = {
+ 1, 3, 2,
+ 3, 5, 4,
+ 5, 7, 6,
+ 7, 9, 8,
+ 9, 11, 10,
+ 11, 13, 12,
+ 5, 18, 19,
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list