| 305 | } |
| 306 | |
| 307 | void Tr2ScalingTool::GenLineSets() |
| 308 | { |
| 309 | Matrix translationMat; |
| 310 | Vector3* c_tris; |
| 311 | int numVectors = 0; |
| 312 | |
| 313 | Tr2EffectPtr mSolidEffect; |
| 314 | Tr2EffectPtr mLineEffect; |
| 315 | Tr2EffectPtr pEffect; |
| 316 | |
| 317 | if( !m_xLine.CreateInstance() || |
| 318 | !m_yLine.CreateInstance() || |
| 319 | !m_zLine.CreateInstance() || |
| 320 | !m_xBox.CreateInstance() || |
| 321 | !m_yBox.CreateInstance() || |
| 322 | !m_zBox.CreateInstance() || |
| 323 | !m_wBox.CreateInstance() || |
| 324 | !mLineEffect.CreateInstance() || |
| 325 | !mSolidEffect.CreateInstance() || |
| 326 | !pEffect.CreateInstance() ) |
| 327 | { |
| 328 | return; |
| 329 | } |
| 330 | |
| 331 | mLineEffect->SetEffectPathName( "res:/Graphics/Effect/Managed/Utility/LinesNoZ.fx" ); |
| 332 | mSolidEffect->SetEffectPathName( "res:/Graphics/Effect/Managed/Utility/SolidsNoZ.fx" ); |
| 333 | pEffect->SetEffectPathName( "res:/Graphics/Effect/Managed/Utility/PrimitivePicking.fx" ); |
| 334 | |
| 335 | m_xLine->AddLine( v3Zero, v4LightGray, v3X, v4LightGray ); |
| 336 | m_xLine->SubmitChanges(); |
| 337 | m_xLine->m_name = "_x"; |
| 338 | |
| 339 | m_yLine->AddLine( v3Zero, v4LightGray, v3Y, v4LightGray ); |
| 340 | m_yLine->SubmitChanges(); |
| 341 | m_yLine->m_name = "_y"; |
| 342 | |
| 343 | m_zLine->AddLine( v3Zero, v4LightGray, v3Z, v4LightGray ); |
| 344 | m_zLine->SubmitChanges(); |
| 345 | m_zLine->m_name = "_z"; |
| 346 | |
| 347 | m_xLine->m_scaleByDistanceToView = m_yLine->m_scaleByDistanceToView = m_zLine->m_scaleByDistanceToView = false; |
| 348 | m_xLine->m_effect = m_yLine->m_effect = m_zLine->m_effect = mLineEffect; |
| 349 | m_xLine->m_pickEffect = m_yLine->m_pickEffect = m_zLine->m_pickEffect = pEffect; |
| 350 | |
| 351 | //xBox |
| 352 | c_tris = Tr2ManipulationTool::GetBoxTriangles( Vector3( -0.075f, -0.075f, -0.075f ), Vector3( 0.075f, 0.075f, 0.075f ), &numVectors ); |
| 353 | translationMat = TranslationMatrix( 1.0f, 0.0f, 0.0f ); |
| 354 | TransformCoords( c_tris, numVectors, translationMat ); |
| 355 | |
| 356 | for( int i = 0; i < numVectors / 3; i++ ) |
| 357 | { |
| 358 | m_xBox->AddTriangle( c_tris[i * 3], v4Red, c_tris[i * 3 + 1], v4Red, c_tris[i * 3 + 2], v4Red ); |
| 359 | } |
| 360 | delete[] c_tris; |
| 361 | |
| 362 | m_xBox->SubmitChanges(); |
| 363 | m_xBox->m_name = "x"; |
| 364 | m_xBox->m_scaleByDistanceToView = true; |
nothing calls this directly
no test coverage detected