Ipelib
ipe::Angle Class Reference

`#include <ipegeo.h>`

## Public Member Functions

Angle ()

Angle (double alpha)

operator double () const

double degrees () const

Angle normalize (double lowlimit)

bool liesBetween (Angle small, Angle large) const

## Static Public Member Functions

static Angle Degrees (double alpha)

## Detailed Description

A double that's an angle.

An Angle is really nothing more than a double. Having a separate type is sometimes useful, for instance in the Vector constructor, and this class serves as the right place for a few utility functions. It also makes it clear whether a value is in radians or in degrees.

## ◆ Angle() [1/2]

 ipe::Angle::Angle ( )
inlineexplicit

Construct uninitialized angle.

Referenced by Degrees().

## ◆ Angle() [2/2]

 ipe::Angle::Angle ( double alpha )
inline

## ◆ Degrees()

 static Angle ipe::Angle::Degrees ( double alpha )
inlinestatic

Construct an angle in degrees.

References Angle().

Referenced by ipe::ImlParser::parseStyle().

## ◆ operator double()

 ipe::Angle::operator double ( ) const
inline

## ◆ degrees()

 double Angle::degrees ( ) const

## ◆ normalize()

 Angle Angle::normalize ( double lowlimit )

Normalize the value to the range lowlimit .. lowlimit + 2 pi.

This Angle object is modified, a copy is returned.

Referenced by ipe::Painter::doDrawArc(), ipe::Snap::getLine(), and liesBetween().

## ◆ liesBetween()

 bool Angle::liesBetween ( Angle small, Angle large ) const

When considering the positively oriented circle arc from angle small to large, does it cover this angle?

References normalize().

Referenced by ipe::Arc::bbox(), ipe::Arc::distance(), and ipe::Arc::intersect().

The documentation for this class was generated from the following files:
• ipegeo.h
• ipegeo.cpp