當前位置: 首頁>>代碼示例>>Java>>正文


Java PolygonShape.dispose方法代碼示例

本文整理匯總了Java中com.badlogic.gdx.physics.box2d.PolygonShape.dispose方法的典型用法代碼示例。如果您正苦於以下問題:Java PolygonShape.dispose方法的具體用法?Java PolygonShape.dispose怎麽用?Java PolygonShape.dispose使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在com.badlogic.gdx.physics.box2d.PolygonShape的用法示例。


在下文中一共展示了PolygonShape.dispose方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: createBody

import com.badlogic.gdx.physics.box2d.PolygonShape; //導入方法依賴的package包/類
private void createBody() {
	BodyDef bodyDef = new BodyDef();
	bodyDef.type = BodyType.DynamicBody;
	
	// Set our body's starting position in the world
	bodyDef.position.set(Gdx.input.getX() / 100f, camera.viewportHeight - Gdx.input.getY() / 100f);
	
	// Create our body in the world using our body definition
	Body body = world.createBody(bodyDef);

	// Create a circle shape and set its radius to 6
	PolygonShape square = new PolygonShape();
	square.setAsBox(0.3f, 0.3f);

	// Create a fixture definition to apply our shape to
	FixtureDef fixtureDef = new FixtureDef();
	fixtureDef.shape = square;
	fixtureDef.density = 0.5f;
	fixtureDef.friction = 0.5f;
	fixtureDef.restitution = 0.5f;

	// Create our fixture and attach it to the body
	body.createFixture(fixtureDef);

	square.dispose();
}
 
開發者ID:jocasolo,項目名稱:water2d-libgdx,代碼行數:27,代碼來源:GameMain.java

示例2: createTopTube

import com.badlogic.gdx.physics.box2d.PolygonShape; //導入方法依賴的package包/類
public static Array<Body> createTopTube(World world, float posX) {

        float posY = generateTubePosition();

        BodyDef bodyDef = new BodyDef();
        bodyDef.type = BodyDef.BodyType.KinematicBody;
        bodyDef.position.set(posX, posY);
        PolygonShape shape = new PolygonShape();
        shape.setAsBox(Constants.TUBE_WIDTH / 2, Constants.TUBE_HEIGHT / 2);
        Body bodyTop = world.createBody(bodyDef);
        bodyTop.createFixture(shape, 0f);
        bodyTop.resetMassData();
        shape.dispose();
        bodyTop.setLinearVelocity(Constants.TUBE_SPEED, 0.0f);
        Array<Body> bodies = new Array<Body>();
        bodies.add(bodyTop);
        bodies.add(createBottomTube(world, posX, posY));
        return bodies;
    }
 
開發者ID:ZephyrVentum,項目名稱:FlappySpinner,代碼行數:20,代碼來源:WorldUtils.java

示例3: createBody

import com.badlogic.gdx.physics.box2d.PolygonShape; //導入方法依賴的package包/類
@Override
protected Body createBody(final Box2DService box2d) {
    final BodyDef bodyDef = new BodyDef();
    bodyDef.type = BodyType.StaticBody;
    bodyDef.fixedRotation = true;

    final PolygonShape shape = new PolygonShape();
    shape.setAsBox(Block.HALF_SIZE, Block.HALF_SIZE);
    final FixtureDef fixtureDef = new FixtureDef();
    fixtureDef.isSensor = true;
    fixtureDef.shape = shape;
    fixtureDef.filter.categoryBits = Box2DUtil.CAT_BLOCK;
    fixtureDef.filter.maskBits = Box2DUtil.MASK_BLOCK;
    final Body body = box2d.getWorld().createBody(bodyDef);
    body.createFixture(fixtureDef);
    shape.dispose();
    return body;
}
 
開發者ID:BialJam,項目名稱:M-M,代碼行數:19,代碼來源:Bonus.java

示例4: createBody

import com.badlogic.gdx.physics.box2d.PolygonShape; //導入方法依賴的package包/類
@Override
protected Body createBody(final Box2DService box2d) {
    final BodyDef bodyDef = new BodyDef();
    bodyDef.type = BodyType.StaticBody;
    bodyDef.fixedRotation = true;

    final PolygonShape shape = new PolygonShape();
    shape.setAsBox(HALF_SIZE, HALF_SIZE);
    final FixtureDef fixtureDef = new FixtureDef();
    fixtureDef.restitution = 1f;
    fixtureDef.friction = 0f;
    fixtureDef.shape = shape;
    fixtureDef.filter.categoryBits = Box2DUtil.CAT_BLOCK;
    fixtureDef.filter.maskBits = Box2DUtil.MASK_BLOCK;
    final Body body = box2d.getWorld().createBody(bodyDef);
    body.createFixture(fixtureDef);
    shape.dispose();
    return body;
}
 
開發者ID:BialJam,項目名稱:M-M,代碼行數:20,代碼來源:Block.java

示例5: Block

import com.badlogic.gdx.physics.box2d.PolygonShape; //導入方法依賴的package包/類
public Block(World world, float x, float f, BodyType type, boolean invisible) {
	BodyDef bd = new BodyDef();
	bd.type = type;
	bd.position.set(x, f);
	PolygonShape shape = new PolygonShape();
	shape.setAsBox(size / 2, size / 2);
	FixtureDef fd = new FixtureDef();
	fd.density = 0.1f;
	fd.shape = shape;
	fd.friction = 0.1f;
	fd.filter.groupIndex = Advio.GROUP_DONT_COLLIDE_WITH_PLAYER;
	// fd.filter.groupIndex = Advio.GROUP_SCENERY;
	body = world.createBody(bd);
	body.createFixture(fd).setUserData(new UserData("block"));
	this.invisible = invisible;
	shape.dispose();
}
 
開發者ID:lvivtotoro,項目名稱:advio,代碼行數:18,代碼來源:Block.java

示例6: PressurePlate

import com.badlogic.gdx.physics.box2d.PolygonShape; //導入方法依賴的package包/類
public PressurePlate(Level l, World world, float x, float y, float weight, Block[] blocks) {
	super(x, y);
	this.level = l;
	BodyDef bd = new BodyDef();
	bd.type = BodyType.KinematicBody;
	bd.position.set(x, y);
	PolygonShape shape = new PolygonShape();
	shape.setAsBox(Block.size / 2, Block.size / 2);
	FixtureDef fd = new FixtureDef();
	fd.density = 0.0f;
	fd.shape = shape;
	fd.friction = 0.1f;
	fd.isSensor = true;
	this.blocks = new ArrayList<Block>(Arrays.asList(blocks));
	body = world.createBody(bd);
	body.createFixture(fd).setUserData(new UserData("plate").add("pressed", false).add("weight", weight));
	shape.dispose();
	this.world = world;
}
 
開發者ID:lvivtotoro,項目名稱:advio,代碼行數:20,代碼來源:PressurePlate.java

示例7: AgarLogic

import com.badlogic.gdx.physics.box2d.PolygonShape; //導入方法依賴的package包/類
public AgarLogic(Level l, World world, float x, float y) {
	super(x, y);
	this.level = l;
	BodyDef bd = new BodyDef();
	bd.type = BodyType.KinematicBody;
	bd.position.set(x, y);
	PolygonShape shape = new PolygonShape();
	shape.setAsBox(Block.size / 2, Block.size / 2);
	FixtureDef fd = new FixtureDef();
	fd.density = 0.0f;
	fd.shape = shape;
	fd.friction = 0.1f;
	fd.isSensor = true;
	body = world.createBody(bd);
	body.createFixture(fd).setUserData(new UserData("agariologic"));
	shape.dispose();
	this.world = world;
}
 
開發者ID:lvivtotoro,項目名稱:advio,代碼行數:19,代碼來源:AgarLogic.java

示例8: Goal

import com.badlogic.gdx.physics.box2d.PolygonShape; //導入方法依賴的package包/類
public Goal(World world, float x, float y) {
	super(x, y);
	BodyDef bd = new BodyDef();
	bd.type = BodyType.KinematicBody;
	bd.position.set(x, y);
	PolygonShape shape = new PolygonShape();
	shape.setAsBox(Block.size / 2, Block.size / 2);
	FixtureDef fd = new FixtureDef();
	fd.density = 0.1f;
	fd.shape = shape;
	fd.friction = 0.1f;
	fd.isSensor = true;
	// fd.filter.groupIndex = Advio.GROUP_SCENERY;
	body = world.createBody(bd);
	body.createFixture(fd).setUserData(new UserData("goal"));
	shape.dispose();
}
 
開發者ID:lvivtotoro,項目名稱:advio,代碼行數:18,代碼來源:Goal.java

示例9: SpikeEntity

import com.badlogic.gdx.physics.box2d.PolygonShape; //導入方法依賴的package包/類
/**
 * Create some spike
 *
 * @param world
 * @param texture
 * @param x  horizontal position for the center of the spike (meters)
 * @param y  vertical position for the base of the spike (meters)
 */
public SpikeEntity(World world, Texture texture, float x, float y) {
    this.world = world;
    this.texture = texture;

    // Create the body.
    BodyDef def = new BodyDef();                // (1) Give it some definition.
    def.position.set(x, y + 0.5f);              // (2) Position the body on the world.
    body = world.createBody(def);               // (3) Create the body.

    // Now give it a shape.
    PolygonShape box = new PolygonShape();      // (1) We will make a polygon.
    Vector2[] vertices = new Vector2[3];        // (2) However vertices will be manually added.
    vertices[0] = new Vector2(-0.5f, -0.5f);    // (3) Add the vertices for a triangle.
    vertices[1] = new Vector2(0.5f, -0.5f);
    vertices[2] = new Vector2(0, 0.5f);
    box.set(vertices);                          // (4) And put them in the shape.
    fixture = body.createFixture(box, 1);       // (5) Create the fixture.
    fixture.setUserData("spike");               // (6) And set the user data to enemy.
    box.dispose();                              // (7) Destroy the shape when you don't need it.

    // Position the actor in the screen by converting the meters to pixels.
    setPosition((x - 0.5f) * Constants.PIXELS_IN_METER, y * Constants.PIXELS_IN_METER);
    setSize(Constants.PIXELS_IN_METER, Constants.PIXELS_IN_METER);
}
 
開發者ID:danirod,項目名稱:jumpdontdie,代碼行數:33,代碼來源:SpikeEntity.java

示例10: PlayerEntity

import com.badlogic.gdx.physics.box2d.PolygonShape; //導入方法依賴的package包/類
public PlayerEntity(World world, Texture texture, Vector2 position) {
    this.world = world;
    this.texture = texture;

    // Create the player body.
    BodyDef def = new BodyDef();                // (1) Create the body definition.
    def.position.set(position);                 // (2) Put the body in the initial position.
    def.type = BodyDef.BodyType.DynamicBody;    // (3) Remember to make it dynamic.
    body = world.createBody(def);               // (4) Now create the body.

    // Give it some shape.
    PolygonShape box = new PolygonShape();      // (1) Create the shape.
    box.setAsBox(0.5f, 0.5f);                   // (2) 1x1 meter box.
    fixture = body.createFixture(box, 3);       // (3) Create the fixture.
    fixture.setUserData("player");              // (4) Set the user data.
    box.dispose();                              // (5) Destroy the shape.

    // Set the size to a value that is big enough to be rendered on the screen.
    setSize(es.danirod.jddprototype.game.Constants.PIXELS_IN_METER, es.danirod.jddprototype.game.Constants.PIXELS_IN_METER);
}
 
開發者ID:danirod,項目名稱:jumpdontdie,代碼行數:21,代碼來源:PlayerEntity.java

示例11: Player

import com.badlogic.gdx.physics.box2d.PolygonShape; //導入方法依賴的package包/類
public Player(World world, float x, float y, float width, float height) {
	
	BodyDef bodyDef = new BodyDef();
	bodyDef.type = BodyType.StaticBody;
	bodyDef.position.set(x, y);
	this.width = width;
	this.height = height;
	
	
	PolygonShape shape = new PolygonShape();
	shape.setAsBox(width, height);

	FixtureDef fixtureDef = new FixtureDef();
	fixtureDef.shape = shape;
					
	body = world.createBody(bodyDef);
	fixture = body.createFixture(fixtureDef);
	
	shape.dispose();
}
 
開發者ID:CODA-Masters,項目名稱:Pong-Tutorial,代碼行數:21,代碼來源:Player.java

示例12: createRectangle

import com.badlogic.gdx.physics.box2d.PolygonShape; //導入方法依賴的package包/類
/**
 * 
 * @param world
 * @param rectangleObject
 * @param density
 * @param friction
 * @param restitution
 */
