Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QDoubleVector3D Class Reference

#include <qdoublevector3d_p.h>

+ Collaboration diagram for QDoubleVector3D:

Public Member Functions

Q_DECL_CONSTEXPR QDoubleVector3D ()
 
Q_DECL_CONSTEXPR QDoubleVector3D (double xpos, double ypos, double zpos)
 
Q_DECL_CONSTEXPR QDoubleVector3D (const QDoubleVector2D &vector)
 
Q_DECL_CONSTEXPR QDoubleVector3D (const QDoubleVector2D &vector, double zpos)
 
bool isNull () const
 
Q_DECL_CONSTEXPR double x () const
 
Q_DECL_CONSTEXPR double y () const
 
Q_DECL_CONSTEXPR double z () const
 
void setX (double x)
 
void setY (double y)
 
void setZ (double z)
 
double get (int i) const
 
void set (int i, double value)
 
double length () const
 
Q_DECL_CONSTEXPR double lengthSquared () const
 
QDoubleVector3D normalized () const
 
void normalize ()
 
QDoubleVector3Doperator+= (const QDoubleVector3D &vector)
 
QDoubleVector3Doperator-= (const QDoubleVector3D &vector)
 
QDoubleVector3Doperator*= (double factor)
 
QDoubleVector3Doperator*= (const QDoubleVector3D &vector)
 
QDoubleVector3Doperator/= (double divisor)
 
double distanceToPlane (const QDoubleVector3D &plane, const QDoubleVector3D &normal) const
 
double distanceToPlane (const QDoubleVector3D &plane1, const QDoubleVector3D &plane2, const QDoubleVector3D &plane3) const
 
double distanceToLine (const QDoubleVector3D &point, const QDoubleVector3D &direction) const
 
Q_DECL_CONSTEXPR QDoubleVector2D toVector2D () const
 

Static Public Member Functions

static Q_DECL_CONSTEXPR double dotProduct (const QDoubleVector3D &v1, const QDoubleVector3D &v2)
 
static Q_DECL_CONSTEXPR QDoubleVector3D crossProduct (const QDoubleVector3D &v1, const QDoubleVector3D &v2)
 
static QDoubleVector3D normal (const QDoubleVector3D &v1, const QDoubleVector3D &v2)
 
static QDoubleVector3D normal (const QDoubleVector3D &v1, const QDoubleVector3D &v2, const QDoubleVector3D &v3)
 

Friends

class QDoubleVector2D
 
Q_DECL_CONSTEXPR bool operator== (const QDoubleVector3D &v1, const QDoubleVector3D &v2)
 
Q_DECL_CONSTEXPR bool operator!= (const QDoubleVector3D &v1, const QDoubleVector3D &v2)
 
Q_DECL_CONSTEXPR const QDoubleVector3D operator+ (const QDoubleVector3D &v1, const QDoubleVector3D &v2)
 
Q_DECL_CONSTEXPR const QDoubleVector3D operator- (const QDoubleVector3D &v1, const QDoubleVector3D &v2)
 
Q_DECL_CONSTEXPR const QDoubleVector3D operator* (double factor, const QDoubleVector3D &vector)
 
Q_DECL_CONSTEXPR const QDoubleVector3D operator* (const QDoubleVector3D &vector, double factor)
 
Q_DECL_CONSTEXPR const QDoubleVector3D operator* (const QDoubleVector3D &v1, const QDoubleVector3D &v2)
 
Q_DECL_CONSTEXPR const QDoubleVector3D operator- (const QDoubleVector3D &vector)
 
Q_DECL_CONSTEXPR const QDoubleVector3D operator/ (const QDoubleVector3D &vector, double divisor)
 
Q_DECL_CONSTEXPR bool qFuzzyCompare (const QDoubleVector3D &v1, const QDoubleVector3D &v2)
 

Detailed Description

Definition at line 28 of file qdoublevector3d_p.h.

Constructor & Destructor Documentation

◆ QDoubleVector3D() [1/4]

Q_DECL_CONSTEXPR QDoubleVector3D::QDoubleVector3D ( )
inline

Definition at line 99 of file qdoublevector3d_p.h.

Referenced by normalized().

+ Here is the caller graph for this function:

◆ QDoubleVector3D() [2/4]

Q_DECL_CONSTEXPR QDoubleVector3D::QDoubleVector3D ( double xpos,
double ypos,
double zpos )
inline

Definition at line 101 of file qdoublevector3d_p.h.

◆ QDoubleVector3D() [3/4]

Q_DECL_CONSTEXPR QDoubleVector3D::QDoubleVector3D ( const QDoubleVector2D & vector)
inline

Definition at line 103 of file qdoublevector3d_p.h.

◆ QDoubleVector3D() [4/4]

