| 185 | } |
| 186 | |
| 187 | void Viewport::transformView( const AffineXf3f & xf ) |
| 188 | { |
| 189 | auto newAngle = params_.cameraTrackballAngle * Quaternionf( xf.A ); |
| 190 | auto newTrans = xf.A.inverse() * ( params_.cameraTranslation + xf.b ); |
| 191 | if ( params_.cameraTrackballAngle == newAngle && |
| 192 | params_.cameraTranslation == newTrans ) |
| 193 | return; |
| 194 | params_.cameraTrackballAngle = newAngle; |
| 195 | params_.cameraTranslation = newTrans; |
| 196 | |
| 197 | needRedraw_ = true; |
| 198 | } |
| 199 | |
| 200 | float Viewport::getPixelSize() const |
| 201 | { |
no test coverage detected