C# 클래스 SpaceSim.Spacecrafts.SpaceCraftBase

상속: SpaceSim.Physics.GravitationalBodyBase, IAerodynamicBody, ISpaceCraft
파일 보기 프로젝트 열기: zlynn1990/SpaceSim 1 사용 예제들

보호된 프로퍼티들

프로퍼티 타입 설명
EntryFlame ReEntryFlame
IspMultiplier double
MachNumber double
MissionName string
StageOffset VectorMath.DVector2
Texture System.Drawing.Bitmap

공개 메소드들

메소드 설명
AddChild ( ISpaceCraft child ) : void
ComputeBoundingBox ( ) : RectangleD
DeployFairing ( ) : void

Deploys the fairing.

DeployGridFins ( ) : void

Deploys the grid fins.

DeployLandingLegs ( ) : void

Deploys the landing legs.

FixedUpdate ( SpaceSim.Physics.TimeStep timeStep ) : void
GetAlpha ( ) : double
GetBaseCd ( double baseCd ) : double
GetDownrangeDistance ( DVector2 pointOfReference ) : double

Gets the down range distance along the equator of the parent planet.

GetRelativeAcceleration ( ) : DVector2
GetRelativeAltitude ( ) : double

Gets the relative altitude of the spacecraft from it's parent's surface.

GetRelativePitch ( ) : double
GetRelativeVelocity ( ) : DVector2

Gets the relative velocity of the spacecraft. If the space craft is within the parent's atmosphere than the rotation of the planet is taken in account. Otherwise its a simple difference of velocities.

InitializeController ( EventManager eventManager ) : void
OffsetPitch ( double offset ) : void
OffsetRelativePitch ( double offset ) : void
OffsetRoll ( double offset ) : void
OffsetYaw ( double offset ) : void
RemoveChild ( ISpaceCraft child ) : void
RenderGdi ( Graphics graphics, RectangleD cameraBounds ) : void

Renders the space craft at it's correct scale and rotation according to the camera. The engines are rendered first and then the space craft body.

ResetAccelerations ( ) : void
ResolveAtmopsherics ( IMassiveBody body ) : void
ResolveGravitation ( IPhysicsBody other ) : void
SetParent ( ISpaceCraft craft ) : void
SetPitch ( double pitch ) : void
SetRelativePitch ( double pitch ) : void
SetRoll ( double roll ) : void
SetThrottle ( double throttle, int engineIds = null ) : void
SetYaw ( double yaw ) : void
Stage ( ) : void

Stages the spacecraft according to its mounted angle by applying a normal force.

ToString ( ) : string
ToggleDisplayVectors ( ) : void
Update ( double dt ) : void

Updates the spacecraft and it's children.

UpdateAnimations ( SpaceSim.Physics.TimeStep timeStep ) : void
UpdateChildren ( DVector2 position, DVector2 velocity ) : void
UpdateController ( double dt ) : void
Visibility ( RectangleD cameraBounds ) : double

보호된 메소드들

메소드 설명
RenderAbove ( Graphics graphics, RectangleD cameraBounds ) : void
RenderBelow ( Graphics graphics, RectangleD cameraBounds ) : void
RenderShip ( Graphics graphics, RectangleD cameraBounds, RectangleF screenBounds ) : void
SpaceCraftBase ( string craftDirectory, DVector2 position, DVector2 velocity, double payloadMass, double propellantMass, string texturePath, ReEntryFlame entryFlame = null ) : System

비공개 메소드들

메소드 설명
GetChildDragCoefficient ( List children, double totalDragCoefficient ) : double
GetChildFormDragArea ( List children, double totalFormDragArea ) : double
GetChildLiftArea ( List children, double totalLiftArea ) : double
GetMaxChildLiftCoefficient ( List children, double totalLiftCoefficient ) : double
TotalFormDragArea ( ) : double

Recursively finds the total drag area of all surfaces exposed to air in the spacecraft.

