Пример #1
0
void PtCloudGeom::Scale()
{
    double currentScale = m_Scale() / m_LastScale();
    m_ScaleFromOrig *= currentScale;
    m_ScaleMatrix.loadIdentity();
    m_ScaleMatrix.scale( m_ScaleFromOrig() );
    m_LastScale = m_Scale();
}
Пример #2
0
void Scale::UpdateMatrix() const
{
    m_Matrix.resize(m_Scale.size(), m_Scale.size());

    for (Matrix::size_type row = 0; row < m_Matrix.size1(); row++)
    {
        for (Matrix::size_type column = 0; column < m_Matrix.size2(); column++)
        {
            if (row == column)
                m_Matrix(row, column) = m_Scale(row);
            else
                m_Matrix(row, column) = 0.0f;
        }
    }
}