Пример #1
0
//---------------------------------------------------------------------------
// Simply encapsulates the separate conversions that need to be done
//
void CSpline::genVertArray(tSpline *currSpline)
{
  // cout << "Generating spline vertex array data for OpenGL" << endl;
  
  genVerts    (currSpline);
  genVertIndex(currSpline);
}
Пример #2
0
//generuje job podla parametrov
//flags obsahuje kombinacie SPACE, FLAT, NEAREST, PEREDGECONN, MINEDGECONN
//vylucuju sa (SPACE a FLAT) a (PEREDGECONN a MINEDGECONN)
// pre PEREDGECONN v conn1 je hodnota v %, pre MINEDGECONN je to minimum # susedov pre kazdy vrchol
//eLenAdd je hodnota v % popisana v readme (predlzovanie hrany)
void genJob(unsigned int flags,unsigned int vertNo, unsigned int eLenAdd, unsigned int conn, unsigned int taskId){				

	if (actualJob && sameJob(flags,vertNo,eLenAdd,conn,taskId)) return;//ak uz je uloha pripravena, negeneruje sa znovu
	last_flags = flags;
	last_vertNo = vertNo;
	last_eLenAdd = eLenAdd;
	last_conn = conn;
	last_taskId = taskId;

	deleteActualJob();	//zmaze nagenerovanu ulohu a nastavi actualJob na NULL

	if (badParams(flags,vertNo,eLenAdd,conn,taskId)) return; //skonci a v actualJob necha NULL		

	//vytvorenie struktury
	JOB* j = new JOB;	
	j->taskId = taskId;//zapisanie taskId

	System::Random * random = new System::Random((int)taskId);//priprava generatora

	//generovanie vrcholov
	genVerts(flags,vertNo,j,random);

	//generovanie hran
	genEdges(flags,j,conn,random);

	//dlzky hran
	genEdgesLen(j,eLenAdd,random);

	//stupne vrcholov
	genVertDegs(j);
	
	//start a ciel
	genStartStop(j,random);	

	//return
	actualJob = j;		
}