[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [31247] branches/nurbs-merge: * Minor bugfix on fileread (set trim = NULL)

Sergey Sharybin g.ulairi at gmail.com
Wed Aug 11 17:39:58 CEST 2010


Revision: 31247
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=31247
Author:   nazgul
Date:     2010-08-11 17:39:58 +0200 (Wed, 11 Aug 2010)

Log Message:
-----------
* Minor bugfix on fileread (set trim = NULL)
* Cosmetic code cleaning

Merge rev28408 from nurbs25 branch

Revision Links:
--------------
    http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=28408

Modified Paths:
--------------
    branches/nurbs-merge/intern/nurbana/intern/libNurbana.cpp
    branches/nurbs-merge/intern/nurbana/intern/nbConstruct.cpp
    branches/nurbs-merge/intern/nurbana/intern/nbGenerate.cpp
    branches/nurbs-merge/intern/nurbana/intern/nbGenerate.h
    branches/nurbs-merge/intern/nurbana/intern/nbNURBS.cpp
    branches/nurbs-merge/intern/nurbana/intern/nbNURBS.h
    branches/nurbs-merge/intern/nurbana/intern/nbPrimitives.cpp
    branches/nurbs-merge/intern/nurbana/intern/trim/nbSubDiv.h
    branches/nurbs-merge/source/blender/blenloader/intern/readfile.c
    branches/nurbs-merge/source/blender/editors/curve/editcurve.c
    branches/nurbs-merge/source/blender/makesrna/intern/rna_curve.c

Modified: branches/nurbs-merge/intern/nurbana/intern/libNurbana.cpp
===================================================================
--- branches/nurbs-merge/intern/nurbana/intern/libNurbana.cpp	2010-08-11 15:39:33 UTC (rev 31246)
+++ branches/nurbs-merge/intern/nurbana/intern/libNurbana.cpp	2010-08-11 15:39:58 UTC (rev 31247)
@@ -59,7 +59,8 @@
 
 // Creates a new NURBS object and return a pointer
 NurbanaObj_ptr NRB_addObject(BlenderNurbs_ptr bNurbs) {
-	nbNURBS *on = new nbNURBS((struct BlenderNurbs*)bNurbs);//
+	nbNURBS *on = new nbNURBS((struct BlenderNurbs*)bNurbs);
+	MEM_check_memory_integrity();
 	return on;
 }
 
@@ -137,18 +138,18 @@
 	// TODO, check which dir(s) the change happened and only apply as needed
 	on->Change(0, 1);
 	if (on->getRecalculateKnotVector(0)) {
-		nbGenerate::KnotVector(on, 0);
+		nbGenerate::resetKnotVector(on, 0);
 		on->setRecalculateKnotVector(0, false);
 	}
 	if(newV > 1) {
 		on->Change(1, 1);
 		if (on->getRecalculateKnotVector(1)) {
-			nbGenerate::KnotVector(on, 1);
+			nbGenerate::resetKnotVector(on, 1);
 			on->setRecalculateKnotVector(0, false);
 		}
 	}
 	// Turn off recalc flag flag
-	on->RecalculateKnotVector(0);
+	on->setKnotVectorDirtyflag(0);
 	on->setCacheBuffer();
 }
 
@@ -160,14 +161,14 @@
 	// TODO, check which dir(s) the change happened and only apply as needed
 	on->Change(0,1);
 
-	nbGenerate::KnotVector(on,0);
+	nbGenerate::resetKnotVector(on,0);
 	if(on->Length(1) > 1)
 	{
 		on->Change(1,1);
-		nbGenerate::KnotVector(on,1);
+		nbGenerate::resetKnotVector(on,1);
 	}
 	// Turn off recalc flag flag
-	on->RecalculateKnotVector(0);
+	on->setKnotVectorDirtyflag(0);
 	on->setCacheBuffer();
 }
 
@@ -343,13 +344,13 @@
 
 	curveLen = uv ? on->Length(0): scndLen;
 	curveCount = uv ? scndLen : on->Length(1);
-	NRB_copyPatchFromBuffer(frstPatch+patchOffset, curveLen, newLength, curveCount, scnd, uOffset1, 0);
+//	NRB_copyPatchFromBuffer(frstPatch+patchOffset, curveLen, newLength, curveCount, scnd, uOffset1, 0);
 
