当前位置: 首页>>代码示例>>Java>>正文


Java PhysicsWorld.createBody方法代码示例

本文整理汇总了Java中org.andengine.extension.physics.box2d.PhysicsWorld.createBody方法的典型用法代码示例。如果您正苦于以下问题:Java PhysicsWorld.createBody方法的具体用法?Java PhysicsWorld.createBody怎么用?Java PhysicsWorld.createBody使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.andengine.extension.physics.box2d.PhysicsWorld的用法示例。


在下文中一共展示了PhysicsWorld.createBody方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: PiezaPalo

import org.andengine.extension.physics.box2d.PhysicsWorld; //导入方法依赖的package包/类
/**
	 * Crea una pieza  de tipo Palo
	 * 
	 * @param mundo
	 *            el mundo
	 * @param x
	 *            coordenada x
	 * @param y
	 *            coordenada y
	 * @param tamaño_bloque
	 *            el tamaño del bloque
	 * @param fixturedef
	 *            la propiedades de los bloques
	 * @param bodydef
	 *            las propiedades de la pieza
	 */
	public PiezaPalo(PhysicsWorld mundo, float x, float y, float tamaño_bloque,
			FixtureDef fixturedef,BodyDef bodydef) {
		super(mundo, x, y, tamaño_bloque, fixturedef, bodydef);
		tipo= PIEZAS.PIEZA_PALO;
		
		 float xf = x / PhysicsConstants.PIXEL_TO_METER_RATIO_DEFAULT;
		 float yf = y / PhysicsConstants.PIXEL_TO_METER_RATIO_DEFAULT;
		
		cuerpo= mundo.createBody(bodydef);
		bloques.add(new Bloque(mundo,cuerpo,-1,-2,tamaño_bloque,ColorBloque.ROJO ,fixturedef ));
		bloques.add(new Bloque(mundo,cuerpo,-1,-1,tamaño_bloque,ColorBloque.ROJO ,fixturedef ));
		bloques.add(new Bloque(mundo,cuerpo,-1,0,tamaño_bloque,ColorBloque.ROJO ,fixturedef ));
		bloques.add(new Bloque(mundo,cuerpo,-1,1,tamaño_bloque,ColorBloque.ROJO ,fixturedef ));
		cuerpo.setTransform(xf, yf, 0);
		cuerpo.setUserData(this); 
		bloques.get(0).getAdyacentes().add(bloques.get(1));
		bloques.get(1).getAdyacentes().add(bloques.get(0));
		
//	bloques.get(0).getCuerpo().destroyFixture();
		bloques.get(1).getAdyacentes().add(bloques.get(2));
		bloques.get(2).getAdyacentes().add(bloques.get(1));
		
		bloques.get(2).getAdyacentes().add(bloques.get(3));
		bloques.get(3).getAdyacentes().add(bloques.get(2));
		
		 for(Bloque b: bloques){
			 b.setPadre(this);
			 this.contenedor.attachChild(b.getGrafico());
		 }
		
		 this.mundo = mundo;
			this.conector = new PhysicsConnector(contenedor, cuerpo);
			
			 mundo.registerPhysicsConnector(conector);
	}
 
开发者ID:sprayz,项目名称:Phytris,代码行数:52,代码来源:PiezaPalo.java

示例2: PiezaBase

import org.andengine.extension.physics.box2d.PhysicsWorld; //导入方法依赖的package包/类
/**
 * Crea una pieza a partir  de un conjunto de bloques.
 * 
 * @param mundo
 *            el mundo
 * @param lista_bloques
 *            los bloques
 */