private void createRectangle(World world, RectangleMapObject rectangleObject, float density, float friction, float restitution){
	Rectangle rect = rectangleObject.getRectangle();
	PolygonShape shape = new PolygonShape();
	shape.setAsBox(rect.width / SupaBox.PPM / 2f, rect.height / SupaBox.PPM / 2f);
	
	BodyDef bodyDef = new BodyDef();
	bodyDef.type = BodyType.StaticBody;
	bodyDef.position.set(new Vector2((rect.x + rect.width / 2f) / SupaBox.PPM, (rect.y + rect.height / 2f) / SupaBox.PPM));
	
	Body body = world.createBody(bodyDef);
	
	FixtureDef fixtureDef = new FixtureDef();
	fixtureDef.shape = shape;
	fixtureDef.density = density;
	fixtureDef.friction = friction;
	fixtureDef.restitution = restitution;
	
	body.createFixture(fixtureDef);
	
	shape.dispose();
}
 
開發者ID:ryanshappell,項目名稱:SupaBax,代碼行數:30,代碼來源:BodyBuilder.java

示例13: createIndestructible

import com.badlogic.gdx.physics.box2d.PolygonShape; //導入方法依賴的package包/類
public void createIndestructible(float x, float y, TextureAtlas tileTextureAtlas) {
    BodyDef bodyDef = new BodyDef();
    bodyDef.type = BodyDef.BodyType.StaticBody;
    bodyDef.position.set(x, y);

    Body body = b2dWorld.createBody(bodyDef);
    PolygonShape polygonShape = new PolygonShape();
    polygonShape.setAsBox(0.5f, 0.5f);
    FixtureDef fixtureDef = new FixtureDef();
    fixtureDef.shape = polygonShape;
    fixtureDef.filter.categoryBits = GameManager.INDESTRUCTIIBLE_BIT;
    fixtureDef.filter.maskBits = GameManager.PLAYER_BIT | GameManager.ENEMY_BIT | GameManager.BOMB_BIT;
    body.createFixture(fixtureDef);

    polygonShape.dispose();

    Renderer renderer = new Renderer(new TextureRegion(tileTextureAtlas.findRegion("indestructible"), 0, 0, 16, 16), 16 / GameManager.PPM, 16 / GameManager.PPM);
    renderer.setOrigin(16 / GameManager.PPM / 2, 16 / GameManager.PPM / 2);

    new EntityBuilder(world)
            .with(
                    new Transform(x, y, 1f, 1f, 0),
                    renderer
            )
            .build();
}
 
開發者ID:yichen0831,項目名稱:Bomberman_libGdx,代碼行數:27,代碼來源:ActorBuilder.java

示例14: createRectangleBody

import com.badlogic.gdx.physics.box2d.PolygonShape; //導入方法依賴的package包/類
public static Body createRectangleBody(float x, float y, float width, float height, BodyType type, float density, float friction, float restitution, World world) {
	
	final BodyDef def = new BodyDef();
	def.position.set(x, y);
	def.type = type;
	
	PolygonShape shape =  new PolygonShape();
	shape.setAsBox(width / 2, height / 2);
	
	FixtureDef fixt = new FixtureDef();
	fixt.shape = shape;
	fixt.density = density; 
	fixt.friction = friction; 
	fixt.restitution = restitution; 	
	
	Body bb = world.createBody(def);
	bb.createFixture(fixt);
	
	shape.dispose();
	
	return bb;
}
 
開發者ID:costular,項目名稱:crabox,代碼行數:23,代碼來源:Utils.java

示例15: Bin

import com.badlogic.gdx.physics.box2d.PolygonShape; //導入方法依賴的package包/類
public Bin(World world, float x, float y, float width, float height) {
	WIDTH = width;
	HEIGHT = height;
	this.world = world;
	nibolasInside = false;

	BodyDef bodyDef = new BodyDef();
	bodyDef.type = BodyType.StaticBody;
	bodyDef.position.set(x, y);
	bodyDef.fixedRotation = true;

	PolygonShape shape = new PolygonShape();
	shape.setAsBox(width / 2, height/2);

	FixtureDef fixtureDef = new FixtureDef();
	fixtureDef.shape = shape;
	fixtureDef.restitution = 0;
	fixtureDef.friction = 0;
	fixtureDef.density = 3;

	body = world.createBody(bodyDef);
	fixture = body.createFixture(fixtureDef);
	
	shape.dispose();
	
}
 
開發者ID:CODA-Masters,項目名稱:Little-Nibolas,代碼行數:27,代碼來源:Bin.java


注:本文中的com.badlogic.gdx.physics.box2d.PolygonShape.dispose方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。