MCPcopy Create free account
hub / github.com/carbonengine/trinity / GenLineSets

Method GenLineSets

trinity/Tr2ScalingTool.cpp:307–424  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

305}
306
307void 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;

Callers

nothing calls this directly

Calls 6

CreateInstanceMethod · 0.80
SetEffectPathNameMethod · 0.80
AddTriangleMethod · 0.80
Vector3Class · 0.70
AddLineMethod · 0.45
SubmitChangesMethod · 0.45

Tested by

no test coverage detected