Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void Viewer::init_cone()
- {
- float alpha;
- int div=25;
- float step=2*M_PI/div;
- m_cone=Mesh(GL_TRIANGLE_STRIP);
- for(int i=0;i<div+1;i++)
- {
- alpha=i*step;
- m_cone.normal(Vector (cos(alpha)/sqrt(2),1/sqrt(2),sin(alpha)/sqrt(2)));
- m_cone.vertex(Point(cos(alpha),0,sin(alpha)));
- m_cone.vertex(Point(0,1,0));
- }
- }
- void Viewer::init_sphere()
- {
- int divbeta=25;
- int divalpha=divbeta/2;
- float alpha, alpha2, beta;
- m_sphere=Mesh(GL_TRIANGLE_STRIP);
- for(int i=0;i<divalpha;i++)
- {
- alpha=0.5*2*M_PI+float(i)*2*M_PI/divalpha;
- alpha2=0.5*2*M_PI+float(i+1)*2*M_PI/divalpha;
- for(float j= 0 ;j<divbeta;j++)
- {
- beta= j*2*M_PI/divbeta;
- m_sphere.normal(Vector(cos(alpha)*cos(beta),sin(alpha),cos(alpha)*sin(beta)));
- m_sphere.vertex(Point(cos(alpha)*cos(beta),sin(alpha),cos(alpha)*sin(beta)));
- m_sphere.normal(Vector(cos(alpha2)*cos(beta),sin(alpha),cos(alpha2)*sin(beta)));
- m_sphere.vertex(Point(cos(alpha2)*cos(beta),sin(alpha),cos(alpha2)*sin(beta)));
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement