Aerodynamic Objects Core 2.0.0
Loading...
Searching...
No Matches
AerodynamicObjects.FlowFieldArrows Class Reference

Draws 3D arrow models in a defined area. More...

Inheritance diagram for AerodynamicObjects.FlowFieldArrows:
AerodynamicObjects.FlowAffected

Public Member Functions

void OnValidate ()
 
void Start ()
 
- Public Member Functions inherited from AerodynamicObjects.FlowAffected
void GetInteractionID ()
 Obtains a unique interaction ID for the object. More...
 
void IgnoreInteraction (FlowPrimitive primitive)
 Tells the flow interaction manager that this object and the provided flow primitive should not interact. More...
 
void IgnoreInteraction (FluidVolume fluidVolume)
 Tells the flow interaction manager that this object and the provided fluid volume should not interact. More...
 
virtual void OnDestroy ()
 
virtual void Awake ()
 
virtual void FixedUpdate ()
 
void SubscribeToFluidVolume (FluidVolume fluidVolume)
 Add this fluid volume to the object's list of fluid volumes. More...
 
void UnsubscribeFromFluidVolume (FluidVolume fluidVolume)
 Remove this fluid volume from the object's list of fluid volumes. More...
 
void UpdateFluidVolumes ()
 Looks at the fluid volumes which are currently affecting this object and removes any that have become null or are now ignored. More...
 
void RemoveNullVolumes ()
 Removes any fluid volumes which have become null from the list of interacting fluid volumes for this object. More...
 
Vector3 GetFluidVelocity (Vector3 position)
 Gets the fluid velocity at the provided position and checks whether to include the global fluid velocity or not. More...
 
Vector3 GetFluidVelocityNoInteractionCheck (Vector3 position)
 Gets the fluid velocity at the provided position and checks whether to include the global fluid velocity or not. More...
 
Vector3 GetFluidVelocityWithGlobal (Vector3 position)
 Gets the fluid velocity at the provided position under the assumption that the object IS affected by the global fluid. More...
 
Vector3 GetFluidVelocityWithGlobalNoInteractionCheck (Vector3 position)
 
Vector3 GetFluidVelocityWithoutGlobal (Vector3 position)
 

Public Attributes

Vector3Int numArrows = new Vector3Int(3, 3, 3)
 The number of arrows in each axis. More...
 
float arrowSize = 1f
 The size of the arrows relative to this object's transform More...
 
float windSpeedScale = 1f
 The scaling of the arrow length with wind speed. More...
 
float thresholdWindSpeed = 0.1f
 Arrows will not be drawn for wind speeds below this threshold. More...
 
float visualRange = 0.5f
 Controls how fast arrows fade with distance from visual centre. More...
 
Transform focusPoint
 Visual centre of arrow field. More...
 
- Public Attributes inherited from AerodynamicObjects.FlowAffected
bool affectedByGlobalFluid = true
 Will the global fluid velocity affect this object? More...
 
int interactionID = 0
 The unique ID number for this object, used for identifying pairs of ignored interactions by the FlowInteractionManager. More...
 
List< FluidVolumelocalFluidVolumes = new List<FluidVolume>()
 The local fluid volumes that are currently affecting this object. More...
 
Fluid fluid = new Fluid()
 The state and properties of the fluid around the object. More...
 

Detailed Description

Draws 3D arrow models in a defined area.

Each arrow is scaled and directed according to the flow velocity at the position of the arrow.

Member Function Documentation

◆ OnValidate()

void AerodynamicObjects.FlowFieldArrows.OnValidate ( )

◆ Start()

void AerodynamicObjects.FlowFieldArrows.Start ( )

Member Data Documentation

◆ arrowSize

float AerodynamicObjects.FlowFieldArrows.arrowSize = 1f

The size of the arrows relative to this object's transform

◆ focusPoint

Transform AerodynamicObjects.FlowFieldArrows.focusPoint

Visual centre of arrow field.

Usually the transfrom of an object of interest. If left unassigned, this object's transform is used

◆ numArrows

Vector3Int AerodynamicObjects.FlowFieldArrows.numArrows = new Vector3Int(3, 3, 3)

The number of arrows in each axis.

◆ thresholdWindSpeed

float AerodynamicObjects.FlowFieldArrows.thresholdWindSpeed = 0.1f

Arrows will not be drawn for wind speeds below this threshold.

(m/s)

◆ visualRange

float AerodynamicObjects.FlowFieldArrows.visualRange = 0.5f

Controls how fast arrows fade with distance from visual centre.

Used to declutter and focus attention on object of interest within wind field. A higher value increases the number of arrows visible

◆ windSpeedScale

float AerodynamicObjects.FlowFieldArrows.windSpeedScale = 1f

The scaling of the arrow length with wind speed.


The documentation for this class was generated from the following file: