Redesigned bounds calculation in svg and refactoring

This commit is contained in:
Kirill Polyakov
2025-10-26 20:53:31 +03:00
parent 7156669830
commit df49a4fbde
27 changed files with 359 additions and 181 deletions

View File

@ -1326,6 +1326,23 @@ namespace NSCSS
return true;
}
CMatrix& CMatrix::operator+=(const CMatrix& oMatrix)
{
m_oValue.insert(m_oValue.end(), oMatrix.m_oValue.begin(), oMatrix.m_oValue.end());
return *this;
}
CMatrix& CMatrix::operator-=(const CMatrix& oMatrix)
{
for (MatrixValues::const_reverse_iterator itElement = oMatrix.m_oValue.crbegin(); itElement < oMatrix.m_oValue.crend(); ++itElement)
{
if (!m_oValue.empty() && m_oValue.back() == *itElement)
m_oValue.pop_back();
}
return *this;
}
// DISPLAY
CDisplay::CDisplay()
{

View File

@ -302,6 +302,8 @@ namespace NSCSS
void ApplyTranform(Aggplus::CMatrix& oMatrix, Aggplus::MatrixOrder order = Aggplus::MatrixOrderPrepend) const;
bool operator==(const CMatrix& oMatrix) const;
CMatrix& operator+=(const CMatrix& oMatrix);
CMatrix& operator-=(const CMatrix& oMatrix);
};
class CEnum : public CValue<int>