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. @@

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

Reply via email to