Commit: 30911654722ecfd17204a5b4c8d5ad0ae5e3d348
Author: Jonathan deWerd
Date:   Thu Jul 10 01:55:53 2014 -0400
https://developer.blender.org/rB30911654722ecfd17204a5b4c8d5ad0ae5e3d348

Promoted curve.c to cpp (changed extension, added casts), moved gridmesh into 
blenkernel/intern, the location of the old tessellation code, and moved the 
GLUT debug tool into the tests folder which seems like the appropriate place 
for it.

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

M       source/blender/blenkernel/BKE_curve.h
A       source/blender/blenkernel/BKE_surf_trimtess.h
M       source/blender/blenkernel/CMakeLists.txt
D       source/blender/blenkernel/intern/curve.c
A       source/blender/blenkernel/intern/curve.cpp
M       source/blender/blenkernel/intern/displist.c
A       source/blender/blenkernel/intern/surf_gridmesh.cpp
A       source/blender/blenkernel/intern/surf_gridmesh.h
M       source/blender/editors/curve/CMakeLists.txt
D       source/blender/editors/curve/GridMesh.cpp
D       source/blender/editors/curve/GridMesh.h
D       source/blender/editors/curve/GridMesh_GLUT_debug_tool.cpp
D       source/blender/editors/curve/surf_tess.cpp
D       source/blender/editors/curve/surf_tess.h
A       tests/interactive/nurbs_trimtess.cpp

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

diff --git a/source/blender/blenkernel/BKE_curve.h 
b/source/blender/blenkernel/BKE_curve.h
index 0f9f8cb..6dd1241 100644
--- a/source/blender/blenkernel/BKE_curve.h
+++ b/source/blender/blenkernel/BKE_curve.h
@@ -177,4 +177,9 @@ void BKE_nurb_handles_autocalc(struct Nurb *nu, int flag);
 void BKE_nurb_bezt_handle_test(struct BezTriple *bezt, const bool use_handle);
 void BKE_nurb_handles_test(struct Nurb *nu, const bool use_handles);
 
+/* Does not traverse nu's linked list. Fills dl with a mesh corresponding to
+ * the single surface nu, performing trim if necessary.
+ */
+void BKE_nurb_make_displist(struct Nurb *nu, struct DispList *dl);
+
 #endif  /* __BKE_CURVE_H__ */