Q_DECL_CONSTEXPR QDoubleVector3D::QDoubleVector3D ( const QDoubleVector2D & vector,
double zpos )
inline

Definition at line 106 of file qdoublevector3d_p.h.

Member Function Documentation

◆ crossProduct()

static Q_DECL_CONSTEXPR QDoubleVector3D QDoubleVector3D::crossProduct ( const QDoubleVector3D & v1,
const QDoubleVector3D & v2 )
inlinestatic

Definition at line 64 of file qdoublevector3d_p.h.

Referenced by QDoubleMatrix4x4::lookAt(), normal(), normal(), and QGeoProjectionWebMercator::Plane::planeXYIntersection().

+ Here is the caller graph for this function:

◆ distanceToLine()

double QDoubleVector3D::distanceToLine ( const QDoubleVector3D & point,
const QDoubleVector3D & direction ) const

Definition at line 59 of file qdoublevector3d.cpp.

References direction, dotProduct, and length().

+ Here is the call graph for this function:

◆ distanceToPlane() [1/2]

double QDoubleVector3D::distanceToPlane ( const QDoubleVector3D & plane,
const QDoubleVector3D & normal ) const

◆ distanceToPlane() [2/2]

double QDoubleVector3D::distanceToPlane ( const QDoubleVector3D & plane1,
const QDoubleVector3D & plane2,
const QDoubleVector3D & plane3 ) const

Definition at line 52 of file qdoublevector3d.cpp.

References dotProduct, and normal().

+ Here is the call graph for this function:

◆ dotProduct()

static Q_DECL_CONSTEXPR double QDoubleVector3D::dotProduct ( const QDoubleVector3D & v1,
const QDoubleVector3D & v2 )
inlinestatic

Definition at line 61 of file qdoublevector3d_p.h.

Referenced by QDeclarativeGeoMapItemUtils::greaterCirclePath(), QGeoProjectionWebMercator::isProjectable(), and QGeoProjectionWebMercator::Plane::lineIntersection().

+ Here is the caller graph for this function:

◆ get()

double QDoubleVector3D::get ( int i) const
inline

Definition at line 126 of file qdoublevector3d_p.h.

References i.

◆ isNull()

bool QDoubleVector3D::isNull ( ) const
inline

Definition at line 109 of file qdoublevector3d_p.h.

References qIsNull().

+ Here is the call graph for this function:

◆ length()

double QDoubleVector3D::length ( ) const

Definition at line 68 of file qdoublevector3d.cpp.

References qSqrt().

Referenced by distanceToLine().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ lengthSquared()

Q_DECL_CONSTEXPR double QDoubleVector3D::lengthSquared ( ) const
inline

Definition at line 118 of file qdoublevector3d_p.h.

◆ normal() [1/2]

QDoubleVector3D QDoubleVector3D::normal ( const QDoubleVector3D & v1,
const QDoubleVector3D & v2 )
static

Definition at line 41 of file qdoublevector3d.cpp.

References crossProduct().

Referenced by QGeoCameraTilesPrivate::createFrustum(), distanceToPlane(), and QGeoTiledMapScenePrivate::setupCamera().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ normal() [2/2]

QDoubleVector3D QDoubleVector3D::normal ( const QDoubleVector3D & v1,
const QDoubleVector3D & v2,
const QDoubleVector3D & v3 )
static

Definition at line 46 of file qdoublevector3d.cpp.

References crossProduct().

+ Here is the call graph for this function:

◆ normalize()

void QDoubleVector3D::normalize ( )

Definition at line 25 of file qdoublevector3d.cpp.

References qFuzzyIsNull(), and qSqrt().

Referenced by QGeoCameraTilesPrivate::createFrustum(), QDoubleMatrix4x4::lookAt(), and QGeoProjectionWebMercator::viewportToWrappedMapProjection().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ normalized()

QT_BEGIN_NAMESPACE QDoubleVector3D QDoubleVector3D::normalized ( ) const

Definition at line 11 of file qdoublevector3d.cpp.

References QDoubleVector3D(), qFuzzyIsNull(), and qSqrt().

+ Here is the call graph for this function:

◆ operator*=() [1/2]

QDoubleVector3D & QDoubleVector3D::operator*= ( const QDoubleVector3D & vector)
inline

Definition at line 181 of file qdoublevector3d_p.h.

References vector.

◆ operator*=() [2/2]

QDoubleVector3D & QDoubleVector3D::operator*= ( double factor)
inline

Definition at line 173 of file qdoublevector3d_p.h.

◆ operator+=()

QDoubleVector3D & QDoubleVector3D::operator+= ( const QDoubleVector3D & vector)
inline

Definition at line 157 of file qdoublevector3d_p.h.

References vector.

◆ operator-=()

QDoubleVector3D & QDoubleVector3D::operator-= ( const QDoubleVector3D & vector)
inline

Definition at line 165 of file qdoublevector3d_p.h.

References vector.

◆ operator/=()

QDoubleVector3D & QDoubleVector3D::operator/= ( double divisor)
inline

Definition at line 189 of file qdoublevector3d_p.h.

◆ set()

void QDoubleVector3D::set ( int i,
double value )
inline

Definition at line 140 of file qdoublevector3d_p.h.

References i.

◆ setX()

void QDoubleVector3D::setX ( double x)
inline

Definition at line 122 of file qdoublevector3d_p.h.

Referenced by QGeoTiledMapRootNode::updateTiles().

+ Here is the caller graph for this function:

◆ setY()

void QDoubleVector3D::setY ( double y)
inline

Definition at line 123 of file qdoublevector3d_p.h.

◆ setZ()

void QDoubleVector3D::setZ ( double z)
inline

Definition at line 124 of file qdoublevector3d_p.h.

◆ toVector2D()

Q_DECL_CONSTEXPR QDoubleVector2D QDoubleVector3D::toVector2D ( ) const
inline

Definition at line 249 of file qdoublevector3d_p.h.

References QDoubleVector2D.

◆ x()

Q_DECL_CONSTEXPR double QDoubleVector3D::x ( ) const
inline

Definition at line 114 of file qdoublevector3d_p.h.

Referenced by QDoubleMatrix4x4::lookAt(), and QGeoProjectionWebMercator::viewportToWrappedMapProjection().

+ Here is the caller graph for this function:

◆ y()

Q_DECL_CONSTEXPR double QDoubleVector3D::y ( ) const
inline

Definition at line 115 of file qdoublevector3d_p.h.

Referenced by QDoubleMatrix4x4::lookAt(), and QGeoProjectionWebMercator::viewportToWrappedMapProjection().

+ Here is the caller graph for this function:

◆ z()

Q_DECL_CONSTEXPR double QDoubleVector3D::z ( ) const
inline

Definition at line 116 of file qdoublevector3d_p.h.

Referenced by QDoubleMatrix4x4::lookAt().

+ Here is the caller graph for this function:

Friends And Related Symbol Documentation

◆ operator!=

Q_DECL_CONSTEXPR bool operator!= ( const QDoubleVector3D & v1,
const QDoubleVector3D & v2 )
friend

Definition at line 202 of file qdoublevector3d_p.h.

◆ operator* [1/3]

Q_DECL_CONSTEXPR const QDoubleVector3D operator* ( const QDoubleVector3D & v1,
const QDoubleVector3D & v2 )
friend

Definition at line 227 of file qdoublevector3d_p.h.

◆ operator* [2/3]

Q_DECL_CONSTEXPR const QDoubleVector3D operator* ( const QDoubleVector3D & vector,
double factor )
friend

Definition at line 222 of file qdoublevector3d_p.h.

◆ operator* [3/3]

Q_DECL_CONSTEXPR const QDoubleVector3D operator* ( double factor,
const QDoubleVector3D & vector )
friend

Definition at line 217 of file qdoublevector3d_p.h.

◆ operator+

Q_DECL_CONSTEXPR const QDoubleVector3D operator+ ( const QDoubleVector3D & v1,
const QDoubleVector3D & v2 )
friend

Definition at line 207 of file qdoublevector3d_p.h.

◆ operator- [1/2]

Q_DECL_CONSTEXPR const QDoubleVector3D operator- ( const QDoubleVector3D & v1,
const QDoubleVector3D & v2 )
friend

Definition at line 212 of file qdoublevector3d_p.h.

◆ operator- [2/2]

Q_DECL_CONSTEXPR const QDoubleVector3D operator- ( const QDoubleVector3D & vector)
friend

Definition at line 232 of file qdoublevector3d_p.h.

◆ operator/

Q_DECL_CONSTEXPR const QDoubleVector3D operator/ ( const QDoubleVector3D & vector,
double divisor )
friend

Definition at line 237 of file qdoublevector3d_p.h.

◆ operator==

Q_DECL_CONSTEXPR bool operator== ( const QDoubleVector3D & v1,
const QDoubleVector3D & v2 )
friend

Definition at line 197 of file qdoublevector3d_p.h.

◆ QDoubleVector2D

friend class QDoubleVector2D
friend

Definition at line 94 of file qdoublevector3d_p.h.

Referenced by toVector2D().

◆ qFuzzyCompare

Q_DECL_CONSTEXPR bool qFuzzyCompare ( const QDoubleVector3D & v1,
const QDoubleVector3D & v2 )
friend

Definition at line 242 of file qdoublevector3d_p.h.


The documentation for this class was generated from the following files: