Документ взят из кэша поисковой машины. Адрес оригинального документа : http://astro.uni-altai.ru/~aw/stellarium/api/StelSphereGeometry_8hpp.html
Дата изменения: Unknown
Дата индексирования: Fri Feb 28 07:41:29 2014
Кодировка:

Поисковые слова: m 43
Stellarium: core/StelSphereGeometry.hpp File Reference
Stellarium 0.12.3
Classes | Functions
StelSphereGeometry.hpp File Reference

Define all SphericalGeometry primitives as well as the SphericalRegionP type. More...

#include <QDebug>
#include <QSharedPointer>
#include <QVariant>
#include <QVarLengthArray>
#include <QVector>
#include "OctahedronPolygon.hpp"
#include "renderer/StelVertexBuffer.hpp"
#include "Triplet.hpp"
#include "VecMath.hpp"

Go to the source code of this file.

Classes

class  SphericalRegionP
 A shared pointer on a SphericalRegion. More...
 
class  SphericalRegion
 Abstract class defining a region of the sphere. More...
 
struct  SphericalRegion::DrawParams
 Parameters specifying how to draw a SphericalRegion. More...
 
struct  SphericalRegion::PlainVertex
 3D vertex with only a position. More...
 
struct  SphericalRegion::TexturedVertex
 3D vertex with position and a texture coordinate. More...
 
class  SphericalCap
 A SphericalCap is defined by a direction and an aperture. More...
 
class  SphericalPoint
 Special SphericalRegion for a point on the sphere. More...
 
class  AllSkySphericalRegion
 Special SphericalRegion for the whole sphere. More...
 
class  EmptySphericalRegion
 
class  SphericalPolygon
 
class  SphericalConvexPolygon
 A special case of SphericalPolygon for which the polygon is convex. More...
 
class  SphericalTexturedConvexPolygon
 Extension of SphericalConvexPolygon for textured polygon. More...
 

Functions

 Q_DECLARE_METATYPE (SphericalRegionP)
 
QDataStream & operator<< (QDataStream &out, const SphericalRegionP &region)
 Serialize the passed SphericalRegionP into a binary blob. More...
 
QDataStream & operator>> (QDataStream &in, SphericalRegionP &region)
 Load the SphericalRegionP from a binary blob. More...
 
bool sideHalfSpaceContains (const Vec3d &v1, const Vec3d &v2, const Vec3d &p)
 Return whether the halfspace defined by the vectors v1^v2 and with aperture 90 deg contains the point p. More...
 
bool sideHalfSpaceContains (const Vec3d &v1, const Vec3d &v2, const SphericalCap &h)
 Return whether the halfspace defined by the vectors v1 and v2 contains the SphericalCap h. More...
 
bool sideHalfSpaceIntersects (const Vec3d &v1, const Vec3d &v2, const SphericalCap &h)
 Return whether the halfspace defined by the vectors v1 and v2 intersects the SphericalCap h. More...
 
Vec3d greatCircleIntersection (const Vec3d &p1, const Vec3d &p2, const Vec3d &p3, const Vec3d &p4, bool &ok)
 Compute the intersection of 2 great circles segments. More...
 
Vec3d greatCircleIntersection (const Vec3d &p1, const Vec3d &p2, const Vec3d &nHalfSpace, bool &ok)
 Compute the intersection of a great circles segment with another great circle. More...
 

Detailed Description

Define all SphericalGeometry primitives as well as the SphericalRegionP type.

Definition in file StelSphereGeometry.hpp.

Function Documentation

Vec3d greatCircleIntersection ( const Vec3d p1,
const Vec3d p2,
const Vec3d p3,
const Vec3d p4,
bool &  ok 
)

Compute the intersection of 2 great circles segments.

Parameters
p1Start of the first great circle segment.
p2End of the first great circle segment.
p3Start of the second great circle segment.
p4End of the second great circle segment.
okis set to false if no intersection was found.
Returns
the intersection point on the sphere (normalized) if ok is true, or undefined of ok is false.
Vec3d greatCircleIntersection ( const Vec3d p1,
const Vec3d p2,
const Vec3d nHalfSpace,
bool &  ok 
)

Compute the intersection of a great circles segment with another great circle.

Parameters
p1Start of the great circle segment.
p2End of the great circle segment.
nHalfSpaceNormal of the plane separating half space to intersect with.
okis set to false if no intersection was found.
Returns
the intersection point on the sphere (normalized) if ok is true, or undefined of ok is false.
QDataStream& operator<< ( QDataStream &  out,
const SphericalRegionP region 
)

Serialize the passed SphericalRegionP into a binary blob.

QDataStream& operator>> ( QDataStream &  in,
SphericalRegionP region 
)

Load the SphericalRegionP from a binary blob.

bool sideHalfSpaceContains ( const Vec3d v1,
const Vec3d v2,
const Vec3d p 
)
inline

Return whether the halfspace defined by the vectors v1^v2 and with aperture 90 deg contains the point p.

The comparison is made with a double number slightly smaller than zero to avoid floating point precision errors problems (one test fails if it is set to zero).

Definition at line 637 of file StelSphereGeometry.hpp.

bool sideHalfSpaceContains ( const Vec3d v1,
const Vec3d v2,
const SphericalCap h 
)
inline

Return whether the halfspace defined by the vectors v1 and v2 contains the SphericalCap h.

Definition at line 645 of file StelSphereGeometry.hpp.

bool sideHalfSpaceIntersects ( const Vec3d v1,
const Vec3d v2,
const SphericalCap h 
)
inline

Return whether the halfspace defined by the vectors v1 and v2 intersects the SphericalCap h.

Definition at line 654 of file StelSphereGeometry.hpp.