17         : w(w_), h(h_), pos(pos_), x(x_), y(y_), z(z_), pixelSize(pixSize)
 
   20     void init(
int w_, 
int h_, 
double f_, 
 
   25         pos=pos_; x=x_; y=y_; z=z_;
 
   27     virtual void getRayVector(
const double ix, 
const double iy, 
RVector & rayStart, 
RVector & rayDir) 
const = 0;
 
   28     virtual void getPixelCoords(
const RVector & p, 
double & ix, 
double & iy) 
const = 0;
 
   29     RVector getPos()
 const {
return pos;}
 
   30     RVector getUp()
 const {
return y;}
 
   31     RVector getViewDir()
 const {
return z;}
 
   32     int getImageWidth()
 const {
return w;}
 
   33     int getImageHeight()
 const {
return h;}
 
   34     double getAspect() 
const;
 
   35     virtual double getFoVy()
 const { 
return 0; }
 
   36     double getPixelSize() {
return pixelSize;}
 
   53         : 
Camera(w_, h_, pos_, x_, y_, z_, pixSize), f(f_)
 
   56     void getRayVector(
const double ix, 
const double iy, 
RVector & rayStart, 
RVector & rayDir) 
const;
 
   57     void getPixelCoords(
const RVector & p, 
double & ix, 
double & iy) 
const;
 
   58     double getFoVy() 
const; 
 
   71         : 
Camera(w_, h_, pos_, x_, y_, z_, pixSize)
 
   74     void getRayVector(
const double ix, 
const double iy, 
RVector & rayStart, 
RVector & rayDir) 
const;
 
   75     void getPixelCoords(
const RVector & p, 
double & ix, 
double & iy) 
const;