major rework
This commit is contained in:
29
Car simulation/Core/Components/Aerodynamics.cs
Normal file
29
Car simulation/Core/Components/Aerodynamics.cs
Normal file
@@ -0,0 +1,29 @@
|
||||
using Car_simulation.Core.Physics;
|
||||
|
||||
namespace Car_simulation.Core.Components
|
||||
{
|
||||
public class Aerodynamics
|
||||
{
|
||||
public float DragCoefficient { get; set; } = 0.3f;
|
||||
public float FrontalArea { get; set; } = 2.2f; // m²
|
||||
public float RollingResistanceCoefficient { get; set; } = 0.015f;
|
||||
|
||||
private readonly ResistanceCalculator _resistanceCalculator = new ResistanceCalculator();
|
||||
|
||||
public float CalculateDragForce(float speed)
|
||||
{
|
||||
return _resistanceCalculator.CalculateDragForce(speed, DragCoefficient, FrontalArea);
|
||||
}
|
||||
|
||||
public float CalculateRollingResistanceForce(float mass)
|
||||
{
|
||||
return _resistanceCalculator.CalculateRollingResistanceForce(mass, RollingResistanceCoefficient);
|
||||
}
|
||||
|
||||
public float CalculateTotalResistanceForce(float speed, float mass)
|
||||
{
|
||||
return _resistanceCalculator.CalculateTotalResistanceForce(
|
||||
speed, mass, DragCoefficient, FrontalArea, RollingResistanceCoefficient);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user