TotalFormDragCoefficient ( ) : double

Recursively finds the total drag of all surfaces exposed to air in the spacecraft.

TotalLiftArea ( ) : double

Recursively finds the total lift area of all surfaces exposed to air in the spacecraft.

TotalLiftCoefficient ( ) : double

Recursively finds the total lift of all surfaces exposed to air in the spacecraft.

TotalSkinFrictionArea ( ) : double

Recursively finds the total drag area of all surfaces exposed to air in the spacecraft.

TotalSkinFrictionCoefficient ( ) : double

Recursively finds the total skin friction due to all surfaces exposed to air in the spacecraft.

UpdateEngines ( double dt ) : void

Recursively updates the engines in the spacecraft and updates propellant mass.

메소드 상세

AddChild() 공개 메소드

public AddChild ( ISpaceCraft child ) : void
child ISpaceCraft
리턴 void

ComputeBoundingBox() 공개 메소드

public ComputeBoundingBox ( ) : RectangleD
리턴 VectorMath.RectangleD

DeployFairing() 공개 메소드

Deploys the fairing.
public DeployFairing ( ) : void
리턴 void

DeployGridFins() 공개 메소드

Deploys the grid fins.
public DeployGridFins ( ) : void
리턴 void

DeployLandingLegs() 공개 메소드

Deploys the landing legs.
public DeployLandingLegs ( ) : void
리턴 void

FixedUpdate() 공개 메소드

public FixedUpdate ( SpaceSim.Physics.TimeStep timeStep ) : void
timeStep SpaceSim.Physics.TimeStep
리턴 void

GetAlpha() 공개 메소드

public GetAlpha ( ) : double
리턴 double

GetBaseCd() 공개 메소드

public GetBaseCd ( double baseCd ) : double
baseCd double
리턴 double

GetDownrangeDistance() 공개 메소드

Gets the down range distance along the equator of the parent planet.
public GetDownrangeDistance ( DVector2 pointOfReference ) : double
pointOfReference VectorMath.DVector2
리턴 double

GetRelativeAcceleration() 공개 메소드

public GetRelativeAcceleration ( ) : DVector2
리턴 VectorMath.DVector2

GetRelativeAltitude() 공개 메소드

Gets the relative altitude of the spacecraft from it's parent's surface.
public GetRelativeAltitude ( ) : double
리턴 double

GetRelativePitch() 공개 메소드

public GetRelativePitch ( ) : double
리턴 double

GetRelativeVelocity() 공개 메소드

Gets the relative velocity of the spacecraft. If the space craft is within the parent's atmosphere than the rotation of the planet is taken in account. Otherwise its a simple difference of velocities.
public GetRelativeVelocity ( ) : DVector2
리턴 VectorMath.DVector2

InitializeController() 공개 메소드

public InitializeController ( EventManager eventManager ) : void
eventManager SpaceSim.Drawing.EventManager
리턴 void

OffsetPitch() 공개 메소드

public OffsetPitch ( double offset ) : void
offset double
리턴 void

OffsetRelativePitch() 공개 메소드

public OffsetRelativePitch ( double offset ) : void
offset double
리턴 void

OffsetRoll() 공개 메소드

public OffsetRoll ( double offset ) : void
offset double
리턴 void

OffsetYaw() 공개 메소드

public OffsetYaw ( double offset ) : void
offset double
리턴 void

RemoveChild() 공개 메소드

public RemoveChild ( ISpaceCraft child ) : void
child ISpaceCraft
리턴 void

RenderAbove() 보호된 메소드

protected RenderAbove ( Graphics graphics, RectangleD cameraBounds ) : void
graphics System.Drawing.Graphics
cameraBounds VectorMath.RectangleD
리턴 void

RenderBelow() 보호된 메소드

protected RenderBelow ( Graphics graphics, RectangleD cameraBounds ) : void
graphics System.Drawing.Graphics
cameraBounds VectorMath.RectangleD
리턴 void

RenderGdi() 공개 메소드

Renders the space craft at it's correct scale and rotation according to the camera. The engines are rendered first and then the space craft body.
public RenderGdi ( Graphics graphics, RectangleD cameraBounds ) : void
graphics System.Drawing.Graphics
cameraBounds VectorMath.RectangleD
리턴 void

RenderShip() 보호된 메소드

protected RenderShip ( Graphics graphics, RectangleD cameraBounds, RectangleF screenBounds ) : void
graphics System.Drawing.Graphics
cameraBounds VectorMath.RectangleD
screenBounds System.Drawing.RectangleF
리턴 void

ResetAccelerations() 공개 메소드

public ResetAccelerations ( ) : void
리턴 void

ResolveAtmopsherics() 공개 메소드

public ResolveAtmopsherics ( IMassiveBody body ) : void
body IMassiveBody
리턴 void

ResolveGravitation() 공개 메소드

public ResolveGravitation ( IPhysicsBody other ) : void
other IPhysicsBody
리턴 void

SetParent() 공개 메소드

public SetParent ( ISpaceCraft craft ) : void
craft ISpaceCraft
리턴 void

SetPitch() 공개 메소드

public SetPitch ( double pitch ) : void
pitch double
리턴 void

SetRelativePitch() 공개 메소드

public SetRelativePitch ( double pitch ) : void
pitch double
리턴 void

SetRoll() 공개 메소드

public SetRoll ( double roll ) : void
roll double
리턴 void

SetThrottle() 공개 메소드

public SetThrottle ( double throttle, int engineIds = null ) : void
throttle double
engineIds int
리턴 void

SetYaw() 공개 메소드

public SetYaw ( double yaw ) : void
yaw double
리턴 void

SpaceCraftBase() 보호된 메소드

protected SpaceCraftBase ( string craftDirectory, DVector2 position, DVector2 velocity, double payloadMass, double propellantMass, string texturePath, ReEntryFlame entryFlame = null ) : System
craftDirectory string
position VectorMath.DVector2
velocity VectorMath.DVector2
payloadMass double
propellantMass double
texturePath string
entryFlame ReEntryFlame
리턴 System

Stage() 공개 메소드

Stages the spacecraft according to its mounted angle by applying a normal force.
public Stage ( ) : void
리턴 void

ToString() 공개 메소드

public ToString ( ) : string
리턴 string

ToggleDisplayVectors() 공개 메소드

public ToggleDisplayVectors ( ) : void
리턴 void

Update() 공개 메소드

Updates the spacecraft and it's children.
public Update ( double dt ) : void
dt double
리턴 void

UpdateAnimations() 공개 메소드

public UpdateAnimations ( SpaceSim.Physics.TimeStep timeStep ) : void
timeStep SpaceSim.Physics.TimeStep
리턴 void

UpdateChildren() 공개 메소드

public UpdateChildren ( DVector2 position, DVector2 velocity ) : void
position VectorMath.DVector2
velocity VectorMath.DVector2
리턴 void

UpdateController() 공개 메소드

public UpdateController ( double dt ) : void
dt double
리턴 void

Visibility() 공개 메소드

public Visibility ( RectangleD cameraBounds ) : double
cameraBounds VectorMath.RectangleD
리턴 double

프로퍼티 상세

EntryFlame 보호되어 있는 프로퍼티

protected ReEntryFlame EntryFlame
리턴 ReEntryFlame

IspMultiplier 보호되어 있는 프로퍼티

protected double IspMultiplier
리턴 double

MachNumber 보호되어 있는 프로퍼티

protected double MachNumber
리턴 double

MissionName 보호되어 있는 프로퍼티

protected string MissionName
리턴 string

StageOffset 보호되어 있는 프로퍼티

protected DVector2,VectorMath StageOffset
리턴 VectorMath.DVector2

Texture 보호되어 있는 프로퍼티

protected Bitmap,System.Drawing Texture
리턴 System.Drawing.Bitmap