/// <summary> /// Initializes the fluid drag controller /// </summary> /// <param name="fluidContainer">An object that implements <see cref="IFluidContainer"/></param> /// <param name="density">Density of the fluid</param> /// <param name="linearDragCoefficient">Linear drag coefficient of the fluid</param> /// <param name="rotationalDragCoefficient">Rotational drag coefficient of the fluid</param> /// <param name="gravity">The direction gravity acts. Buoyancy force will act in opposite direction of gravity.</param> public void Initialize(IFluidContainer fluidContainer, float density, float linearDragCoefficient, float rotationalDragCoefficient, Vector2 gravity) { _fluidContainer = fluidContainer; Density = density; LinearDragCoefficient = linearDragCoefficient; RotationalDragCoefficient = rotationalDragCoefficient; _gravity = gravity; _vertices = new Vertices(); }
/// <summary> /// Initializes a new instance of the <see cref="FluidDragController"/> class. /// </summary> /// <param name="fluidContainer">An object that implements <see cref="IFluidContainer"/></param> /// <param name="density">Density of the fluid</param> /// <param name="linearDragCoefficient">Linear drag coefficient of the fluid</param> /// <param name="rotationalDragCoefficient">Rotational drag coefficient of the fluid</param> /// <param name="gravity">The direction gravity acts. Buoyancy force will act in opposite direction of gravity.</param> public FluidDragController(IFluidContainer fluidContainer, float density, float linearDragCoefficient, float rotationalDragCoefficient, Vector2 gravity) { _geomList = new List <Fixture>(); _geomInFluidList = new Dictionary <Fixture, bool>(); _fluidContainer = fluidContainer; Density = density; LinearDragCoefficient = linearDragCoefficient; AngularDragCoefficient = rotationalDragCoefficient; _gravity = gravity; _vertices = new Vertices(); }