diff --git a/source/blender/editors/curve/surf_tess.h 
b/source/blender/blenkernel/BKE_surf_trimtess.h
similarity index 100%
rename from source/blender/editors/curve/surf_tess.h
rename to source/blender/blenkernel/BKE_surf_trimtess.h
diff --git a/source/blender/blenkernel/CMakeLists.txt 
b/source/blender/blenkernel/CMakeLists.txt
index 0caf7d1..d3810a5 100644
--- a/source/blender/blenkernel/CMakeLists.txt
+++ b/source/blender/blenkernel/CMakeLists.txt
@@ -79,7 +79,7 @@ set(SRC
        intern/constraint.c
        intern/context.c
         intern/crazyspace.c
-        intern/curve.c
+        intern/curve.cpp
        intern/customdata.c
        intern/customdata_file.c
        intern/deform.c
@@ -154,6 +154,7 @@ set(SRC
        intern/speaker.c
        intern/subsurf_ccg.c
        intern/suggestions.c
+       intern/surf_gridmesh.cpp
        intern/text.c
        intern/texture.c
        intern/tracking.c
@@ -253,6 +254,7 @@ set(SRC
        BKE_speaker.h
        BKE_subsurf.h
        BKE_suggestions.h
+       BKE_surf_trimtess.h
        BKE_editmesh.h
        BKE_editmesh_bvh.h
        BKE_text.h
diff --git a/source/blender/blenkernel/intern/curve.c 
b/source/blender/blenkernel/intern/curve.cpp
similarity index 94%
rename from source/blender/blenkernel/intern/curve.c
rename to source/blender/blenkernel/intern/curve.cpp
index 83ea31c..041f571 100644
--- a/source/blender/blenkernel/intern/curve.c
+++ b/source/blender/blenkernel/intern/curve.cpp
@@ -29,7 +29,7 @@
  *  \ingroup bke
  */
 
-
+extern "C" {
 #include <math.h>  // floor
 #include <string.h>
 #include <stdlib.h>
@@ -60,6 +60,11 @@
 #include "BKE_main.h"
 #include "BKE_object.h"
 #include "BKE_material.h"
+}
+
+#include <CoreServices/CoreServices.h>
+#include <mach/mach.h>
+#include <mach/mach_time.h>
 
 /* globals */
 
@@ -164,7 +169,7 @@ Curve *BKE_curve_add(Main *bmain, const char *name, int 
type)
 {
        Curve *cu;
 
-       cu = BKE_libblock_alloc(bmain, ID_CU, name);
+       cu = (Curve*)BKE_libblock_alloc(bmain, ID_CU, name);
        copy_v3_fl(cu->size, 1.0f);
        cu->flag = CU_FRONT | CU_BACK | CU_DEFORM_BOUNDS_OFF | CU_PATH_RADIUS;
        cu->pathlen = 100;
@@ -189,12 +194,12 @@ Curve *BKE_curve_add(Main *bmain, const char *name, int 
type)
        if (type == OB_FONT) {
                cu->vfont = cu->vfontb = cu->vfonti = cu->vfontbi = 
BKE_vfont_builtin_get();
                cu->vfont->id.us += 4;
-               cu->str = MEM_mallocN(12, "str");
+               cu->str = (char*)MEM_mallocN(12, "str");
                BLI_strncpy(cu->str, "Text", 12);
                cu->len = cu->len_wchar = cu->pos = 4;
-               cu->strinfo = MEM_callocN(12 * sizeof(CharInfo), "strinfo new");
+               cu->strinfo = (struct CharInfo*)MEM_callocN(12 * 
sizeof(CharInfo), "strinfo new");
                cu->totbox = cu->actbox = 1;
-               cu->tb = MEM_callocN(MAXTEXTBOX * sizeof(TextBox), "textbox");
+               cu->tb = (struct TextBox*)MEM_callocN(MAXTEXTBOX * 
sizeof(TextBox), "textbox");
                cu->tb[0].w = cu->tb[0].h = 0.0;
        }
 
@@ -206,19 +211,19 @@ Curve *BKE_curve_copy(Curve *cu)
        Curve *cun;
        int a;
 
-       cun = BKE_libblock_copy(&cu->id);
+       cun = (Curve*)BKE_libblock_copy(&cu->id);
        BLI_listbase_clear(&cun->nurb);
        BKE_nurbList_duplicate(&(cun->nurb), &(cu->nurb));
 
-       cun->mat = MEM_dupallocN(cu->mat);
+       cun->mat = (struct Material **)MEM_dupallocN(cu->mat);
        for (a = 0; a < cun->totcol; a++) {
                id_us_plus((ID *)cun->mat[a]);
        }
 
-       cun->str = MEM_dupallocN(cu->str);
-       cun->strinfo = MEM_dupallocN(cu->strinfo);
-       cun->tb = MEM_dupallocN(cu->tb);
-       cun->bb = MEM_dupallocN(cu->bb);
+       cun->str = (char*)MEM_dupallocN(cu->str);
+       cun->strinfo = (struct CharInfo*)MEM_dupallocN(cu->strinfo);
+       cun->tb = (struct TextBox*)MEM_dupallocN(cu->tb);
+       cun->bb = (struct BoundBox*)MEM_dupallocN(cu->bb);
 
        cun->key = BKE_key_copy(cu->key);
        if (cun->key) cun->key->from = (ID *)cun;
@@ -271,7 +276,7 @@ void BKE_curve_make_local(Curve *cu)
                return;
        }
 
-       for (ob = bmain->object.first; ob && ELEM(0, is_lib, is_local); ob = 
ob->id.next) {
+       for (ob = (Object*)bmain->object.first; ob && ELEM(0, is_lib, 
is_local); ob = (Object*)ob->id.next) {
                if (ob->data == cu) {
                        if (ob->id.lib) is_lib = true;
                        else is_local = true;
@@ -288,7 +293,7 @@ void BKE_curve_make_local(Curve *cu)
 
                BKE_id_lib_local_paths(bmain, cu->id.lib, &cu_new->id);
 
-               for (ob = bmain->object.first; ob; ob = ob->id.next) {
+               for (ob = (Object*)bmain->object.first; ob; ob = 
(Object*)ob->id.next) {
                        if (ob->data == cu) {
                                if (ob->id.lib == NULL) {
                                        ob->data = cu_new;
@@ -322,7 +327,7 @@ short BKE_curve_type_get(Curve *cu)
        if (!cu->type) {
                type = OB_CURVE;
 
-               for (nu = cu->nurb.first; nu; nu = nu->next) {
+               for (nu = (Nurb*)cu->nurb.first; nu; nu = (Nurb*)nu->next) {
                        if (nu->pntsv > 1) {
                                type = OB_SURF;
                        }
@@ -335,7 +340,7 @@ short BKE_curve_type_get(Curve *cu)
 void BKE_curve_curve_dimension_update(Curve *cu)
 {
        ListBase *nurbs = BKE_curve_nurbs_get(cu);
-       Nurb *nu = nurbs->first;
+       Nurb *nu = (Nurb*)nurbs->first;
 
        if (cu->flag & CU_3D) {
                for (; nu; nu = nu->next) {
@@ -356,7 +361,7 @@ void BKE_curve_curve_dimension_update(Curve *cu)
 
 void BKE_curve_type_test(Object *ob)
 {
-       ob->type = BKE_curve_type_get(ob->data);
+       ob->type = BKE_curve_type_get((Curve*)ob->data);
 
        if (ob->type == OB_CURVE)
                BKE_curve_curve_dimension_update((Curve *)ob->data);
@@ -368,7 +373,7 @@ void BKE_curve_boundbox_calc(Curve *cu, float r_loc[3], 
float r_size[3])
        float min[3], max[3];
        float mloc[3], msize[3];
 
-       if (cu->bb == NULL) cu->bb = MEM_callocN(sizeof(BoundBox), "boundbox");
+       if (cu->bb == NULL) cu->bb = (struct 
BoundBox*)MEM_callocN(sizeof(BoundBox), "boundbox");
        bb = cu->bb;
 
        if (!r_loc) r_loc = mloc;
@@ -393,7 +398,7 @@ void BKE_curve_boundbox_calc(Curve *cu, float r_loc[3], 
float r_size[3])
 
 BoundBox *BKE_curve_boundbox_get(Object *ob)
 {
-       Curve *cu = ob->data;
+       Curve *cu = (Curve*)ob->data;
 
        if (ob->bb)
                return ob->bb;
@@ -441,7 +446,7 @@ bool BKE_nurbList_index_get_co(ListBase *nurb, const int 
index, float r_co[3])
        Nurb *nu;
        int tot = 0;
 
-       for (nu = nurb->first; nu; nu = nu->next) {
+       for (nu = (Nurb*)nurb->first; nu; nu = nu->next) {
                int tot_nu;
                if (nu->type == CU_BEZIER) {
                        tot_nu = nu->pntsu;
@@ -468,7 +473,7 @@ int BKE_nurbList_verts_count(ListBase *nurb)
        Nurb *nu;
        int tot = 0;
 
-       nu = nurb->first;
+       nu = (Nurb*)nurb->first;
        while (nu) {
                if (nu->bezt)
                        tot += 3 * nu->pntsu;
@@ -485,7 +490,7 @@ int BKE_nurbList_verts_count_without_handles(ListBase *nurb)
        Nurb *nu;
        int tot = 0;
 
-       nu = nurb->first;
+       nu = (Nurb*)nurb->first;
        while (nu) {
                if (nu->bezt)
                        tot += nu->pntsu;
@@ -529,7 +534,7 @@ void BKE_nurbList_free(ListBase *lb)
 
        if (lb == NULL) return;
 
-       nu = lb->first;
+       nu = (Nurb*)lb->first;
        while (nu) {
                next = nu->next;
                BKE_nurb_free(nu);
@@ -563,14 +568,14 @@ Nurb *BKE_nurb_duplicate(Nurb *nu)
                if (nu->knotsu) {
                        len = KNOTSU(nu);
                        if (len) {
-                               newnu->knotsu = MEM_mallocN(len * 
sizeof(float), "duplicateNurb4");
+                               newnu->knotsu = (float*)MEM_mallocN(len * 
sizeof(float), "duplicateNurb4");
                                memcpy(newnu->knotsu, nu->knotsu, sizeof(float) 
* len);
                        }
                }
                if (nu->pntsv > 1 && nu->knotsv) {
                        len = KNOTSV(nu);
                        if (len) {
-                               newnu->knotsv = MEM_mallocN(len * 
sizeof(float), "duplicateNurb5");
+                               newnu->knotsv = (float*)MEM_mallocN(len * 
sizeof(float), "duplicateNurb5");
                                memcpy(newnu->knotsv, nu->knotsv, sizeof(float) 
* len);
                        }
                }
@@ -604,7 +609,7 @@ void BKE_nurbList_duplicate(ListBase *lb1, ListBase *lb2)
 
        BKE_nurbList_free(lb1);
 
-       nu = lb2->first;
+       nu = (Nurb*)lb2->first;
        while (nu) {
                nun = BKE_nurb_duplicate(nu);
                BLI_addtail(lb1, nun);
@@ -703,7 +708,7 @@ void BKE_nurb_points_add(Nurb *nu, int number)
        BPoint *bp;
        int i;
 
-       nu->bp = MEM_recallocN(nu->bp, (nu->pntsu + number) * sizeof(BPoint));
+       nu->bp = (BPoint*)MEM_recallocN(nu->bp, (nu->pntsu + number) * 
sizeof(BPoint));
 
        for (i = 0, bp = &nu->bp[nu->pntsu]; i < number; i++, bp++) {
                bp->radius = 1.0f;
@@ -717,7 +722,7 @@ void BKE_nurb_bezierPoints_add(Nurb *nu, int number)
        BezTriple *bezt;
        int i;
 
-       nu->bezt = MEM_recallocN(nu->bezt, (nu->pntsu + number) * 
sizeof(BezTriple));
+       nu->bezt = (BezTriple*)MEM_recallocN(nu->bezt, (nu->pntsu + number) * 
sizeof(BezTriple));
 
        for (i = 0, bezt = &nu->bezt[nu->pntsu]; i < number; i++, bezt++) {
                bezt->radius = 1.0f;
@@ -950,7 +955,7 @@ static void makeknots(Nurb *nu, short uv)
                        if (nu->knotsu)
                                MEM_freeN(nu->knotsu);
                        if (BKE_nurb_check_valid_u(nu)) {
-                               nu->knotsu = MEM_callocN(4 + sizeof(float) * 
KNOTSU(nu), "makeknots");
+                               nu->knotsu = (float*)MEM_callocN(4 + 
sizeof(float) * KNOTSU(nu), "makeknots");
                                if (nu->flagu & CU_NURB_CYCLIC) {
                                        calcknots(nu->knotsu, nu->pntsu, 
nu->orderu, 0);  /* cyclic should be uniform */
                                        makecyclicknots(nu->knotsu, nu->pntsu, 
nu->orderu);
@@ -966,7 +971,7 @@ static void makeknots(Nurb *nu, short uv)
                        if (nu->knotsv)
                                MEM_freeN(nu->knotsv);
                        if (BKE_nurb_check_valid_v(nu)) {
-                               nu->knotsv = MEM_callocN(4 + sizeof(float) * 
KNOTSV(nu), "makeknots");
+                               nu->knotsv = (float*)MEM_callocN(4 + 
sizeof(float) * KNOTSV(nu), "makeknots");
                                if (nu->flagv & CU_NURB_CYCLIC) {
                                        calcknots(nu->knotsv, nu->pntsv, 
nu->orderv, 0);  /* cyclic should be uniform */
                                        makecyclicknots(nu->knotsv, nu->pntsv, 
nu->orderv);
@@ -1406,7 +1411,7 @@ float *BKE_curve_surf_make_orco(Object *ob)
 {
        /* Note: this function is used in convertblender only atm, so
         * suppose nonzero curve's render resolution should always be used */
-       Curve *cu = ob->data;
+       Curve *cu = (Curve*)ob->data;
        Nurb *nu;
        int a, b, tot = 0;
        int sizeu, sizev;
@@ -1414,7 +1419,7 @@ float *BKE_curve_surf_make_orc

@@ Diff output truncated at 10240 characters. @@

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

Reply via email to