include
visp_bridge
vpQuaternionVector.h
Go to the documentation of this file.
1
/****************************************************************************
2
*
3
* $Id: vpQuaternionVector.h 3506 2011-11-29 19:29:31Z fspindle $
4
*
5
* This file is part of the ViSP software.
6
* Copyright (C) 2005 - 2011 by INRIA. All rights reserved.
7
*
8
* This software is free software; you can redistribute it and/or
9
* modify it under the terms of the GNU General Public License
10
* ("GPL") version 2 as published by the Free Software Foundation.
11
* See the file LICENSE.txt at the root directory of this source
12
* distribution for additional information about the GNU GPL.
13
*
14
* For using ViSP with software that can not be combined with the GNU
15
* GPL, please contact INRIA about acquiring a ViSP Professional
16
* Edition License.
17
*
18
* See http://www.irisa.fr/lagadic/visp/visp.html for more information.
19
*
20
* This software was developed at:
21
* INRIA Rennes - Bretagne Atlantique
22
* Campus Universitaire de Beaulieu
23
* 35042 Rennes Cedex
24
* France
25
* http://www.irisa.fr/lagadic
26
*
27
* If you have questions regarding the use of this file, please contact
28
* INRIA at visp@inria.fr
29
*
30
* This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
31
* WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
32
*
33
*
34
* Description:
35
* Quaternion definition.
36
*
37
* Authors:
38
* Filip Novotny
39
*
40
*****************************************************************************/
41
42
43
44
#ifndef __QUATERNIONVECTOR_H__
45
#define __QUATERNIONVECTOR_H__
46
55
#include <visp/vpConfig.h>
56
57
#if VISP_VERSION_INT <= (2<<16 | 6<<8 | 1)
58
59
#include <visp/vpRotationMatrix.h>
60
#include <visp/vpColVector.h>
61
62
80
class
VISP_EXPORT
vpQuaternionVector
:
public
vpColVector
81
{
82
private
:
83
static
const
double
minimum
;
84
double
r[4];
85
public
:
86
87
vpQuaternionVector
() ;
88
vpQuaternionVector
(
const
double
x,
const
double
y,
const
double
z,
const
double
w) ;
89
vpQuaternionVector
(
const
vpQuaternionVector
&q);
90
vpQuaternionVector
(
const
vpRotationMatrix &R);
91
92
void
buildFrom(
const
vpRotationMatrix& R);
93
94
void
set
(
const
double
x,
const
double
y,
const
double
z,
const
double
w) ;
95
unsigned
int
size
(){
return
4;}
97
inline
double
x
()
const
{
return
r[0];}
99
inline
double
y
()
const
{
return
r[1];}
101
inline
double
z
()
const
{
return
r[2];}
103
inline
double
w
()
const
{
return
r[3];}
104
105
vpQuaternionVector
operator+(
vpQuaternionVector
&q) ;
106
vpQuaternionVector
operator-(
vpQuaternionVector
&q) ;
107
vpQuaternionVector
operator-() ;
108
vpQuaternionVector
operator*(
const
double
l) ;
109
vpQuaternionVector
operator* (
vpQuaternionVector
&rq) ;
110
vpQuaternionVector
&operator=(
vpQuaternionVector
&q);
111
112
113
} ;
114
115
#endif
116
#endif
117
118
/*
119
* Local variables:
120
* c-basic-offset: 4
121
* End:
122
*/
vpQuaternionVector::size
unsigned int size()
Definition:
vpQuaternionVector.h:95
vpQuaternionVector::minimum
static const double minimum
Definition:
vpQuaternionVector.h:83
vpQuaternionVector::x
double x() const
returns x-component of the quaternion
Definition:
vpQuaternionVector.h:97
vpQuaternionVector::w
double w() const
returns w-component of the quaternion
Definition:
vpQuaternionVector.h:103
vpQuaternionVector::y
double y() const
returns y-component of the quaternion
Definition:
vpQuaternionVector.h:99
vpQuaternionVector
Defines a quaternion and its basic operations.
Definition:
vpQuaternionVector.h:80
set
ROSCPP_DECL void set(const std::string &key, bool b)
vpQuaternionVector::z
double z() const
returns z-component of the quaternion
Definition:
vpQuaternionVector.h:101
visp_bridge
Author(s): Filip Novotny
autogenerated on Sat Aug 24 2024 02:54:51