| 
    DGtal 1.4.0
    
   | 
 
Aim: Represent a triangle drawn onto a sphere of radius 1. More...
#include <DGtal/geometry/tools/SphericalTriangle.h>
Public Member Functions | |
| ~SphericalTriangle () | |
| SphericalTriangle (const RealVector &va, const RealVector &vb, const RealVector &vc, bool normalize=true) | |
| Default constructor. The object is invalid.   | |
| SphericalTriangle (const SphericalTriangle &other)=default | |
| SphericalTriangle & | operator= (const SphericalTriangle &other)=default | 
| const RealVector & | A () const | 
| const RealVector & | B () const | 
| const RealVector & | C () const | 
| void | setA (const RealVector &va, bool normalize=true) | 
| void | setB (const RealVector &vb, bool normalize=true) | 
| void | setC (const RealVector &vc, bool normalize=true) | 
| bool | isDegenerate () const | 
| Self | polarTriangle () const | 
| void | interiorAngles (Scalar &alpha, Scalar &beta, Scalar &gamma) const | 
| Scalar | area () const | 
| Scalar | algebraicArea () const | 
Protected Attributes | |
| RealVector | myA | 
| The point A of the triangle ABC, of unit length.   | |
| RealVector | myB | 
| The point B of the triangle ABC, of unit length.   | |
| RealVector | myC | 
| The point C of the triangle ABC, of unit length.   | |
Private Types | |
| typedef TSpace | Space | 
| typedef SphericalTriangle< Space > | Self | 
| typedef Space::RealPoint | RealPoint | 
| typedef Space::RealVector | RealVector | 
| typedef RealVector::Component | Scalar | 
Private Member Functions | |
| BOOST_CONCEPT_ASSERT ((concepts::CSpace< TSpace >)) | |
| BOOST_STATIC_ASSERT ((Space::dimension==3)) | |
Aim: Represent a triangle drawn onto a sphere of radius 1.
Description of class 'SphericalTriangle'
| TSpace | any type of 3-dimensional digital space. | 
Definition at line 61 of file SphericalTriangle.h.
      
  | 
  private | 
Definition at line 66 of file SphericalTriangle.h.
      
  | 
  private | 
Definition at line 67 of file SphericalTriangle.h.
      
  | 
  private | 
Definition at line 68 of file SphericalTriangle.h.
      
  | 
  private | 
Definition at line 65 of file SphericalTriangle.h.
      
  | 
  private | 
Definition at line 64 of file SphericalTriangle.h.
      
  | 
  inline | 
      
  | 
  inline | 
Default constructor. The object is invalid.
Definition at line 82 of file SphericalTriangle.h.
References DGtal::SphericalTriangle< TSpace >::setA(), DGtal::SphericalTriangle< TSpace >::setB(), and DGtal::SphericalTriangle< TSpace >::setC().
      
  | 
  default | 
Copy constructor.
| other | the object to clone. | 
      
  | 
  inline | 
Definition at line 104 of file SphericalTriangle.h.
References DGtal::SphericalTriangle< TSpace >::myA.
Referenced by DGtal::SphericalTriangle< TSpace >::interiorAngles().
      
  | 
  inline | 
Definition at line 217 of file SphericalTriangle.h.
References DGtal::SphericalTriangle< TSpace >::area(), DGtal::crossProduct(), DGtal::PointVector< dim, TEuclideanRing, TContainer >::dot(), DGtal::SphericalTriangle< TSpace >::myA, DGtal::SphericalTriangle< TSpace >::myB, DGtal::SphericalTriangle< TSpace >::myC, and DGtal::PointVector< dim, TEuclideanRing, TContainer >::norm1().
Referenced by DGtal::CorrectedNormalCurrentFormula< TRealPoint, TRealVector >::mu2InterpolatedU().
      
  | 
  inline | 
Definition at line 207 of file SphericalTriangle.h.
References DGtal::SphericalTriangle< TSpace >::interiorAngles(), and DGtal::SphericalTriangle< TSpace >::isDegenerate().
Referenced by DGtal::SphericalTriangle< TSpace >::algebraicArea().
      
  | 
  inline | 
Definition at line 106 of file SphericalTriangle.h.
References DGtal::SphericalTriangle< TSpace >::myB.
Referenced by DGtal::SphericalTriangle< TSpace >::interiorAngles().
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  inline | 
Definition at line 108 of file SphericalTriangle.h.
References DGtal::SphericalTriangle< TSpace >::myC.
Referenced by DGtal::SphericalTriangle< TSpace >::interiorAngles().
      
  | 
  inline | 
Returns the interior angles of the spherical triangle ABC.
| [out] | alpha | the interior angle at vertex A. | 
| [out] | beta | the interior angle at vertex B. | 
| [out] | gamma | the interior angle at vertex C. | 
Definition at line 190 of file SphericalTriangle.h.
References DGtal::SphericalTriangle< TSpace >::A(), DGtal::SphericalTriangle< TSpace >::B(), DGtal::SphericalTriangle< TSpace >::C(), DGtal::PointVector< dim, TEuclideanRing, TContainer >::dot(), DGtal::SphericalTriangle< TSpace >::polarTriangle(), and DGtal::PointVector< dim, TEuclideanRing, TContainer >::zero.
Referenced by DGtal::SphericalTriangle< TSpace >::area().
      
  | 
  inline | 
Definition at line 158 of file SphericalTriangle.h.
References DGtal::SphericalTriangle< TSpace >::myA, DGtal::SphericalTriangle< TSpace >::myB, and DGtal::SphericalTriangle< TSpace >::myC.
Referenced by DGtal::SphericalTriangle< TSpace >::area().
      
  | 
  default | 
Assignment.
| other | the object to copy. | 
      
  | 
  inline | 
Definition at line 174 of file SphericalTriangle.h.
References DGtal::PointVector< dim, TEuclideanRing, TContainer >::crossProduct(), DGtal::SphericalTriangle< TSpace >::myA, DGtal::SphericalTriangle< TSpace >::myB, and DGtal::SphericalTriangle< TSpace >::myC.
Referenced by DGtal::SphericalTriangle< TSpace >::interiorAngles().
      
  | 
  inline | 
Sets the point A of the triangle.
| va | the new point A | 
| normalize | if true, force normalization, otherwise va should be of unit length. | 
Definition at line 115 of file SphericalTriangle.h.
References DGtal::SphericalTriangle< TSpace >::myA, DGtal::PointVector< dim, TEuclideanRing, TContainer >::norm(), and DGtal::PointVector< dim, TEuclideanRing, TContainer >::zero.
Referenced by DGtal::SphericalTriangle< TSpace >::SphericalTriangle().
      
  | 
  inline | 
Sets the point B of the triangle.
| vb | the new point B | 
| normalize | if true, force normalization, otherwise vb should be of unit length. | 
Definition at line 131 of file SphericalTriangle.h.
References DGtal::SphericalTriangle< TSpace >::myB, DGtal::PointVector< dim, TEuclideanRing, TContainer >::norm(), and DGtal::PointVector< dim, TEuclideanRing, TContainer >::zero.
Referenced by DGtal::SphericalTriangle< TSpace >::SphericalTriangle().
      
  | 
  inline | 
Sets the point C of the triangle.
| vc | the new point C | 
| normalize | if true, force normalization, otherwise vc should be of unit length. | 
Definition at line 146 of file SphericalTriangle.h.
References DGtal::SphericalTriangle< TSpace >::myC, DGtal::PointVector< dim, TEuclideanRing, TContainer >::norm(), and DGtal::PointVector< dim, TEuclideanRing, TContainer >::zero.
Referenced by DGtal::SphericalTriangle< TSpace >::SphericalTriangle().
      
  | 
  protected | 
The point A of the triangle ABC, of unit length.
Definition at line 231 of file SphericalTriangle.h.
Referenced by DGtal::SphericalTriangle< TSpace >::A(), DGtal::SphericalTriangle< TSpace >::algebraicArea(), DGtal::SphericalTriangle< TSpace >::isDegenerate(), DGtal::SphericalTriangle< TSpace >::polarTriangle(), and DGtal::SphericalTriangle< TSpace >::setA().
      
  | 
  protected | 
The point B of the triangle ABC, of unit length.
Definition at line 233 of file SphericalTriangle.h.
Referenced by DGtal::SphericalTriangle< TSpace >::algebraicArea(), DGtal::SphericalTriangle< TSpace >::B(), DGtal::SphericalTriangle< TSpace >::isDegenerate(), DGtal::SphericalTriangle< TSpace >::polarTriangle(), and DGtal::SphericalTriangle< TSpace >::setB().
      
  | 
  protected | 
The point C of the triangle ABC, of unit length.
Definition at line 235 of file SphericalTriangle.h.
Referenced by DGtal::SphericalTriangle< TSpace >::algebraicArea(), DGtal::SphericalTriangle< TSpace >::C(), DGtal::SphericalTriangle< TSpace >::isDegenerate(), DGtal::SphericalTriangle< TSpace >::polarTriangle(), and DGtal::SphericalTriangle< TSpace >::setC().