diff --git a/graf2d/gpad/v7/inc/ROOT/TPadCoord.hxx b/graf2d/gpad/v7/inc/ROOT/TPadCoord.hxx index bf7955b2028df29f08a60e04944a02608f402ff5..2e0a392c03a044ed2551b3935a8bfb2b46f0b141 100644 --- a/graf2d/gpad/v7/inc/ROOT/TPadCoord.hxx +++ b/graf2d/gpad/v7/inc/ROOT/TPadCoord.hxx @@ -33,6 +33,8 @@ protected: CoordSysBase(double val): fVal(val) {} DERIVED &ToDerived() { return static_cast<DERIVED &>(*this); } + DERIVED operator-() { return DERIVED(-fVal); } + friend DERIVED operator+(DERIVED lhs, DERIVED rhs) { return DERIVED{lhs.fVal + rhs.fVal}; } friend DERIVED operator-(DERIVED lhs, DERIVED rhs) { return DERIVED{lhs.fVal - rhs.fVal}; } friend double operator/(DERIVED lhs, DERIVED rhs) { return lhs.fVal / rhs.fVal; } @@ -124,6 +126,11 @@ public: return TPadCoord{lhs.fNormal - rhs.fNormal, lhs.fPixel - rhs.fPixel, lhs.fUser - rhs.fUser}; } + /// Unary -. + TPadCoord operator-() { + return TPadCoord(-fNormal, -fPixel, -fUser); + } + /// Add a `TPadCoord`. TPadCoord &operator+=(const TPadCoord &rhs) {