Examples of Vector3


Examples of jinngine.math.Vector3

    scene = new DefaultScene();
    scene.setTimestep(0.1);
   
    // add boxes to bound the world
    Body floor = new Body("floor", new Box(1500,20,1500));
    floor.setPosition(new Vector3(0,-30,0));
    floor.setFixed(true);
   
    Body back = new Body( "back", new Box(200,200,20));   
    back.setPosition(new Vector3(0,0,-55));
    back.setFixed(true);

    Body front = new Body( "front", new Box(200,200,20));   
    front.setPosition(new Vector3(0,0,-7));
    front.setFixed(true);

    Body left = new Body( "left", new Box(20,200,200));   
    left.setPosition(new Vector3(-35,0,0));
    left.setFixed(true);

    Body right = new Body( "right", new Box(20,200,200));   
    right.setPosition(new Vector3(10,0,0));
    right.setFixed(true);
   
    // create a box
    Box boxgeometry = new Box(2,2,2);
    Body box = new Body( "box", boxgeometry );
    box.setPosition(new Vector3(-10,-11,-25));
       
    // add all to scene
    scene.addBody(floor);
    scene.addBody(back);
    scene.addBody(front);   
View Full Code Here

Examples of jinngine.math.Vector3

        // if geometry is usable
        if ( gi instanceof SupportMap3) {

          RayCast raycast = new RayCast();
          Vector3 pb = new Vector3(), pc = new Vector3();
          double t = raycast.run((SupportMap3)gi, null, point, direction, pb, pc, 0, 0.05, 1e-7, true);

//          write out t for debugging
//          System.out.println("t="+t);
         
          if (t<parameter) {
            parameter = t;
            target = bi;
            pickpoint.assign(point.add(direction.multiply(t)));
//            pickpoint.print();
          }
        } // if support map
      } // body is unfixed
    }
   
    // clicked something?
    if (target != null) {
      interacting = true;
     
//      System.out.println("found " + target);
     
      // place controller body into the world at the centre of mass
      // of target body
      controller.setVelocity(new Vector3());
      controller.setPosition(pickpoint);
      controller.updateTransformations();
      target.updateTransformations();

      this.force = new BallInSocketJoint(target, controller, controller.getPosition(), new Vector3(0,1,0));
      this.force.setForceLimit(1.5*target.getMass());
      this.force.setCorrectionVelocityLimit(7);
     
      // copy angular mass properties
      inertia = new InertiaMatrix(target.state.inertia);
View Full Code Here

Examples of jinngine.math.Vector3

    Iterator<ContactPoint> i = g.getContacts();
    while (i.hasNext()) {
      ContactPoint cp = i.next();
      System.out.println(cp.point);
      System.out.println("dist="+cp.distance);
      result.add(new Vector3(cp.point));
    }
   
    // expected contact points, in counter clock-wise order
    expect.clear();
    expect.add(new Vector3(0.5,0.75,0.5));
    expect.add(new Vector3(-0.5,0.75,0.5));
    expect.add(new Vector3(-0.5,0.75,-0.5));
    expect.add(new Vector3(0.5,0.75,-0.5));

    // check
    assertTrue(verifyPolygon(expect, result));

 
    /*
     * Test 2, displace along negative y-axis
     */
   
    // displace box2
    body2.setPosition(0, -1.5, 0);
   
    // run contact point generation
    g.run();
   
    // extract contact points
    result.clear();
    i = g.getContacts();
    while (i.hasNext()) {
      ContactPoint cp = i.next();
      System.out.println(cp.point);
      System.out.println("dist="+cp.distance);
      result.add(new Vector3(cp.point));
    }
   
    // expected contact points, in counter clock-wise order
    expect.clear();
    expect.add(new Vector3( 0.5,-0.75,-0.5));
    expect.add(new Vector3(-0.5,-0.75,-0.5));
    expect.add(new Vector3(-0.5,-0.75, 0.5));
    expect.add(new Vector3( 0.5,-0.75, 0.5));

    // check
    assertTrue(verifyPolygon(expect, result));

 
    /*
     * Test 3, displace along positive x-axis
     */
   
    // displace box2
    body2.setPosition(1.5, 0, 0);
   
    // run contact point generation
    g.run();
   
    // extract contact points
    result.clear();
    i = g.getContacts();
    while (i.hasNext()) {
      ContactPoint cp = i.next();
      System.out.println(cp.point);
      System.out.println("dist="+cp.distance);
      result.add(new Vector3(cp.point));
    }
   
    // expected contact points, in counter clock-wise order
    expect.clear();
    expect.add(new Vector3( 0.75, 0.5, 0.5));
    expect.add(new Vector3( 0.75, 0.5,-0.5));
    expect.add(new Vector3( 0.75,-0.5,-0.5));
    expect.add(new Vector3( 0.75,-0.5, 0.5));

    // check
    assertTrue(verifyPolygon(expect, result));
   
  }
View Full Code Here

Examples of jinngine.math.Vector3

    // iterator for second polygon
    ListIterator<Vector3> poly2iter = poly2.listIterator();

   
    boolean traversalStarted = false;
    Vector3 p2 = poly2iter.next(); // poly2iter will always have a next at this point
    for (Vector3 p1: templist) {
      if (traversalStarted) {   
        // check the next vertex from poly2
        if (poly2iter.hasNext()) {
          p2 = poly2iter.next();
         
          // distance less that epsilon
          if (p2.sub(p1).norm() >= epsilon)
            return false;
        } else {
          // no more vertices
          return true;
        }   
      } else {
        if (p2.sub(p1).norm() < epsilon) {
          traversalStarted = true;
        }
      }
    }
View Full Code Here

Examples of jinngine.math.Vector3

*/
public class Vector3Test {

    @Test
    public void testCtor01() {
        final Vector3 v = new Vector3();
        assertEquals(0., v.x);
        assertEquals(0., v.y);
        assertEquals(0., v.z);
    }
View Full Code Here

Examples of jinngine.math.Vector3

        assertEquals(0., v.z);
    }

    @Test(expected = NullPointerException.class)
    public void testCtor02() {
        new Vector3((Vector3) null);
    }
View Full Code Here

Examples of jinngine.math.Vector3

        new Vector3((Vector3) null);
    }

    @Test
    public void testCtor03() {
        final Vector3 v =
                new Vector3(new Vector3(Double.MIN_VALUE, Double.MAX_VALUE, 0.));
        assertEquals(Double.MIN_VALUE, v.x);
        assertEquals(Double.MAX_VALUE, v.y);
        assertEquals(0., v.z);

        final Vector3 w =
                new Vector3(new Vector3(Double.NaN, Double.POSITIVE_INFINITY, Double.NEGATIVE_INFINITY));
        assertEquals(Double.NaN, w.x);
        assertEquals(Double.POSITIVE_INFINITY, w.y);
        assertEquals(Double.NEGATIVE_INFINITY, w.z);
    }
View Full Code Here

Examples of jinngine.math.Vector3

        assertEquals(Double.NEGATIVE_INFINITY, w.z);
    }

    @Test
    public void testAssign() {
        final Vector3 v = new Vector3();
        final Vector3 r = v.assign(1., 2., 3.);
        assertTrue(r == v);
        assertEquals(1., v.x);
        assertEquals(2., v.y);
        assertEquals(3., v.z);
    }
View Full Code Here

Examples of jinngine.math.Vector3

        assertEquals(3., v.z);
    }

    @Test
    public void testToArray01() {
        final Vector3 v = new Vector3(1., 2., 3.);
        final double[] d = v.toArray();
        assertEquals(1., v.x);
        assertEquals(2., v.y);
        assertEquals(3., v.z);
        assertEquals(3, d.length);
        assertEquals(1., d[0]);
View Full Code Here

Examples of jinngine.math.Vector3

    }

    @Test
    public void testToArray02() {
        final List<Vector3> vertices = new ArrayList<Vector3>();
        vertices.add(new Vector3(1, 2, 3));
        vertices.add(new Vector3(4, 5, 6));
        vertices.add(new Vector3(7, 8, 9));

        final Vector3 v = new Vector3(1., 2., 3.);
        final double[] d = v.toArray();
        assertEquals(1., v.x);
        assertEquals(2., v.y);
        assertEquals(3., v.z);
        assertEquals(3, d.length);
        assertEquals(1., d[0]);
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.