private PiezaBase(PhysicsWorld mundo,List<Bloque> lista_bloques){
	ArrayList<Bloque> bloques_nuevos = new ArrayList<Bloque>();
	BodyDef bdef;
	FixtureDef fdef;
	Body cuerpo_antiguo = lista_bloques.get(0).getCuerpo();
	
	
	
	
	
	//sacamos la definicion del cuerpo anterior
	bdef = Utilidades.bodyToDef(cuerpo_antiguo);

	//y creamos uno nuevo idéntico
	this.cuerpo = mundo.createBody(bdef);
	
	
	this.cuerpo.setUserData(this);
	for(Bloque b : lista_bloques){
		fdef = Utilidades.fixtureToDef(b.getFixtura());
		Bloque nuevo = new Bloque(mundo,this.cuerpo,b.getX(),b.getY(),b.getGrafico().getWidth(),b.getColor(),fdef);
		nuevo.setPadre(this);
		bloques.add(nuevo);
		contenedor.attachChild( nuevo.getGrafico());
		
	}
	List<Bloque> adyacentes_nuevos;
	int indice ;
	//para cada bloque
	for(int i=0;i< lista_bloques.size();i++){
		//por cada adyacente del antiguo
		for(Bloque adj : lista_bloques.get(i).getAdyacentes()){
		
			adyacentes_nuevos = bloques.get(i).getAdyacentes();
			//añadimos los adyacentes del nuevo que tengan el mismo indice que los adyacentes del viejo
			indice = lista_bloques.indexOf(adj);
			if(indice <0)
				break;
			adyacentes_nuevos.add(bloques.get(indice));
			
	}
		
		
	}
	this.mundo = mundo;
	this.conector = new PhysicsConnector(contenedor, cuerpo);
	
	 mundo.registerPhysicsConnector(conector);

}
 
开发者ID:sprayz,项目名称:Phytris,代码行数:59,代码来源:PiezaBase.java

示例3: PiezaLlave2

import org.andengine.extension.physics.box2d.PhysicsWorld; //导入方法依赖的package包/类
/**
	 * Crea una pieza  de tipo Llave2
	 * 
	 * @param mundo
	 *            el mundo
	 * @param x
	 *            coordenada x
	 * @param y
	 *            coordenada y
	 * @param tamaño_bloque
	 *            el tamaño del bloque
	 * @param fixturedef
	 *            la propiedades de los bloques
	 * @param bodydef
	 *            las propiedades de la pieza
	 */
	public PiezaLlave2(PhysicsWorld mundo, float x, float y, float tamaño_bloque,
			FixtureDef fixturedef,BodyDef bodydef) {
		super(mundo, x, y, tamaño_bloque, fixturedef, bodydef);
		tipo= PIEZAS.PIEZA_LLAVE2;
		
		 float xf = x / PhysicsConstants.PIXEL_TO_METER_RATIO_DEFAULT;
		 float yf = y / PhysicsConstants.PIXEL_TO_METER_RATIO_DEFAULT;
	
		
		cuerpo= mundo.createBody(bodydef);
		bloques.add(new Bloque(mundo,cuerpo,-1.5f,-1f,tamaño_bloque,ColorBloque.VERDE ,fixturedef ));
		bloques.add(new Bloque(mundo,cuerpo,-0.5f,-1f,tamaño_bloque,ColorBloque.VERDE ,fixturedef ));
		bloques.add(new Bloque(mundo,cuerpo,-0.5f,0f,tamaño_bloque,ColorBloque.VERDE ,fixturedef ));
		bloques.add(new Bloque(mundo,cuerpo,0.5f,0f,tamaño_bloque,ColorBloque.VERDE ,fixturedef ));
		cuerpo.setTransform(xf, yf, 0);
		 
		cuerpo.setUserData(this); 
		bloques.get(0).getAdyacentes().add(bloques.get(1));
	
		
		
		bloques.get(1).getAdyacentes().add(bloques.get(2));
		bloques.get(1).getAdyacentes().add(bloques.get(0));
		
		
//	bloques.get(0).getCuerpo().destroyFixture();
		bloques.get(2).getAdyacentes().add(bloques.get(1));
		bloques.get(2).getAdyacentes().add(bloques.get(3));
		
		
		
		bloques.get(3).getAdyacentes().add(bloques.get(2));
		
		 
		 for(Bloque b: bloques){
			 b.setPadre(this);
			 this.contenedor.attachChild(b.getGrafico());
		 }
		
		 this.mundo = mundo;
			this.conector = new PhysicsConnector(contenedor, cuerpo);
			
			 mundo.registerPhysicsConnector(conector);
		 
	}
 
开发者ID:sprayz,项目名称:Phytris,代码行数:62,代码来源:PiezaLlave2.java

示例4: PiezaCuadrado

import org.andengine.extension.physics.box2d.PhysicsWorld; //导入方法依赖的package包/类
/**
 * Crea una pieza  de tipo cuadrado
 * 
 * @param mundo
 *            el mundo
 * @param x
 *            coordenada x
 * @param y
 *            coordenada y
 * @param tamaño_bloque
 *            el tamaño del bloque
 * @param fixturedef
 *            la propiedades de los bloques
 * @param bodydef
 *            las propiedades de la pieza
 */
