MCPcopy Create free account
hub / github.com/TheRealMJP/DeferredTexturing / Perpendicular

Method Perpendicular

SampleFramework12/v1.00/SF12_Math.cpp:456–476  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

454}
455
456Float3 Float3::Perpendicular(const Float3& vec)
457{
458 Assert_(vec.Length() >= 0.00001f);
459
460 Float3 perp;
461
462 float x = std::abs(vec.x);
463 float y = std::abs(vec.y);
464 float z = std::abs(vec.z);
465 float minVal = std::min(x, y);
466 minVal = std::min(minVal, z);
467
468 if(minVal == x)
469 perp = Float3::Cross(vec, Float3(1.0f, 0.0f, 0.0f));
470 else if(minVal == y)
471 perp = Float3::Cross(vec, Float3(0.0f, 1.0f, 0.0f));
472 else
473 perp = Float3::Cross(vec, Float3(0.0f, 0.0f, 1.0f));
474
475 return Float3::Normalize(perp);
476}
477
478float Float3::Distance(const Float3& a, const Float3& b)
479{

Callers

nothing calls this directly

Calls 2

Float3Class · 0.85
LengthMethod · 0.80

Tested by

no test coverage detected