1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
.TH funct "3" "2006-10-12" "LinuxCNC Documentation" "libposemath"
.de TQ
.br
.ns
.TP \\$1
..
.SH NAME
PM_CARTESIAN \- Three-axis cartesian position
.SH SYNTAX
.HP
.B #include "posemath.h"
.HP
.B struct PM_CARTESIAN;
.SH CONSTRUCTORS
.TP
.B PM_CARTESIAN()
Construct the point <0,0,0>
.TP
.B PMCARTESIAN(double \fIx\fB, double \fIy\fB, double \fIz\fB)
Construct the point <\fIx\fB,\fIy\fB,\fIz\fB>
.TP
.B PMCARTESIAN(const PM_CARTESIAN &v)
Construct a copy of the point \fIv\fR
.SH DATA
.B double \fIx\fB, \fIy\fB, \fIz
.SH OPERATORS
.TP
.B operator[](int n);
Return the \fIn\fRth component of the vector (x=0, y=1, z=2)
.TP
.B int operator==(PM_CARTESIAN \fIv1\fB, PM_CARTESIAN \fIv2\fB)
.TQ
.B int operator!=(PM_CARTESIAN \fIv1\fB, PM_CARTESIAN \fIv2\fB)
Elementwise equality and inequality operator
.TP
.B PM_CARTESIAN operator+(PM_CARTESIAN \fIv1\fB, PM_CARTESIAN\fIv2\fB)
.TQ
.B PM_CARTESIAN operator-(PM_CARTESIAN \fIv1\fB, PM_CARTESIAN\fIv2\fB)
Addition and subtraction of vectors
.TP
.B PM_CARTESIAN operator*(double \fIs\fB, PM_CARTESIAN \fIv\fB)
.TQ
.B PM_CARTESIAN operator*(PM_CARTESIAN \fIv\fB, double \fIs\fB)
Scalar multiplication
.TP
.B PM_CARTESIAN operator/(PM_CARTESIAN \fIv\fB, double \fIs\fB)
Scalar multiplication by \fI1/s\fR
.SH OTHER FUNCTIONS ON PM_CARTESIAN OBJECTS
.TP
.B double dot(PM_CARTESIAN \fIv1\fB, PM_CARTESIAN \fIv2\fB)
.TQ
.B PM_CARTESIAN cross(PM_CARTESIAN \fIv1\fB, PM_CARTESIAN \fIv2\fB)
.TQ
.B PM_CARTESIAN norm(PM_CARTESIAN \fIv\fB)
.SH SEE ALSO
|