public PiezaCuadrado(PhysicsWorld mundo, float x, float y, float tamaño_bloque,
		FixtureDef fixturedef,BodyDef bodydef) {
	super(mundo, x, y, tamaño_bloque, fixturedef,bodydef);
	
	tipo= PIEZAS.PIEZA_CUBO;
	
	 float xf = x / PhysicsConstants.PIXEL_TO_METER_RATIO_DEFAULT;
	 float yf = y / PhysicsConstants.PIXEL_TO_METER_RATIO_DEFAULT;
	
	
	cuerpo= mundo.createBody(bodydef);
	bloques.add(new Bloque(mundo,cuerpo,-1,0,tamaño_bloque,ColorBloque.MORADO ,fixturedef ));
	bloques.add(new Bloque(mundo,cuerpo,0,0,tamaño_bloque,ColorBloque.MORADO ,fixturedef ));
	bloques.add(new Bloque(mundo,cuerpo,-1,-1,tamaño_bloque,ColorBloque.MORADO ,fixturedef ));
	bloques.add(new Bloque(mundo,cuerpo,0,-1,tamaño_bloque,ColorBloque.MORADO ,fixturedef ));
	cuerpo.setTransform(xf, yf, 0);
	cuerpo.setUserData(this); 
	
	bloques.get(0).getAdyacentes().add(bloques.get(1));
	bloques.get(0).getAdyacentes().add(bloques.get(2));

	
	
	bloques.get(1).getAdyacentes().add(bloques.get(0));
	bloques.get(1).getAdyacentes().add(bloques.get(3));
	

	bloques.get(2).getAdyacentes().add(bloques.get(0));
	bloques.get(2).getAdyacentes().add(bloques.get(3));
	
	
	
	bloques.get(3).getAdyacentes().add(bloques.get(1));
	bloques.get(3).getAdyacentes().add(bloques.get(2));
	
	 
	 for(Bloque b: bloques){
		 b.setPadre(this);
		 this.contenedor.attachChild(b.getGrafico());
	 }
	
	 this.mundo = mundo;
		this.conector = new PhysicsConnector(contenedor, cuerpo);
		
		 mundo.registerPhysicsConnector(conector);
}
 
开发者ID:sprayz,项目名称:Phytris,代码行数:63,代码来源:PiezaCuadrado.java

示例5: PiezaL2

import org.andengine.extension.physics.box2d.PhysicsWorld; //导入方法依赖的package包/类
/**
	 * Crea una pieza  de tipo L2
	 * 
	 * @param mundo
	 *            el mundo
	 * @param x
	 *            coordenada x
	 * @param y
	 *            coordenada y
	 * @param tamaño_bloque
	 *            el tamaño del bloque
	 * @param fixturedef
	 *            la propiedades de los bloques
	 * @param bodydef
	 *            las propiedades de la pieza
	 */
	public PiezaL2(PhysicsWorld mundo, float x, float y, float tamaño_bloque,
			FixtureDef fixturedef,BodyDef bodydef) {
		super(mundo, x, y, tamaño_bloque, fixturedef, bodydef);
		tipo= PIEZAS.PIEZA_L2;
		
		 float xf = x / PhysicsConstants.PIXEL_TO_METER_RATIO_DEFAULT;
		 float yf = y / PhysicsConstants.PIXEL_TO_METER_RATIO_DEFAULT;
		
		
		cuerpo= mundo.createBody(bodydef);
		bloques.add(new Bloque(mundo,cuerpo,0,-1.5f,tamaño_bloque,ColorBloque.AZUL ,fixturedef ));
		bloques.add(new Bloque(mundo,cuerpo,-1,-1.5f,tamaño_bloque,ColorBloque.AZUL,fixturedef ));
		bloques.add(new Bloque(mundo,cuerpo,-1,-0.5f,tamaño_bloque,ColorBloque.AZUL ,fixturedef ));
		bloques.add(new Bloque(mundo,cuerpo,-1,0.5f,tamaño_bloque,ColorBloque.AZUL ,fixturedef ));
		cuerpo.setTransform(xf, yf, 0);
		 
		cuerpo.setUserData(this); 
		bloques.get(0).getAdyacentes().add(bloques.get(1));
	
		
		
		bloques.get(1).getAdyacentes().add(bloques.get(2));
		bloques.get(1).getAdyacentes().add(bloques.get(0));
		
		
//	bloques.get(0).getCuerpo().destroyFixture();
		bloques.get(2).getAdyacentes().add(bloques.get(1));
		bloques.get(2).getAdyacentes().add(bloques.get(3));
		
		
		
		bloques.get(3).getAdyacentes().add(bloques.get(2));
		
		 
		 for(Bloque b: bloques){
			 b.setPadre(this);
			 this.contenedor.attachChild(b.getGrafico());
		 }
		
		 this.mundo = mundo;
			this.conector = new PhysicsConnector(contenedor, cuerpo);
			
			 mundo.registerPhysicsConnector(conector);
		 
	}
 
