C# Class kOS.Suffixed.VectorRenderer

Inheritance: Structure, IUpdateObserver, IKOSScopeObserver
Mostrar archivo Open project: KSP-KOS/KOS Class Usage Examples

Public Methods

Method Description
ClearAll ( kOS.Safe.UpdateHandler handler ) : void

Make all vector renderers invisible everywhere in the kOS module.

Dispose ( ) : void
GetShow ( ) : bool
KOSUpdate ( double deltaTime ) : void

Move the origin point of the vector drawings to move with the current ship, whichever ship that happens to be at the moment, and move to wherever that ship is within its local XYZ world (which isn't always at (0,0,0), as it turns out.):

RenderColor ( ) : void

Calculates colors and applies transparency fade effect. Only needs to be called when the color changes.

RenderPointCoords ( ) : void

Assign the arrow and label's positions in space. Call whenever :VEC, :START, or :SCALE change, or when the game switches between flight view and map view, as they don't use the same size scale.

RenderValues ( ) : void
ScopeLost ( ) : void
SetLabel ( kOS.Safe.Encapsulation.StringValue newVal ) : void
SetLayer ( int newVal ) : void
SetShow ( BooleanValue newShowVal ) : void
ToString ( ) : string
VectorRenderer ( kOS.Safe.UpdateHandler updateHand, kOS.Safe.SharedObjects shared ) : System

Private Methods

Method Description
GetCamData ( ) : void

Update camera data, abstracting the different ways KSP does it depending on view mode:

GetShipCenterCoords ( ) : void

Update _shipCenterCoords, abstracting the different ways to do it depending on view mode:

GetViewportPosFor ( Vector3 v ) : Vector3

Get the position in screen coordinates that the 3d world coordinates project onto, abstracting the two different ways KSP has to access the camera depending on view mode. Returned coords are in a system where the screen viewport goes from (0,0) to (1,1) and the Z coord is how far from the screen it is (-Z means behind you).

InitializeSuffixes ( ) : void
LabelPlacement ( ) : void

Place the 2D label at the correct projected spot on the screen from its location in 3D space:

PutAtShipRelativeCoords ( ) : void

Position the origins of the objects that make up the arrow such that they anchor relative to current ship position.

Method Details

ClearAll() public static method

Make all vector renderers invisible everywhere in the kOS module.
public static ClearAll ( kOS.Safe.UpdateHandler handler ) : void
handler kOS.Safe.UpdateHandler
return void

Dispose() public method

public Dispose ( ) : void
return void

GetShow() public method

public GetShow ( ) : bool
return bool

KOSUpdate() public method

Move the origin point of the vector drawings to move with the current ship, whichever ship that happens to be at the moment, and move to wherever that ship is within its local XYZ world (which isn't always at (0,0,0), as it turns out.):
public KOSUpdate ( double deltaTime ) : void
deltaTime double
return void

RenderColor() public method

Calculates colors and applies transparency fade effect. Only needs to be called when the color changes.
public RenderColor ( ) : void
return void

RenderPointCoords() public method

Assign the arrow and label's positions in space. Call whenever :VEC, :START, or :SCALE change, or when the game switches between flight view and map view, as they don't use the same size scale.
public RenderPointCoords ( ) : void
return void

RenderValues() public method

public RenderValues ( ) : void
return void

ScopeLost() public method

public ScopeLost ( ) : void
return void

SetLabel() public method

public SetLabel ( kOS.Safe.Encapsulation.StringValue newVal ) : void
newVal kOS.Safe.Encapsulation.StringValue
return void

SetLayer() public method

public SetLayer ( int newVal ) : void
newVal int
return void

SetShow() public method

public SetShow ( BooleanValue newShowVal ) : void
newShowVal kOS.Safe.Encapsulation.BooleanValue
return void

ToString() public method

public ToString ( ) : string
return string

VectorRenderer() public method

public VectorRenderer ( kOS.Safe.UpdateHandler updateHand, kOS.Safe.SharedObjects shared ) : System
updateHand kOS.Safe.UpdateHandler
shared kOS.Safe.SharedObjects
return System