Package | com.fileitup.fisixengine.primitives |
Class | public class Surface |
Inheritance | Surface ![]() |
Subclasses | DynamicSurface, SurfaceConveyor |
See also
Property | Defined by | ||
---|---|---|---|
![]() | active : Boolean = true Tells the engine whether or not to treat this object as a part of the simulation
This value may be changed at any time during the simulation | CollisionObject | |
![]() | bounce : Number = .5 The object's coefficient of reinstiturion.
| CollisionObject | |
![]() | collidable : Boolean = true Tells the engine whether or not to check collisions against this object
You may set this value at any time during the sumulation to turn collision detection on/off for this object
| CollisionObject | |
![]() | color : int = -1 The object's rendering color.
| CollisionObject | |
![]() | dynamicObjectCollisions : Boolean = false | CollisionObject | |
![]() | fixed : Boolean A fixed CollisionObject is never influenced by collisions
You may change this value at any time
| CollisionObject | |
![]() | friction : Number = 0 The object's coefficient of friction.
| CollisionObject | |
![]() | inheritAttributesOnAdd : Boolean = true | CollisionObject | |
![]() | lastCollision : CollisionData
An internal object which stores the information of the object's last collision
| CollisionObject | |
length : Number | Surface | ||
line : Line | Surface | ||
![]() | magnetic : Boolean = true If true, the object is affected by magnets
| CollisionObject | |
![]() | minX : Number Hold the dimensions of the object's bounding box.
| CollisionObject | |
![]() | name : String = "" | CollisionObject | |
![]() | parent : FisixObject
The parent of the object.
| CollisionObject | |
radius : Number | Surface | ||
![]() | raycast : Boolean An internal property, used by the engine
| CollisionObject | |
![]() | traction : Number = 1 The object's traction.
| CollisionObject | |
![]() | type : String A string representing the type of object you are dealing with
| CollisionObject | |
vectorA : Vector | Surface |
Method | Defined by | ||
---|---|---|---|
Creates a Surface object
To conserve memory, all static surfaces should be composed of regular Vector objects.
If you would like the surface to move around (although it will only affect other objects and not be affected) you can supply a Particle's 'pos' property as the vector | Surface | ||
![]() |
aabbIntersection(obj:CollisionObject):Boolean
Returns whether or not this object's AABB is intersecting with the given object's AABB
| CollisionObject | |
![]() |
applyForce(f:Vector, checkAA:Boolean = true):void
Applies a uniform force, moving the entire object.
| CollisionObject | |
applyForceAt(f:Vector, t:Number):void
Not used on static surfaces
| Surface | ||
Applies a force at the given point.
| Surface | ||
dispose():void
| Surface | ||
![]() |
fireAfterCollision():void
| CollisionObject | |
![]() |
fireOnCollision():void
| CollisionObject | |
![]() |
fix(f:Boolean = true):void
Another way of setting the value 'fixed'.
| CollisionObject | |
![]() |
getDetectionMode():int
| CollisionObject | |
getLength():Number
Returns the length of the surface
| Surface | ||
![]() |
getMaterial():String
The name of the current material applied to the object
| CollisionObject | |
![]() |
getNormalAngleAt(p:Vector):Number
| CollisionObject | |
| Surface | ||
![]() |
getReactionMode():int
| CollisionObject | |
Returns a vector between the first point of the surface to the second point.
| Surface | ||
![]() |
isStatic():Boolean
Returns a value indicating whether or not this object was made static.
| CollisionObject | |
![]() |
makeStatic():void
Makes the object static.
| CollisionObject | |
massOnSurface(t:Number):Number
This method is not used on static surfaces because their mass is always infinite.
| Surface | ||
![]() |
onInit():void
Called after the object is initiated by a FisixObject to which it was added
| CollisionObject | |
![]() |
pointForce(point:Vector, force:Number):void
Applies a force value on the object from the given point.
| CollisionObject | |
Renders a primitive shape of the object to the given Graphics object.
| Surface | ||
![]() |
renderBoundingBox(g:Graphics):void
Renders a rectangle representing the bounding box to the graphics object
| CollisionObject | |
![]() |
setDetectionMode(m:int):void
Sets the collision detection mode to be used by the object
| CollisionObject | |
![]() |
setMaterial(mName:String):void
Sets the material of the object
This modifies the object's 'friction', 'bounce', 'color' and 'traction' properties.
| CollisionObject | |
![]() |
setReactionMode(m:int):void
Sets the collision reaction mode to be used by the object
| CollisionObject | |
![]() |
thrust(tX:Number, tY:Number, checkAA:Boolean = true):void
Moves the object uniformly with the given x,y values and adds the values to its velocity.
| CollisionObject | |
thrustAt(tX:Number, tY:Number, t:Number):void
Not used on static surfaces
| Surface | ||
Unlike thrust which moves the whole object, thrustPoint() hits the object from the given point, with the given x,y values and adds the values to its velocity.
| Surface | ||
![]() |
unload():void
Removes the object from the engine and disposes of it.
| CollisionObject | |
updateBoundingBox():void
Updates the bounding box of the object.
| Surface |
length | property |
public var length:Number
line | property |
public var line:Line
radius | property |
public var radius:Number
vectorA | property |
public var vectorA:Vector
Surface | () | constructor |
public function Surface(pA:Vector, pB:Vector, r:Number = 0)
Creates a Surface object
To conserve memory, all static surfaces should be composed of regular Vector objects.
If you would like the surface to move around (although it will only affect other objects and not be affected)
you can supply a Particle's 'pos' property as the vector
pA:Vector — A vector Object to confine the first point of the surface to.
|
|
pB:Vector — A vector Object to confine the second point of the surface to.
|
|
r:Number (default = 0 ) — The radius of the surface
|
var s:Surface = myEngine.newSurface(particleA.pos,particleB.pos)
applyForceAt | () | method |
public function applyForceAt(f:Vector, t:Number):void
Not used on static surfaces
Parametersf:Vector |
|
t:Number |
See also
applyForcePoint | () | method |
public override function applyForcePoint(f:Vector, p:Vector):void
Applies a force at the given point. Note that the point must be in global space
Parametersf:Vector |
|
p:Vector |
dispose | () | method |
public override function dispose():void
getLength | () | method |
public function getLength():Number
Returns the length of the surface
ReturnsNumber |
getNormalAt | () | method |
public override function getNormalAt(p:Vector, dirVector:Vector = null):Vector
Parameters
p:Vector |
|
dirVector:Vector (default = null )
|
Vector |
getVector | () | method |
public function getVector():Vector
Returns a vector between the first point of the surface to the second point.
ReturnsVector |
massOnSurface | () | method |
public function massOnSurface(t:Number):Number
This method is not used on static surfaces because their mass is always infinite.
Parameterst:Number |
Number |
See also
render | () | method |
public override function render(g:Graphics):void
Renders a primitive shape of the object to the given Graphics object. Usually this method is automatically invoked by the engine, but you may use it to render individual objects.
Parametersg:Graphics |
thrustAt | () | method |
public function thrustAt(tX:Number, tY:Number, t:Number):void
Not used on static surfaces
ParameterstX:Number |
|
tY:Number |
|
t:Number |
See also
thrustPoint | () | method |
public override function thrustPoint(tX:Number, tY:Number, p:Vector):void
Unlike thrust which moves the whole object, thrustPoint() hits the object from the given point, with the given x,y values and adds the values to its velocity. This is more realistically accurate than thrust(). Refrain from using this method to avoid penetration. Instead, use applyForcePoint()
ParameterstX:Number |
|
tY:Number |
|
p:Vector |
updateBoundingBox | () | method |
public override function updateBoundingBox():void
Updates the bounding box of the object. This is an internal methods that is called many times a frame. Calling it manually won't do much.