Package toxi.geom

Examples of toxi.geom.Rect


    }

    public abstract void erodeAt(int x, int y);

    public void erodeWithinPolygon(Polygon2D poly) {
        Rect bounds = poly.getBounds().intersectionRectWith(
                new Rect(1, 1, width - 2, height - 2));
        Vec2D pos = new Vec2D();
        for (int y = (int) bounds.getTop(), y2 = (int) bounds.getBottom(); y < y2; y++) {
            for (int x = (int) bounds.getLeft(), x2 = (int) bounds.getRight(); x < x2; x++) {
                if (poly.containsPoint(pos.set(x, y))) {
                    erodeAt(x, y);
                }
            }
        }
View Full Code Here


import toxi.geom.Vec2D;

public class RectTest extends TestCase {

    public void testIntersectionRect() {
        Rect a = new Rect(100, 100, 100, 100);
        Rect b = new Rect(80, 80, 100, 100);
        Rect i = a.intersectionRectWith(b);
        assertEquals(new Rect(100, 100, 80, 80), i);
        b = new Rect(80, 80, 20, 20);
        i = a.intersectionRectWith(b);
        assertEquals(new Vec2D(), i.getDimensions());
        b.width = 10;
        i = a.intersectionRectWith(b);
        assertNull(i);
        b = new Rect(180, 180, 30, 50);
        i = a.intersectionRectWith(b);
        assertEquals(new Rect(180, 180, 20, 20), i);
    }
View Full Code Here

        i = a.intersectionRectWith(b);
        assertEquals(new Rect(180, 180, 20, 20), i);
    }

    public void testIsec() {
        Rect a = new Rect(100, 100, 100, 100);
        Rect b = new Rect(110, 110, 10, 10);
        assertTrue(a.intersectsRect(b));
        assertTrue(b.intersectsRect(a));
        b = new Rect(80, 80, 30, 200);
        assertTrue(a.intersectsRect(b));
    }
View Full Code Here

        b = new Rect(80, 80, 30, 200);
        assertTrue(a.intersectsRect(b));
    }

    public void testRectMerge() {
        Rect r = new Rect(-10, 2, 3, 3);
        Rect s = new Rect(-8, 4, 5, 3);
        r = r.unionRectWith(s);
        assertEquals(new Rect(-10, 2, 7, 5), r);
        r = new Rect(0, 0, 3, 3);
        s = new Rect(-1, 2, 1, 1);
        r = r.unionRectWith(s);
        assertEquals(new Rect(-1, 0, 4, 3), r);
    }
View Full Code Here

        assertEquals(t.index(new Vec2D(1, 1)), true);
        assertEquals(t.index(new Vec2D(4, 0)), true);
        PointQuadtree leaf1 = t.findNode(new Vec2D(0, 0));
        PointQuadtree leaf2 = t.findNode(new Vec2D(4, 0));
        assertNotSame(leaf1, leaf2);
        List<Vec2D> points = t.itemsWithinRect(new Rect(0, 0, 2, 2), null);
        assertEquals(2, points.size());
    }
View Full Code Here

        this.isContainer = isContainer;
        setBox(rect);
    }

    public RectConstraint(Vec2D min, Vec2D max) {
        this(new Rect(min, max), false);
    }
View Full Code Here

        size(1024, 640, OPENGL);
        frameRate(999);
        gfx = new ToxiclibsSupport(this);
        physics = new VerletPhysics2D();
        physics.setDrag(0.1f);
        physics.setWorldBounds(new Rect(0, 0, width, height));
        physics.addBehavior(new GravityBehavior2D(new Vec2D(0, 0.15f)));
        physics.setIndex(new PointQuadtree(null, 0, 0, width + 1, height + 1));
        // physics.setIndex(new SpatialBins<Vec2D>(0, width, 80,
        // new CoordinateExtractor<Vec2D>() {
        //
View Full Code Here

            JAXBGeomTest test = new JAXBGeomTest();
            test.box = new AABB();
            test.plane = new Plane();
            test.quat = new Quaternion(0, Vec3D.X_AXIS);
            test.ray = new Ray3D();
            test.rect = new Rect(0, 0, 100, 200);
            test.sphere = new Sphere();
            test.tri = new Triangle3D(new Vec3D(), new Vec3D(), new Vec3D());
            List<Vec2D> points2d = new ArrayList<Vec2D>();
            points2d.add(new Vec2D());
            points2d.add(new Vec2D());
View Full Code Here

    private PointQuadtree tree;

    public void draw() {
        background(255);
        Circle c = new Circle(new Vec2D(mouseX, mouseY), 100);
        Rect r = new Rect(200, 200, 300, 100);
        stroke(r.intersectsCircle(c, c.getRadius()) ? 0xffff0000 : 0xff000000);
        noFill();
        gfx.ellipse(c);
        gfx.rect(r);
        List<Vec2D> sel = tree.itemsWithinRadius(c, c.getRadius(), null);
        // List<Vec2D> sel = tree.itemsWithinRect(new Rect(mouseX, mouseY, 200,
View Full Code Here

        for (Iterator<VerletParticle2D> i = particles.iterator(); i.hasNext();) {
            VerletParticle2D p = i.next();
            min.minSelf(p);
            max.maxSelf(p);
        }
        return new Rect(min, max);
    }
View Full Code Here

TOP

Related Classes of toxi.geom.Rect

Copyright © 2018 www.massapicom. 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.