void System::addTorus(int nn, float4 center, float innerRadius, float outerRadius, float thickness, float4 color, float mass, float innerVel, float outerVel) { float scale = 1.0f; vector<float4> initVel; vector<float4> torus = generateTorus(nn, center,innerRadius, outerRadius, thickness,spacing, scale, innerVel, outerVel,initVel); pushParticles(torus,initVel,color, mass); }
main() { NurbSurface * torus; MakeWindow(); /* Create a window on the screen */ /* Set up the subdivision tolerance (facets span about two pixels) */ SubdivTolerance = 2.0; DrawTriangle = LineTriangle; torus = generateTorus( 1.3, 0.3 ); DrawSubdivision( torus ); /* DrawEvaluation( torus ); */ /* Alternate drawing method */ }
void generateTorusNP(unsigned int slices, unsigned int rows, float radius, float thickness, NPVertex* vertices, unsigned short* indices) { generateTorus(slices,rows,radius,thickness,vertices,indices,sizeof(NPVertex),-1,-1,3 * sizeof(float), 3 * sizeof(float)); }