Ejemplo n.º 1
0
 /**
  * Constructor
  *
  * @param loc Location of tip of sector
  * @param _radius Radius of sector (m)
  * @param _startRadial Start radial (degrees), most counter-clockwise
  * @param _endRadial End radial (degrees), most clockwise
  *
  * @return Initialised object
  */
 SectorZone(const GeoPoint &loc, const fixed _radius = fixed(10000.0),
            const Angle _startRadial = Angle::Zero(),
            const Angle _endRadial = Angle::FullCircle())
   :CylinderZone(SECTOR, loc, _radius),
    StartRadial(_startRadial), EndRadial(_endRadial)
 {
   updateSector();
 }
Ejemplo n.º 2
0
 /** 
  * Constructor
  * 
  * @param loc Tip point of sector
  * @param is_turnpoint Whether the sector is a turnpoint, or start/finish
  * 
  * @return Initialised object
  */
 FAISectorZone(const GeoPoint loc, const bool is_turnpoint=true):
   SymmetricSectorZone(FAI_SECTOR, loc,
                       fixed(1000.0 * (is_turnpoint ? 10 : 1)),
                       Angle::radians(fixed_half_pi)),
   m_is_turnpoint(is_turnpoint)
 {
   updateSector();
 }
Ejemplo n.º 3
0
 /**
  * Constructor
  *
  * @param loc Location of tip of sector
  * @param _radius Radius of sector (m)
  * @param _startRadial Start radial (degrees), most counter-clockwise
  * @param _endRadial End radial (degrees), most clockwise
  *
  * @return Initialised object
  */
 AnnularSectorZone(const GeoPoint &loc,
                   const fixed _radiusOuter=fixed(10000.0),
                   const Angle _startRadial = Angle::zero(),
                   const Angle _endRadial = Angle::radians(fixed_two_pi),
                   const fixed _InnerRadius = fixed(0.0)):
   SectorZone(ANNULAR_SECTOR, loc, _radiusOuter, _startRadial, _endRadial),
   InnerRadius(_InnerRadius)
 {
   updateSector();
 }
Ejemplo n.º 4
0
 /**
  * Constructor
  *
  * @param loc Location of tip of sector
  * @param _radius Radius of sector (m)
  * @param _startRadial Start radial (degrees), most counter-clockwise
  * @param _endRadial End radial (degrees), most clockwise
  *
  * @return Initialised object
  */
 SectorZone(const GeoPoint &loc, 
            const fixed _radius=fixed(10000.0),
            const Angle _startRadial = Angle::native(fixed_zero),
            const Angle _endRadial = Angle::radians(fixed_two_pi)):
   CylinderZone(SECTOR, loc, _radius),
   StartRadial(_startRadial),
   EndRadial(_endRadial) 
 {
   updateSector();
 }
Ejemplo n.º 5
0
 /**
  * Set radius property
  *
  * @param new_radius Radius (m) of cylinder
  */
 virtual void setRadius(fixed new_radius) {
   CylinderZone::setRadius(new_radius);
   InnerRadius = std::min(new_radius, InnerRadius);
   updateSector();
 }
Ejemplo n.º 6
0
 /**
  * Set inner radius of annulus
  *
  * @param x Radius (m) of inner boundary
  */
 void setInnerRadius(const fixed new_radius) {
   InnerRadius = new_radius;
   Radius = std::max(Radius, InnerRadius);
   updateSector();
 }
Ejemplo n.º 7
0
void
SectorZone::setEndRadial(const Angle x)
{
    EndRadial = x;
    updateSector();
}
Ejemplo n.º 8
0
void
SectorZone::setStartRadial(const Angle x)
{
    StartRadial = x;
    updateSector();
}
Ejemplo n.º 9
0
 /** 
  * Constructor
  * 
  * @param loc Tip point of sector
  * 
  * @return Initialised object
  */
 BGAEnhancedOptionZone(const GeoPoint loc)
   :KeyholeZone(BGAENHANCEDOPTION, loc, fixed(10000.0),
                Angle::HalfCircle())
 {
   updateSector();
 }
Ejemplo n.º 10
0
 /**
  * Set radius property
  *
  * @param new_radius Radius (m) of cylinder
  */
 virtual void setRadius(fixed new_radius) {
   CylinderZone::setRadius(new_radius);
   updateSector();
 }
Ejemplo n.º 11
0
 /** 
  * Constructor
  * 
  * @param loc Tip point of sector
  * 
  * @return Initialised object
  */
 KeyholeZone(const GeoPoint loc):
   SymmetricSectorZone(KEYHOLE, loc, fixed(10000.0),
                       Angle::radians(fixed_half_pi))
 {
   updateSector();
 }