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 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205
|
# Note on deprecations
A tick-tock release cycle allows easy migration to new software versions.
Obsolete code is marked as deprecated for one major release.
Deprecated code produces compile-time warnings. These warning serve as
notification to users that their code should be upgraded. The next major
release will remove the deprecated code.
## Ignition Math 4.X to 5.X
### Additions
1. **MassMatrix.hh**
+ Epsilon(const T), Epsilon(const Vector3<T>, const T)
return relative tolerance proportional to machine
precision and largest possible moment of inertia.
* IsNearPositive(const T) is similar to IsPositive(const T)
but it checks for positive semidefinite inertia
using >= instead of >.
1. **Plane.hh**
+ Added copy constructor.
1. **Pose3.hh**
+ Added `*=` operator.
### Breaking Changes
1. The `Box` class has been changed to a templatized class that is not
axis-aligned. The previous `Box` functionality is now in the
`AxisAlignedBox` class.
1. The behavior of `Pose3` multiplication operator `*` has been changed to
match behavior of Matrix and Quaternion multiplication.
### Modifications
1. **Inertial.hh**
+ SetMassMatrix now accepts a relative tolerance parameter.
1. **MassMatrix.hh**
+ IsPositive, IsValid, ValidMoments now accept a relative tolerance
parameter based on Epsilon function.
+ IsValid now uses IsNearPositive instead of IsPositive
+ ValidMoments now uses >= in comparisons instead of >
### Deprecations
1. **MassMatrix3.hh**
+ All mutator functions that lacked a `Set` prefix have been deprecated
and replaced by version with a `Set` prefix.
+ The MOI functions have been renamed to Moi.
1. **Inertial.hh**
+ The MOI functions have been renamed to Moi.
## Ignition Math 3.X to 4.X
### Added dependencies
1. **ignition-cmake**
+ Ignition-math now has a build dependency on ignition-cmake, which
allows cmake scripts to be shared across all the ignition packages.
### Modifications
1. **Box.hh**
+ Boxes generated with the default constructor do not intersect any other
boxes or contain any points (previously they contained the origin).
1. **Helpers.hh**
+ parseInt and parseFloat functions now use std::stoi and std::stod,
so parsing an alphanumeric string that starts with numbers
no longer returns a NaN, but instead the beginning of the string
is parsed (e.g. ("23ab67" -> 23) now, but ("ab23ab67" -> NaN) still).
1. **SemanticVersion.hh**
+ The SemanticVersion(const std::string &) constructor is now explicit.
1. **All Headers**
+ All headers now have an inline versioned namespace. Code should be
unchanged except all forward declarations of math types must be replaced
with an include of the header for that type.
### Deprecations
1. **Matrix4.hh**
+ ***Deprecation:*** public: void Translate(const Vector3<T> &_t)
+ ***Replacement:*** public: void SetTranslation(const Vector3<T> &_t)
+ ***Deprecation:*** public: void Translate(T _x, T _y, T _z)
+ ***Replacement:*** public: void SetTranslation(T _x, T _y, T _z)
## Ignition Math 2.X to 3.X
### Modifications
1. **RotationSpline.hh**
+ The `UpdatePoint` function now returns a boolean value.
1. **Spline.hh**
+ The `UpdatePoint` function now returns a boolean value.
### Deprecations
1. **Matrix4.hh**
+ ***Deprecation:*** public: Vector3<T> TransformAffine(const Vector3<T>
&_v) const
+ ***Replacement:*** public: bool TransformAffine(const Vector3<T>
&_v,Vector3<T> &_result) const
1. **Helpers.hh**
+ ***Deprecation:*** IGN_DBL_MAX
+ ***Replacement:*** ignition::math::MAX_D
+ ***Deprecation:*** IGN_DBL_MIN
+ ***Replacement:*** ignition::math::MIN_D
+ ***Deprecation:*** IGN_DBL_LOW
+ ***Replacement:*** ignition::math::LOW_D
+ ***Deprecation:*** IGN_DBL_INF
+ ***Replacement:*** ignition::math::INF_D
+ ***Deprecation:*** IGN_FLT_MAX
+ ***Replacement:*** ignition::math::MAX_F
+ ***Deprecation:*** IGN_FLT_MIN
+ ***Replacement:*** ignition::math::MIN_F
+ ***Deprecation:*** IGN_FLT_LOW
+ ***Replacement:*** ignition::math::LOW_F
+ ***Deprecation:*** IGN_FLT_INF
+ ***Replacement:*** ignition::math::INF_F
+ ***Deprecation:*** IGN_UI16_MAX
+ ***Replacement:*** ignition::math::MAX_UI16
+ ***Deprecation:*** IGN_UI16_MIN
+ ***Replacement:*** ignition::math::MIN_UI16
+ ***Deprecation:*** IGN_UI16_LOW
+ ***Replacement:*** ignition::math::LOW_UI16
+ ***Deprecation:*** IGN_UI16_INF
+ ***Replacement:*** ignition::math::INF_UI16
+ ***Deprecation:*** IGN_I16_MAX
+ ***Replacement:*** ignition::math::MAX_I16
+ ***Deprecation:*** IGN_I16_MIN
+ ***Replacement:*** ignition::math::MIN_I16
+ ***Deprecation:*** IGN_I16_LOW
+ ***Replacement:*** ignition::math::LOW_I16
+ ***Deprecation:*** IGN_I16_INF
+ ***Replacement:*** ignition::math::INF_I16
+ ***Deprecation:*** IGN_UI32_MAX
+ ***Replacement:*** ignition::math::MAX_UI32
+ ***Deprecation:*** IGN_UI32_MIN
+ ***Replacement:*** ignition::math::MIN_UI32
+ ***Deprecation:*** IGN_UI32_LOW
+ ***Replacement:*** ignition::math::LOW_UI32
+ ***Deprecation:*** IGN_UI32_INF
+ ***Replacement:*** ignition::math::INF_UI32
+ ***Deprecation:*** IGN_I32_MAX
+ ***Replacement:*** ignition::math::MAX_I32
+ ***Deprecation:*** IGN_I32_MIN
+ ***Replacement:*** ignition::math::MIN_I32
+ ***Deprecation:*** IGN_I32_LOW
+ ***Replacement:*** ignition::math::LOW_I32
+ ***Deprecation:*** IGN_I32_INF
+ ***Replacement:*** ignition::math::INF_I32
+ ***Deprecation:*** IGN_UI64_MAX
+ ***Replacement:*** ignition::math::MAX_UI64
+ ***Deprecation:*** IGN_UI64_MIN
+ ***Replacement:*** ignition::math::MIN_UI64
+ ***Deprecation:*** IGN_UI64_LOW
+ ***Replacement:*** ignition::math::LOW_UI64
+ ***Deprecation:*** IGN_UI64_INF
+ ***Replacement:*** ignition::math::INF_UI64
+ ***Deprecation:*** IGN_I64_MAX
+ ***Replacement:*** ignition::math::MAX_I64
+ ***Deprecation:*** IGN_I64_MIN
+ ***Replacement:*** ignition::math::MIN_I64
+ ***Deprecation:*** IGN_I64_LOW
+ ***Replacement:*** ignition::math::LOW_I64
+ ***Deprecation:*** IGN_I64_INF
+ ***Replacement:*** ignition::math::INF_I64
|