docs: public void addCamera(Se3_F32 cameraToCommon , LensDistortionWideFOV factory , int width , int height ) {
  		Point2Transform3_F32 p2s = factory.undistortPtoS_F32();
  		Point3Transform2_F32 s2p = factory.distortStoP_F32();
  
  		EquiToCamera equiToCamera = new EquiToCamera(cameraToCommon.getR(),s2p);
  
  		GrayF32 equiMask = new GrayF32(equiWidth, equHeight);
  
  		PixelTransform<Point2D_F32> transformEquiToCam = new PixelTransformCached_F32(equiWidth, equHeight,
  				new PointToPixelTransform_F32(equiToCamera));
  
  		Point3D_F32 p3b = new Point3D_F32();
  		Point2D_F32 p2 = new Point2D_F32();
  
  		for (int row = 0; row < equHeight; row++) {
  			for (int col = 0; col < equiWidth; col++) {
  				equiToCamera.compute(col,row,p2);
  
  				int camX = (int)(p2.x+0.5f);
  				int camY = (int)(p2.y+0.5f);
  
  				if( Double.isNaN(p2.x) || Double.isNaN(p2.y) ||
  						camX < 0 || camY < 0 || camX >= width || camY >= height )
  					continue;
  
  				p2s.compute(p2.x,p2.y,p3b);
  
  				if( Double.isNaN(p3b.x) || Double.isNaN(p3b.y) || Double.isNaN(p3b.z))
  					continue;
  
  				double angle = UtilVector3D_F32.acute(equiToCamera.unitCam,p3b);
  
  				if( angle < maskToleranceAngle) {
  					equiMask.set(col,row,1);
  				}
  			}
  		}
  		cameras.add( new Camera(equiMask, transformEquiToCam));
  	}