-	//NRB_copyPatchFromBuffer(scndPatch, curveLen, newLength, curveCount, scnd, 0, 0);
+	NRB_copyPatchFromBuffer(scndPatch, curveLen, newLength, curveCount, scnd, 0, 0);
 	MEM_freeN(tmpKnots);
 
-	NRB_Print(on);
-	NRB_Print(on2);
+	NRB_Print(frst);
+	NRB_Print(scnd);
 }
 
 /*extern int NRB_loadOpenNURBS(NurbanaObj_ptr nop, char* filename) {
@@ -510,11 +511,11 @@
 	//	else if(type == 9)
 	//	on->setKnotType(uv,NURBS_KV_Custom);
 
-	nbGenerate::KnotVector(on,uv);
+	nbGenerate::resetKnotVector(on,uv);
 	on->Change(1,1);
 	on->Change(0,1);
 	// Turn off recalc flag flag
-	on->RecalculateKnotVector(0);
+	on->setKnotVectorDirtyflag(0);
 	NRB_Print(on);
 }
 
@@ -562,9 +563,9 @@
 	nbNURBS *on;
 	on = reinterpret_cast<nbNURBS*>(nop);
 
-	if(on->RecalculateKnotVector()) {
-		nbGenerate::KnotVector(on);
-		on->RecalculateKnotVector(0);
+	if(on->getKnotVectorDirtyflag()) {
+		nbGenerate::resetKnotVector(on);
+		on->setKnotVectorDirtyflag(0);
 	}
 	//nbGenerate::surface(on,buffer, resU, resV, dim);
 	on->tsslltr->getVertexes(buffer);
@@ -576,9 +577,9 @@
 	nbNURBS *on;
 	on = reinterpret_cast<nbNURBS*>(nop);
 
-	if(on->RecalculateKnotVector()) {
-		nbGenerate::KnotVector(on);
-		on->RecalculateKnotVector(0);
+	if(on->getKnotVectorDirtyflag()) {
+		nbGenerate::resetKnotVector(on);
+		on->setKnotVectorDirtyflag(0);
 	}
 	nbGenerate::curveOnSurface(on,buffer, res, t, uv, dim);
 	return buffer;
@@ -587,12 +588,12 @@
 nbReal* NRB_GenerateCurve(NurbanaObj_ptr nop, nbReal* buffer, nbReal* bevpBuffer, nbReal* tiltBuffer, nbReal* radiusBuffer, int res, int stride) {
 	nbNURBS *on;
 	on = reinterpret_cast<nbNURBS*>(nop);
-	if(on->RecalculateKnotVector()) {
-		nbGenerate::KnotVector(on);
-		on->RecalculateKnotVector(0);
+	if(on->getKnotVectorDirtyflag()) {
+		nbGenerate::resetKnotVector(on);
+		on->setKnotVectorDirtyflag(0);
 	}
 
-	nbGenerate::curve(on,buffer, bevpBuffer, tiltBuffer, radiusBuffer, res, stride, false);
+	nbGenerate::curve(on, buffer, bevpBuffer, tiltBuffer, radiusBuffer, res, stride, false);
 	return buffer;
 }
 nbReal3* NRB_GenerateNormals(NurbanaObj_ptr nop) {

Modified: branches/nurbs-merge/intern/nurbana/intern/nbConstruct.cpp
===================================================================
--- branches/nurbs-merge/intern/nurbana/intern/nbConstruct.cpp	2010-08-11 15:39:33 UTC (rev 31246)
+++ branches/nurbs-merge/intern/nurbana/intern/nbConstruct.cpp	2010-08-11 15:39:58 UTC (rev 31247)
@@ -282,7 +282,7 @@
 	}
 
 	obj3->setCacheBuffer();
-	nbGenerate::KnotVector(obj3);//obj3->RecalculateKnotVector(1);
+	nbGenerate::resetKnotVector(obj3);//obj3->RecalculateKnotVector(1);
 
 	delete tmp1,tmp2;
 	MEM_freeN(kv);

Modified: branches/nurbs-merge/intern/nurbana/intern/nbGenerate.cpp
===================================================================
--- branches/nurbs-merge/intern/nurbana/intern/nbGenerate.cpp	2010-08-11 15:39:33 UTC (rev 31246)
+++ branches/nurbs-merge/intern/nurbana/intern/nbGenerate.cpp	2010-08-11 15:39:58 UTC (rev 31247)
@@ -2,7 +2,7 @@
 //NurbData	nbGenerate::nurbData;
 
 void nbGenerate::curve(nbNURBS *obj, nbReal* buffer, nbReal* bevpBuffer, nbReal* tiltBuffer, nbReal* radiusBuffer, int res, int stride, bool update) {
-	surface(obj, res, 1 , 3, buffer, (nbReal3*)bevpBuffer, tiltBuffer, radiusBuffer, stride, obj->Sum(), 0, 0, update);
+	surface(obj, res, 1 , 3, buffer, (nbReal3*)bevpBuffer, tiltBuffer, radiusBuffer, stride, obj->sum(), 0, 0, update);
 }
 
 void nbGenerate::curveOnSurface(nbNURBS *obj, nbReal* buffer, int res, float t, int uv, int dim) {
@@ -31,15 +31,15 @@
 }
 
 void nbGenerate::surface(nbNURBS *obj, nbReal* buffer, int resU, int resV, int dim) {
-	int Vnpts;
+	int numPtsV;
 
-	Vnpts = obj->Length(1);
+	numPtsV = obj->Length(1);
 
 	// Blender seems to use a different tess for curves and surfaces, numCPu*resU vs resU*resV
-	if(Vnpts == 1) 
-		surface(obj, resU , resV * Vnpts , dim, buffer, NULL, NULL, NULL, 0, obj->Sum(), 0, 0, 1);
+	if(numPtsV == 1) 
+		surface(obj, resU , resV * numPtsV , dim, buffer, NULL, NULL, NULL, 0, obj->sum(), 0, 0, 1);
 	else
-		surface(obj,resU, resV , dim, buffer, NULL, NULL, NULL, 0, obj->Sum(), 0, 0, 1);
+		surface(obj,resU, resV , dim, buffer, NULL, NULL, NULL, 0, obj->sum(), 0, 0, 1);
 }
 
 void nbGenerate::isoLines(nbNURBS *obj, nbReal* buffer) {
@@ -51,15 +51,15 @@
 	surface(obj,obj->getIsoilineResolution(),obj->getIsolineDensity(), 3, buffer, NULL, NULL, NULL, 0, obj->SumIPC(1),obj->getIsoilineResolution()*obj->getIsolineDensity(),0,0);
 }
 
-void nbGenerate::surface(nbNURBS *obj, int origTessU, int origTessV, int dim, nbReal *TssPts, nbReal3 *bevpBuffer, nbReal *tiltBuffer, nbReal *radiusBuffer, int stride, nbReal *Sum, int index, bool Change, bool Update) {
-	int n,k,l,m,j,j0;
+void nbGenerate::surface(nbNURBS *obj, int origTessU, int origTessV, int dim, nbReal *tessPts, nbReal3 *bevpBuffer, nbReal *tiltBuffer, nbReal *radiusBuffer, int stride, nbReal *sum, int index, bool Change, bool Update) {
+	int n,k,l,m,j;//,j0;
 	nbReal BasisResult;
-	int i, OrderU, OrderV, Unpts, Vnpts, extraPntsU, extraPntsV,CyclicU,CyclicV;
+	int i, orderU, orderV, numPtsU, numPtsV, extraPntsU, extraPntsV, cyclicU, cyclicV;
 	bool recalc;
-	nbReal **BasisU = NULL;
-	nbReal **BasisV = NULL;
-	nbReal3 *TssPts3 = NULL;
-	nbReal4 *TssPts4 = NULL;
+	nbReal **basisU = NULL;
+	nbReal **basisV = NULL;
+	nbReal3 *tssPts3 = NULL;
+	nbReal4 *tssPts4 = NULL;
 
 	int tessU = origTessU;
 	int tessV = origTessV;
@@ -67,89 +67,89 @@
 	nbReal3 *bevp_fp = bevpBuffer;
 	nbReal *tilt_fp= tiltBuffer, *radius_fp= radiusBuffer;
 
-	Unpts = obj->Length(0);
-	Vnpts = obj->Length(1);
-	OrderU = obj->getOrder(0);	
-	OrderV = obj->getOrder(1);
-	CyclicU = obj->Cyclic(0);
-	CyclicV = obj->Cyclic(1);
+	numPtsU = obj->Length(0);
+	numPtsV = obj->Length(1);
+	orderU = obj->getOrder(0);	
+	orderV = obj->getOrder(1);
+	cyclicU = obj->Cyclic(0);
+	cyclicV = obj->Cyclic(1);
 	extraPntsU = 0;
 	extraPntsV = 0;
 
-	if(CyclicU)
-		extraPntsU = OrderU - 1;
-	if(CyclicV)
-		extraPntsV = OrderV - 1;
+	if(cyclicU)
+		extraPntsU = orderU - 1;
+	if(cyclicV)
+		extraPntsV = orderV - 1;
 
-	if(Vnpts <= 1)
+	if(numPtsV <= 1)
 		tessV = 1;
 
-	BasisU = (nbReal **)MEM_callocN(sizeof(nbReal*) * tessU,"BasisU");
+	basisU = (nbReal **)MEM_callocN(sizeof(nbReal*) * tessU,"basisU");
 	for(i = 0; i < tessU; i++) {
-		BasisU[i] = (nbReal*)MEM_callocN(sizeof(nbReal)*(Unpts+extraPntsU),"BasisU[i]");
+		basisU[i] = (nbReal*)MEM_callocN(sizeof(nbReal)*(numPtsU+extraPntsU),"basisU[i]");
 	}
-	BasisV = (nbReal **)MEM_callocN(sizeof(nbReal*) * tessV,"BasisV");
+	basisV = (nbReal **)MEM_callocN(sizeof(nbReal*) * tessV,"basisV");
 	for(i = 0; i < tessV; i++) {
-		BasisV[i] = (nbReal*)MEM_callocN(sizeof(nbReal)*(Vnpts+extraPntsV),"BasisV[i]");
+		basisV[i] = (nbReal*)MEM_callocN(sizeof(nbReal)*(numPtsV+extraPntsV),"basisV[i]");
 	}
 
 	if(Update == false || Change==1) 
 		recalc = 1;
 	else 
-		recalc = (obj->Change(Change) != Unpts+Vnpts+OrderU+OrderV+tessU+tessV+CyclicU+CyclicV);
-	obj->Change(Change,Unpts+Vnpts+OrderU+OrderV+tessU+tessV+CyclicU+CyclicV);
+		recalc = (obj->Change(Change) != numPtsU+numPtsV+orderU+orderV+tessU+tessV+cyclicU+cyclicV);
+	obj->Change(Change,numPtsU+numPtsV+orderU+orderV+tessU+tessV+cyclicU+cyclicV);
 
 	// Allocate memory for temp
-	int tempSize = nbMath::Max(OrderU + Unpts + extraPntsU, OrderV + Vnpts + extraPntsV);
+	int tempSize = nbMath::Max(orderU + numPtsU + extraPntsU, orderV + numPtsV + extraPntsV);
 	nbReal *tempForBasis = (nbReal *) MEM_callocN(sizeof(nbReal) * tempSize, "surface() tempForBasis");
 	// Recalculate Basis Functions
 	if(recalc) {
 
-		nbReal endU = (obj->getKnotVector(0)[Unpts + extraPntsU]);
-		nbReal startU = (obj->getKnotVector(0)[(OrderU-1)]);
-		int extra = CyclicU ? 1 : 0;
+		nbReal endU = (obj->getKnotVector(0)[numPtsU + extraPntsU]);
+		nbReal startU = (obj->getKnotVector(0)[(orderU-1)]);
+		int extra = cyclicU ? 1 : 0;
 		nbReal stepU = (endU - startU)/((tessU-1) + extra);
 		nbReal t = startU;
 
 		for(i = 0; i < tessU; i++) { 
-			NURBSBasis(OrderU, t, (Unpts+extraPntsU),Unpts, obj->getKnotVector(0), obj->getCtlPts(), BasisU[i], 1, tempForBasis);
+			NURBSBasis(orderU, t, (numPtsU+extraPntsU),numPtsU, obj->getKnotVector(0), obj->getCtlPts(), basisU[i], 1, tempForBasis);
 			t += stepU;
 		}
 
 		nbReal endV, startV, stepV, tv;
-		if(Vnpts == 1)
+		if(numPtsV == 1)
 			endV = startV = stepV = tv = 0; // these values aren't used in NURBSBasis below for curves
 		else{

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list