hi,

i have created 2 objects using surface of revolution
in java.

i am having troubles in getting the 3 equations x, y,
z for creating other objects like vase, hour glass,
wine bottle and chess.

so equations for the above objects are welcome

or modification to my java files also welcome.

thanks in advance.

__________________________________________________
Do You Yahoo!?
Get email at your own domain with Yahoo! Mail.
http://personal.mail.yahoo.com/
import java.applet.Applet;
import java.awt.*;
import java.math.*;

public class para2 extends Applet
{
  int uf,vf,i;
  double x,y,z,s,t;
  int e[]={0,-3000,3000}; //eye view {eu,ev,en}
  int u[]=new int[1000];
  int v[]=new int[1000];

  public void paint (Graphics g)
  {
    int xmax=799;
    int ymax=599;
    double p=Math.PI/180;
    s=-180;

    do {
         t=-90; i=1;
      do {
           
x=(double)(4*Math.cos(p*s)*((Math.exp(p*t)+Math.exp(-p*t)*2+Math.pow(p*t,2))));  // 
Longitude
           
z=(double)(2*Math.sin(p*t)*((Math.exp(p*t)+Math.exp(-p*t))/5)*(Math.sin(p*s)*4-Math.pow(p*t,2))/2);
           y=(double)(6*((Math.exp(p*t)-Math.exp(-p*t))/2));                        // 
Latitude
           uf=(int)(xmax/2-30-Math.round(3*(e[2]*x-e[0]*z)/(e[2]-z)));
           vf=(int)(ymax/2+150-Math.round(3*(e[2]*y-e[1]*z)/(e[2]-z)));

           if (t==-90) { u[i]=uf; v[i]=vf; i++; }
           if (s!=-180)
{
             g.drawLine(u[i],v[i],uf,vf);
             g.drawLine(u[i-1],v[i-1],uf,vf);
           }
           u[i]=uf; v[i]=vf;
           t=t+10; i++;         // Longitude interval
       } while (t<180);
       s=s+10;                  // Latitude interval
    } while (s<=180);
  }
}
import java.applet.Applet;
import java.awt.*;
import java.math.*;

public class para1 extends Applet
{
  int uf,vf,i;
  double x,y,z,s,t;
  int e[]={0,-1000,3000}; //eye view {eu,ev,en}
  int u[]=new int[1000];
  int v[]=new int[1000];

  public void paint (Graphics g)
  {
    int xmax=799;
    int ymax=599;
    double p=Math.PI/180;
    s=-180;

    do {
         t=-90; i=1;
      do {
           
x=(double)(4*Math.cos(p*s)*((Math.exp(p*t)+Math.exp(-p*t)*2+Math.pow(p*t,2))/2));  // 
Longitude
           
z=(double)(2*((Math.exp(p*t)+Math.exp(-p*t))/2)*Math.sin(p*s)-Math.pow(p*t,2));
           y=(double)(18*((Math.exp(p*t)-Math.exp(-p*t))/2));                        
// Latitude
           uf=(int)(xmax/2-30-Math.round(2*(e[2]*x-e[0]*z)/(e[2]-z)));
           vf=(int)(ymax/2+150-Math.round(2*(e[2]*y-e[1]*z)/(e[2]-z)));

           if (t==-90) { u[i]=uf; v[i]=vf; i++; }
           if (s!=-180)
{
             g.drawLine(u[i],v[i],uf,vf);
             g.drawLine(u[i-1],v[i-1],uf,vf);
           }
           u[i]=uf; v[i]=vf;
           t=t+10; i++;         // Longitude interval
       } while (t<180);
       s=s+10;                  // Latitude interval
    } while (s<=180);
  }
}

Reply via email to