Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

Arroyo::hexagonal_aperture Class Reference

#include <aperture.h>

Inheritance diagram for Arroyo::hexagonal_aperture:

Arroyo::aperture Arroyo::plane_optic Arroyo::one_to_one_optic Arroyo::optic Arroyo::three_frame Arroyo::optic Arroyo::AO_sim_base Arroyo::three_point Arroyo::AO_sim_base List of all members.

Public Member Functions

 hexagonal_aperture ()
 hexagonal_aperture (const hexagonal_aperture &hexagonal_ap)
 hexagonal_aperture (const char *filename)
 hexagonal_aperture (const iofits &iof)
 hexagonal_aperture (double in_edge_length)
 ~hexagonal_aperture ()
hexagonal_apertureoperator= (const hexagonal_aperture &hexagonal_ap)
hexagonal_apertureclone () const
virtual void read (const char *filename)
virtual void read (const iofits &iof)
virtual void write (const char *filename) const
virtual void write (iofits &iof) const
void print (ostream &os, const char *prefix="") const
double get_edge_length () const
rectangular_region get_covering_region (const three_frame &tf) const
virtual void transform (diffractive_wavefront< float > &wf) const
virtual void transform (diffractive_wavefront< double > &wf) const
double convex_polygon_overlap (const vector< three_point > &polygon_vertices) const

Protected Attributes

double edge_length
 The length of an edge.

Detailed Description

A class to represent a hexagonal aperture.


Constructor & Destructor Documentation

Arroyo::hexagonal_aperture::hexagonal_aperture  ) 
 

Null constructor

Arroyo::hexagonal_aperture::hexagonal_aperture const hexagonal_aperture hexagonal_ap  ) 
 

Copy constructor

Arroyo::hexagonal_aperture::hexagonal_aperture const char *  filename  ) 
 

Construct from file

Arroyo::hexagonal_aperture::hexagonal_aperture const iofits iof  ) 
 

Construct from iofits object

Arroyo::hexagonal_aperture::hexagonal_aperture double  in_edge_length  ) 
 

Construct from the bits

The edge length should be specified in meters

Arroyo::hexagonal_aperture::~hexagonal_aperture  )  [inline]
 

Destructor


Member Function Documentation

hexagonal_aperture* Arroyo::hexagonal_aperture::clone  )  const [inline, virtual]
 

Clone method

Calling routine is responsible for deleting memory

Implements Arroyo::aperture.

double Arroyo::hexagonal_aperture::convex_polygon_overlap const vector< three_point > &  polygon_vertices  )  const [virtual]
 

Return the overlapping area between a convex polygon and the hexagonal aperture

The vertices of the polygon must lie in the plane of the aperture, or this function throws an error

Implements Arroyo::aperture.

rectangular_region Arroyo::hexagonal_aperture::get_covering_region const three_frame tf  )  const [virtual]
 

Get a rectangular region guaranteed to cover the aperture. The resulting region will have its edges aligned with the x and y axes of the three_frame tf.

If foreshortening is on, the projected region is guaranteed to cover the optic

If the z axis of the three_frame is orthogonal to the z axis of the aperture, this function throws an error

Implements Arroyo::optic.

double Arroyo::hexagonal_aperture::get_edge_length  )  const [inline]
 

Return the edge length

Length returned in meters

hexagonal_aperture& Arroyo::hexagonal_aperture::operator= const hexagonal_aperture hexagonal_ap  ) 
 

Operator =

void Arroyo::hexagonal_aperture::print ostream &  os,
const char *  prefix = ""
const [virtual]
 

Print

Reimplemented from Arroyo::aperture.

virtual void Arroyo::hexagonal_aperture::read const iofits iof  )  [virtual]
 

Read from an iofits object

Implements Arroyo::aperture.

virtual void Arroyo::hexagonal_aperture::read const char *  filename  )  [virtual]
 

Read from file

Implements Arroyo::aperture.

virtual void Arroyo::hexagonal_aperture::transform diffractive_wavefront< double > &  wf  )  const [virtual]
 

Apply the aperture to the wavefront

Implements Arroyo::one_to_one_optic.

virtual void Arroyo::hexagonal_aperture::transform diffractive_wavefront< float > &  wf  )  const [virtual]
 

Apply the aperture to the wavefront

Implements Arroyo::one_to_one_optic.

virtual void Arroyo::hexagonal_aperture::write iofits iof  )  const [virtual]
 

Write to an iofits object

Implements Arroyo::aperture.

virtual void Arroyo::hexagonal_aperture::write const char *  filename  )  const [virtual]
 

Write to file

Implements Arroyo::aperture.


Member Data Documentation

double Arroyo::hexagonal_aperture::edge_length [protected]
 

The length of an edge.


The documentation for this class was generated from the following file:
Generated on Thu Nov 29 17:16:33 2007 for arroyo by  doxygen 1.3.9.1