Examples

Original demo 18

This is a PPhys2D adaptation of the Demo 18 included with the original Phys2D. It includes line test.

Applet

This browser does not have a Java Plug-in.
Get the latest Java Plug-in here.

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);
  
  //Set a standard world gravity
  world.setGravity(0, 200);

  //Ground 1
  PPLine body1 = new PPLine(0,0,100, 50);
  body1.setPosition(150, 150);
  body1.setStaticBody(true);
  body1.setStrokeColor(new Color(0,0,0)); 
  world.add(body1);

  //Ground 2
  PPLine body2 = new PPLine(0,0,150, -75);
  body2.setPosition(250, 300);
  body2.setStaticBody(true);
  body2.setStrokeColor(new Color(0,0,0)); 
  world.add(body2);

  //Ground 3
  PPLine body3 = new PPLine(0,0,150, 75);
  body3.setPosition(100, 350);
  body3.setStaticBody(true);
  body3.setStrokeColor(new Color(0,0,0)); 
  world.add(body3);

  //Ground 4
  PPLine body5 = new PPLine(0,0,150, 0);
  body5.setPosition(275, 450);
  body5.setStaticBody(true);
  body5.setStrokeColor(new Color(0,0,0)); 
  world.add(body5);

  //Moving
  PPBox body4 = new PPBox(50,50);
  body4.setPosition(200, 50);
  body4.setStrokeColor(new Color(0,0,0)); 
  world.add(body4);
}

void draw () {
  //Clear screen
  background(255); 
  //Draw world
  world.draw(this);
}