|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectfisica.FDrawable
fisica.FBody
fisica.FBlob
public class FBlob
Represents a blob body that can be added to a world.
Blobs are soft bodies that are composed of vertices and tries to maintain constant the volume the vertices enclose.
Blobs can be created by adding vertices using the vertex
method in a similar way to FPoly
:
FBlob myBlob = new FBlob();
myBlob.vertex(40, 10);
myBlob.vertex(50, 20);
myBlob.vertex(60, 30);
myBlob.vertex(60, 40);
myBlob.vertex(50, 50);
myBlob.vertex(40, 60);
myBlob.vertex(30, 70);
myBlob.vertex(20, 60);
myBlob.vertex(10, 50);
myBlob.vertex(10, 40);
myBlob.vertex(20, 30);
myBlob.vertex(30, 20);
myBlob.vertex(40, 10);
world.add(myBlob);
or it may be initialized using the method setAsCircle
to set the initial shape as a circle:
FBlob myBlob = new FBlob();
myBlob.setAsCircle(40);
world.add(myBlob);
FBox
,
FCircle
,
FPoly
,
FLine
Constructor Summary | |
---|---|
FBlob()
Constructs a blob body that can be added to a world. |
Method Summary | |
---|---|
void |
addForce(float fx,
float fy)
Aply a force on the center of the body. |
void |
addTorque(float t)
Add a rotation force (a torque) to the body. |
void |
addToWorld(FWorld world)
|
void |
addVertexBody(FBody b)
Adds a vertex body to the initial shape of the blob. |
void |
attachImage(processing.core.PImage img)
Attach an image to the object. |
void |
dettachImage()
Dettach any image that has been attached to the object. |
java.util.ArrayList |
getVertexBodies()
Returns vertices of the blob. |
float |
getVertexSize()
Returns the size of the circular vertices of the blob. |
float |
getVertexX(int i)
Gets the x coordinate of the ith vertex of the initial shape of the blob. |
float |
getVertexY(int i)
Gets the y coordinate of the ith vertex of the initial shape of the blob. |
void |
removeFromWorld()
|
void |
setAsCircle(float size)
Sets the initial shape of the blob to a circle. |
void |
setAsCircle(float x,
float y,
float size)
Sets the initial shape of the blob to a circle. |
void |
setAsCircle(float x,
float y,
float size,
int vertexCount)
Sets the initial shape of the blob to a circle. |
void |
setAsCircle(float size,
int vertexCount)
Sets the initial shape of the blob to a circle. |
void |
setBullet(boolean d)
Set whether the body is a bullet. |
void |
setDamping(float damping)
Sets the damping of the springs used to maintain the volume defined by the vertices constant. |
void |
setDensity(float d)
Set the density of the body. |
void |
setDrawable(boolean val)
Set whether the object must be drawn or not. |
void |
setFillColor(int col)
Set the fill color of the object. |
void |
setFrequency(float frequency)
Sets the frequency of the springs used to maintain the volume defined by the vertices constant. |
void |
setFriction(float d)
Set the friction of the body. |
void |
setNoFill()
Set that the object must be drawn without fill. |
void |
setNoStroke()
Set that the object must be drawn without stroke. |
void |
setRestitution(float d)
Set the restitution of the body. |
void |
setStrokeColor(int col)
Set the stroke color of the object. |
void |
setStrokeWeight(float col)
Set the stroke weight of the object. |
void |
setVertexSize(float size)
Sets the size of the circular vertices of the blob. |
void |
vertex(float x,
float y)
Adds a vertex to the initial shape of the blob. |
Methods inherited from class fisica.FDrawable |
---|
draw, draw, drawDebug, drawDebug, getFillColor, getImageAlpha, isDrawable, setFill, setFill, setFill, setFill, setImageAlpha, setStroke, setStroke, setStroke, setStroke |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public FBlob()
vertex
or setAsCircle
to define the initial shape of the blob.
Method Detail |
---|
public void addToWorld(FWorld world)
addToWorld
in class FBody
public void removeFromWorld()
removeFromWorld
in class FBody
public void addVertexBody(FBody b)
b
- b the body to be addedpublic void vertex(float x, float y)
x
- x coordinate of the vertex to be addedy
- y coordinate of the vertex to be addedpublic float getVertexX(int i)
i
- index of the vertex to retrieve
public float getVertexY(int i)
i
- index of the vertex to retrieve
public void setAsCircle(float x, float y, float size, int vertexCount)
vertex
. This method must be called before adding the body to the world.
x
- x coordinate of the position of the circley
- y coordinate of the position of the circlesize
- size of the circlevertexCount
- number of vertices of the circlepublic void setAsCircle(float x, float y, float size)
vertex
. This method must be called before adding the body to the world.
x
- x coordinate of the position of the circley
- y coordinate of the position of the circlesize
- size of the circlepublic void setAsCircle(float size)
vertex
. This method must be called before adding the body to the world.
size
- size of the circlepublic void setAsCircle(float size, int vertexCount)
vertex
. This method must be called before adding the body to the world.
size
- size of the circlevertexCount
- number of vertices of the circlepublic float getVertexSize()
public void setVertexSize(float size)
size
- size of the circular vertices of the blobpublic java.util.ArrayList getVertexBodies()
public void setFrequency(float frequency)
frequency
- the frequency of the springs of the constant volume jointpublic void setDamping(float damping)
setDamping
in class FBody
damping
- the damping of the springs of the constant volume jointFBody.setAngularDamping(float)
public void addForce(float fx, float fy)
FBody
addForce
in class FBody
fx
- the x coordinate of the forcefy
- the y coordinate of the forceFBody.addTorque(float)
,
FBody.addForce(float,float,float,float)
public void addTorque(float t)
FBody
addTorque
in class FBody
t
- the value of the torqueFBody.addForce(float,float)
,
FBody.addForce(float,float,float,float)
public void setDensity(float d)
FBody
setDensity
in class FBody
d
- the density of the bodypublic void setFriction(float d)
FBody
setFriction
in class FBody
d
- a positive value. A value of 0 means no friction and thus the body will not be slown down if no other forces are appliedpublic void setRestitution(float d)
FBody
setRestitution
in class FBody
d
- a positive value. A value of 0 means no bounce after a collision, and a value of 1 means bounce with it's full speed from a collisionpublic void setBullet(boolean d)
FBody
setBullet
in class FBody
d
- if true
the body will be a bulletpublic void setNoStroke()
FDrawable
setNoStroke
in class FDrawable
FDrawable.setStroke(float)
,
FDrawable.setStroke(float,float)
,
FDrawable.setStroke(float,float,float)
,
FDrawable.setStroke(float,float,float,float)
public void setNoFill()
FDrawable
setNoFill
in class FDrawable
FDrawable.setFill(float)
,
FDrawable.setFill(float,float)
,
FDrawable.setFill(float,float,float)
,
FDrawable.setFill(float,float,float,float)
public void setFillColor(int col)
FDrawable
FDrawable.setFill(float)
, FDrawable.setFill(float,float)
, FDrawable.setFill(float,float,float)
or FDrawable.setFill(float,float,float,float)
setFillColor
in class FDrawable
col
- a Processing color type. e.g. myBody.setFillColor(color(20,100,30,90));
FDrawable.setNoFill()
,
FDrawable.setFill(float)
,
FDrawable.setFill(float,float)
,
FDrawable.setFill(float,float,float)
,
FDrawable.setFill(float,float,float,float)
public void setStrokeColor(int col)
FDrawable
FDrawable.setStroke(float)
, FDrawable.setStroke(float,float)
, FDrawable.setStroke(float,float,float)
or FDrawable.setStroke(float,float,float,float)
setStrokeColor
in class FDrawable
col
- a Processing color type. e.g. myBody.setStrokeColor(color(20,100,30,90));
FDrawable.setNoStroke()
,
FDrawable.setStroke(float)
,
FDrawable.setStroke(float,float)
,
FDrawable.setStroke(float,float,float)
,
FDrawable.setStroke(float,float,float,float)
public void setStrokeWeight(float col)
FDrawable
setStrokeWeight
in class FDrawable
col
- weight value in pixelsFDrawable.setStroke(float)
,
FDrawable.setStroke(float,float)
,
FDrawable.setStroke(float,float,float)
,
FDrawable.setStroke(float,float,float,float)
public void setDrawable(boolean val)
FDrawable
setDrawable
in class FDrawable
val
- if true
the object will be drawn, else it will notFDrawable.isDrawable()
public void attachImage(processing.core.PImage img)
FDrawable
FDrawable.draw(PApplet)
method.
attachImage
in class FDrawable
img
- the PImage to attach to the object.public void dettachImage()
FDrawable
dettachImage
in class FDrawable
FDrawable.attachImage(PImage)
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |