Program Listing for File convergance_identifier.hpp¶
↰ Return to documentation for file (/home/runner/work/Legion-Engine/Legion-Engine/legion/engine/physics/data/convergance_identifier.hpp
)
#pragma once
#include <core/core.hpp>
#include <physics/data/edge_label.hpp>
#include <physics/physics_contact.hpp>
namespace legion::physics
{
class ConvexConverganceIdentifier;
class ConverganceIdentifier
{
public:
ConverganceIdentifier(const EdgeLabel& plabel,float pTotalLambda,
float pTangent1Lambda, float pTangent2Lambda,int pRefColliderId)
: totalLambda(pTotalLambda),tangent1Lambda(pTangent1Lambda),
tangent2Lambda(pTangent2Lambda),refColliderID(pRefColliderId)
{
this->label = plabel;
}
float totalLambda = 0.0f;
float tangent1Lambda = 0.0f;
float tangent2Lambda = 0.0f;
EdgeLabel label;
int refColliderID = -1;
void CopyLambdasToContact(physics_contact& contact)
{
contact.totalLambda = totalLambda;
contact.tangent1Lambda = tangent1Lambda;
contact.tangent2Lambda = tangent2Lambda;
}
virtual bool IsEqual(physics_contact& contact) { return false; };
};
}