STIR 6.4.0
CartesianCoordinate3D.inl
Go to the documentation of this file.
1//
2//
3
16/*
17 Copyright (C) 2000 PARAPET partners
18 Copyright (C) 2000- 2009-06-22, Hammersmith Imanet Ltd
19 Copyright (C) 2011-07-01 - 2011, Kris Thielemans
20 This file is part of STIR.
21
22 SPDX-License-Identifier: Apache-2.0 AND License-ref-PARAPET-license
23
24 See STIR/LICENSE.txt for details
25*/
26
27START_NAMESPACE_STIR
28
29template <class coordT>
30CartesianCoordinate3D<coordT>::CartesianCoordinate3D()
31 : Coordinate3D<coordT>()
32{}
33
34template <class coordT>
35CartesianCoordinate3D<coordT>::CartesianCoordinate3D(const coordT& z, const coordT& y, const coordT& x)
36 : Coordinate3D<coordT>(z, y, x)
37{}
38
39template <class coordT>
40CartesianCoordinate3D<coordT>::CartesianCoordinate3D(const BasicCoordinate<3, coordT>& c)
41 : base_type(c)
42{}
43
44template <class coordT>
45CartesianCoordinate3D<coordT>&
46CartesianCoordinate3D<coordT>::operator=(const BasicCoordinate<3, coordT>& c)
47{
48 basebase_type::operator=(c);
49 return *this;
50}
51
52template <class coordT>
53CartesianCoordinate3D<coordT>&
54CartesianCoordinate3D<coordT>::operator=(const coordT& c)
55{
56 x() = c;
57 y() = c;
58 z() = c;
59 return *this;
60}
61
62#ifdef OLDDESIGN
63template <class coordT>
64CartesianCoordinate3D<coordT>::CartesianCoordinate3D(const Point3D& p)
65
66{
67 x() = p.x;
68 y() = p.y;
69 z() = p.z;
70}
71#endif
72
73template <class coordT>
74coordT&
75CartesianCoordinate3D<coordT>::z()
76{
77 return this->operator[](1);
78}
79
80template <class coordT>
81coordT
82CartesianCoordinate3D<coordT>::z() const
83{
84 return this->operator[](1);
85}
86
87template <class coordT>
88coordT&
89CartesianCoordinate3D<coordT>::y()
90{
91 return this->operator[](2);
92}
93
94template <class coordT>
95coordT
96CartesianCoordinate3D<coordT>::y() const
97{
98 return this->operator[](2);
99}
100
101template <class coordT>
102coordT&
103CartesianCoordinate3D<coordT>::x()
104{
105 return this->operator[](3);
106}
107
108template <class coordT>
109coordT
110CartesianCoordinate3D<coordT>::x() const
111{
112 return this->operator[](3);
113}
114
115END_NAMESPACE_STIR