开发者ID:sprayz,项目名称:Phytris,代码行数:62,代码来源:PiezaL2.java

示例6: PiezaT

import org.andengine.extension.physics.box2d.PhysicsWorld; //导入方法依赖的package包/类
/**
 * Crea una pieza  de tipo T
 * 
 * @param mundo
 *            el mundo
 * @param x
 *            coordenada x
 * @param y
 *            coordenada y
 * @param tamaño_bloque
 *            el tamaño del bloque
 * @param fixturedef
 *            la propiedades de los bloques
 * @param bodydef
 *            las propiedades de la pieza
 */
public PiezaT(PhysicsWorld mundo, float x, float y, float tamaño_bloque,
		FixtureDef fixturedef,BodyDef bodydef) {
	super(mundo, x, y, tamaño_bloque, fixturedef, bodydef);
	tipo= PIEZAS.PIEZA_T;
	 float xf = x / PhysicsConstants.PIXEL_TO_METER_RATIO_DEFAULT;
	 float yf = y / PhysicsConstants.PIXEL_TO_METER_RATIO_DEFAULT;

	
	cuerpo= mundo.createBody(bodydef);
	bloques.add(new Bloque(mundo,cuerpo,-1,0,tamaño_bloque,ColorBloque.ARENA ,fixturedef));
	bloques.add(new Bloque(mundo,cuerpo,0,0,tamaño_bloque,ColorBloque.ARENA,fixturedef ));
	bloques.add(new Bloque(mundo,cuerpo,1,0,tamaño_bloque,ColorBloque.ARENA ,fixturedef ));
	bloques.add(new Bloque(mundo,cuerpo,0,1,tamaño_bloque,ColorBloque.ARENA,fixturedef ));
	cuerpo.setTransform(xf, yf, 0);
	 
	
	bloques.get(0).getAdyacentes().add(bloques.get(1));

	cuerpo.setUserData(this); 
	
	bloques.get(1).getAdyacentes().add(bloques.get(2));
	bloques.get(1).getAdyacentes().add(bloques.get(3));
	bloques.get(1).getAdyacentes().add(bloques.get(0));

	bloques.get(2).getAdyacentes().add(bloques.get(1));

	
	
	
	bloques.get(3).getAdyacentes().add(bloques.get(1));
	
	 for(Bloque b: bloques){
		 b.setPadre(this);
		 this.contenedor.attachChild(b.getGrafico());
	 }
	
	 this.mundo = mundo;
		this.conector = new PhysicsConnector(contenedor, cuerpo);
		
		 mundo.registerPhysicsConnector(conector);
	
	 
}
 
开发者ID:sprayz,项目名称:Phytris,代码行数:60,代码来源:PiezaT.java

示例7: PiezaL1

import org.andengine.extension.physics.box2d.PhysicsWorld; //导入方法依赖的package包/类
/**
 * Crea una pieza  de tipo L1
 * 
 * @param mundo
 *            el mundo
 * @param x
 *            coordenada x
 * @param y
 *            coordenada y
 * @param tamaño_bloque
 *            el tamaño del bloque
 * @param fixturedef
 *            la propiedades de los bloques
 * @param bodydef
 *            las propiedades de la pieza
 */
public PiezaL1(PhysicsWorld mundo, float x, float y, float tamaño_bloque,
		FixtureDef fixturedef,BodyDef bodydef) {
	super(mundo, x, y, tamaño_bloque, fixturedef, bodydef);
	tipo= PIEZAS.PIEZA_L1;
	
	 float xf = x / PhysicsConstants.PIXEL_TO_METER_RATIO_DEFAULT;
	 float yf = y / PhysicsConstants.PIXEL_TO_METER_RATIO_DEFAULT;

	
	cuerpo= mundo.createBody(bodydef);
	bloques.add(new Bloque(mundo,cuerpo,-1,-1.5f,tamaño_bloque,ColorBloque.AZUL ,fixturedef ));
	bloques.add(new Bloque(mundo,cuerpo,0,-1.5f,tamaño_bloque,ColorBloque.AZUL,fixturedef ));
	bloques.add(new Bloque(mundo,cuerpo,0,-0.5f,tamaño_bloque,ColorBloque.AZUL ,fixturedef ));
	bloques.add(new Bloque(mundo,cuerpo,0,0.5f,tamaño_bloque,ColorBloque.AZUL ,fixturedef ));
	cuerpo.setTransform(xf, yf, 0);
	 
	cuerpo.setUserData(this); 
	bloques.get(0).getAdyacentes().add(bloques.get(1));

	
	
	bloques.get(1).getAdyacentes().add(bloques.get(2));
	bloques.get(1).getAdyacentes().add(bloques.get(0));
	
	

	bloques.get(2).getAdyacentes().add(bloques.get(1));
	bloques.get(2).getAdyacentes().add(bloques.get(3));
	
	
	
	bloques.get(3).getAdyacentes().add(bloques.get(2));
	
	 for(Bloque b: bloques){
		 b.setPadre(this);
		 this.contenedor.attachChild(b.getGrafico());
	 }
	
	 this.mundo = mundo;
		this.conector = new PhysicsConnector(contenedor, cuerpo);
		
		 mundo.registerPhysicsConnector(conector);
	 
}
 
开发者ID:sprayz,项目名称:Phytris,代码行数:61,代码来源:PiezaL1.java

示例8: PiezaLlave1

import org.andengine.extension.physics.box2d.PhysicsWorld; //导入方法依赖的package包/类
/**
	 * Crea una pieza  de tipo Llave1
	 * 
	 * @param mundo
	 *            el mundo
	 * @param x
	 *            coordenada x
	 * @param y
	 *            coordenada y
	 * @param tamaño_bloque
	 *            el tamaño del bloque
	 * @param fixturedef
	 *            la propiedades de los bloques
	 * @param bodydef
	 *            las propiedades de la pieza
	 */
	public PiezaLlave1(PhysicsWorld mundo, float x, float y, float tamaño_bloque,
			FixtureDef fixturedef,BodyDef bodydef) {
		super(mundo, x, y, tamaño_bloque, fixturedef, bodydef);
		
		tipo= PIEZAS.PIEZA_LLAVE1;
		 float xf = x / PhysicsConstants.PIXEL_TO_METER_RATIO_DEFAULT;
		 float yf = y / PhysicsConstants.PIXEL_TO_METER_RATIO_DEFAULT;
		
		
		cuerpo= mundo.createBody(bodydef);
		bloques.add(new Bloque(mundo,cuerpo,0.5f,-1f,tamaño_bloque,ColorBloque.VERDE ,fixturedef ));
		bloques.add(new Bloque(mundo,cuerpo,-0.5f,-1f,tamaño_bloque,ColorBloque.VERDE ,fixturedef ));
		bloques.add(new Bloque(mundo,cuerpo,-0.5f,-0f,tamaño_bloque,ColorBloque.VERDE ,fixturedef ));
		bloques.add(new Bloque(mundo,cuerpo,-1.5f,0f,tamaño_bloque,ColorBloque.VERDE ,fixturedef ));
		cuerpo.setTransform(xf, yf, 0);
		 
		cuerpo.setUserData(this); 
		bloques.get(0).getAdyacentes().add(bloques.get(1));
	
		
		
		bloques.get(1).getAdyacentes().add(bloques.get(2));
		bloques.get(1).getAdyacentes().add(bloques.get(0));
		
		
//	bloques.get(0).getCuerpo().destroyFixture();
		bloques.get(2).getAdyacentes().add(bloques.get(1));
		bloques.get(2).getAdyacentes().add(bloques.get(3));
		
		
		
		bloques.get(3).getAdyacentes().add(bloques.get(2));
		
		 
		 for(Bloque b: bloques){
			 b.setPadre(this);
			 this.contenedor.attachChild(b.getGrafico());
		 }
		
		 this.mundo = mundo;
			this.conector = new PhysicsConnector(contenedor, cuerpo);
			
			 mundo.registerPhysicsConnector(conector);
		
		 
	}
 
开发者ID:sprayz,项目名称:Phytris,代码行数:63,代码来源:PiezaLlave1.java


注:本文中的org.andengine.extension.physics.box2d.PhysicsWorld.createBody方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。