Examples
Original demo 02
This is a PPhys2D adaptation of the Demo 2 included with the original Phys2D.
Applet
Code
//Import all Phys2D libraries
import pphys2d.bodies.*;
import pphys2d.joints.*;
import pphys2d.shapes.*;
import pphys2d.phys2d.raw.collide.*;
import pphys2d.phys2d.raw.strategies.*;
import pphys2d.phys2d.raw.forcesource.*;
import pphys2d.phys2d.util.*;
import pphys2d.phys2d.raw.shapes.*;
import pphys2d.*;
import pphys2d.phys2d.raw.*;
import pphys2d.phys2d.math.*;
//Create a PPhys2D world
PPWorld world = new PPWorld();
void setup () {
//Set size and framerate
frameRate(30);
size(500,500);
world.setGravity(0, 200);
//Ground1
PPBox body1 = new PPBox(600, 20);
body1.setPosition(250, 400);
body1.setStaticBody(true);
body1.setFillColor(new Color(255,255,255));
body1.setStrokeColor(new Color(0,0,0));
world.add(body1);
//Ground2
PPBox body2 = new PPBox(200, 20);
body2.setPosition(360, 340);
body2.setStaticBody(true);
body2.setRotation(0.4);
body2.setFillColor(new Color(255,255,255));
body2.setStrokeColor(new Color(0,0,0));
world.add(body2);
//Ground 3
PPBox body3 = new PPBox(200, 20);
body3.setPosition(140, 340);
body3.setStaticBody(true);
body3.setRotation(-0.4);
body3.setFillColor(new Color(255,255,255));
body3.setStrokeColor(new Color(0,0,0));
world.add(body3);
//Wall 1
PPBox body4 = new PPBox(20.0f, 400.0f);
body4.setPosition(20.0f, 190);
body4.setStaticBody(true);
body4.setFillColor(new Color(255,255,255));
body4.setStrokeColor(new Color(0,0,0));
world.add(body4);
//Wall 2
PPBox body5 = new PPBox(20.0f, 400.0f);
body5.setPosition(480.0f, 190);
body5.setStaticBody(true);
body5.setFillColor(new Color(255,255,255));
body5.setStrokeColor(new Color(0,0,0));
world.add(body5);
//Mover 1
PPBox body6 = new PPBox(50, 50);
body6.setMass(100);
body6.setPosition(250, 4);
body6.setRotation(0.2);
body6.setFillColor(new Color(255,255,255));
body6.setStrokeColor(new Color(0,0,0));
world.add(body6);
//Mover 2
PPBox body7 = new PPBox(50, 50);
body7.setMass(100);
body7.setPosition(230, -60);
body7.setFillColor(new Color(255,255,255));
body7.setStrokeColor(new Color(0,0,0));
world.add(body7);
//Mover 3
PPBox body8 = new PPBox(50, 50);
body8.setMass(100);
body8.setPosition(280, -120);
body8.setFillColor(new Color(255,255,255));
body8.setStrokeColor(new Color(0,0,0));
world.add(body8);
}
void draw () {
//Clear screen
background(255);
//Draw world
world.draw(this);
}
import pphys2d.bodies.*;
import pphys2d.joints.*;
import pphys2d.shapes.*;
import pphys2d.phys2d.raw.collide.*;
import pphys2d.phys2d.raw.strategies.*;
import pphys2d.phys2d.raw.forcesource.*;
import pphys2d.phys2d.util.*;
import pphys2d.phys2d.raw.shapes.*;
import pphys2d.*;
import pphys2d.phys2d.raw.*;
import pphys2d.phys2d.math.*;
//Create a PPhys2D world
PPWorld world = new PPWorld();
void setup () {
//Set size and framerate
frameRate(30);
size(500,500);
world.setGravity(0, 200);
//Ground1
PPBox body1 = new PPBox(600, 20);
body1.setPosition(250, 400);
body1.setStaticBody(true);
body1.setFillColor(new Color(255,255,255));
body1.setStrokeColor(new Color(0,0,0));
world.add(body1);
//Ground2
PPBox body2 = new PPBox(200, 20);
body2.setPosition(360, 340);
body2.setStaticBody(true);
body2.setRotation(0.4);
body2.setFillColor(new Color(255,255,255));
body2.setStrokeColor(new Color(0,0,0));
world.add(body2);
//Ground 3
PPBox body3 = new PPBox(200, 20);
body3.setPosition(140, 340);
body3.setStaticBody(true);
body3.setRotation(-0.4);
body3.setFillColor(new Color(255,255,255));
body3.setStrokeColor(new Color(0,0,0));
world.add(body3);
//Wall 1
PPBox body4 = new PPBox(20.0f, 400.0f);
body4.setPosition(20.0f, 190);
body4.setStaticBody(true);
body4.setFillColor(new Color(255,255,255));
body4.setStrokeColor(new Color(0,0,0));
world.add(body4);
//Wall 2
PPBox body5 = new PPBox(20.0f, 400.0f);
body5.setPosition(480.0f, 190);
body5.setStaticBody(true);
body5.setFillColor(new Color(255,255,255));
body5.setStrokeColor(new Color(0,0,0));
world.add(body5);
//Mover 1
PPBox body6 = new PPBox(50, 50);
body6.setMass(100);
body6.setPosition(250, 4);
body6.setRotation(0.2);
body6.setFillColor(new Color(255,255,255));
body6.setStrokeColor(new Color(0,0,0));
world.add(body6);
//Mover 2
PPBox body7 = new PPBox(50, 50);
body7.setMass(100);
body7.setPosition(230, -60);
body7.setFillColor(new Color(255,255,255));
body7.setStrokeColor(new Color(0,0,0));
world.add(body7);
//Mover 3
PPBox body8 = new PPBox(50, 50);
body8.setMass(100);
body8.setPosition(280, -120);
body8.setFillColor(new Color(255,255,255));
body8.setStrokeColor(new Color(0,0,0));
world.add(body8);
}
void draw () {
//Clear screen
background(255);
//Draw world
world.draw(this);
}