Simple AirFoil simulation; originally made by Sleitnick (Crazyman32), modified By Widgeon, and ported to roblox-ts by InfinityDesign.
This module handles the aerodynamic physics of a single airfoil by constantly calculating the lift and drag forces that act upon the foil.
import { RunService } from "@rbxts/services"
import { Airfoil } from "../Airfoil"
const wing = new AirFoil(part, massOfPlane)
RunService.Heartbeat.Connect(() => {
wing.Update()
})
// NOTE: airFoil.Update() should be called every "Heartbeat" (RunService.Heartbeat)
airFoil.Part
airFoil.Area
airFoil.FrontalArea
airFoil.VectorForce
airFoil.DragAtZero
airFoil.DragEfficiency
airFoil.MaxForceLift
airFoil.MaxForceDrag
airFoil.LiftCoMultiplier
airFoil.AspectRatio
airFoil.Update()
airFoil.Stop()
airFoil.GetLiftCoefficient(angleOfAttack)
airFoil.GetDragCoefficient(liftCoefficient)