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


Java ParticleType.b2_zombieParticle方法代码示例

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


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

示例1: removeLostParticles

import org.jbox2d.particle.ParticleType; //导入方法依赖的package包/类
/**
 * removes particles outside the zombie_aabb from the world.
 */
public void removeLostParticles(){
  
  if(zombie_aabb == null){
    createZombieBounds();
  }
  
  int    pcount = getParticleCount();
  Vec2[] pverts = getParticlePositionBuffer();
  int[]  pflags = getParticleFlagsBuffer();
  
  for(int i = 0; i < pcount; i++){
    Vec2 vert = pverts[i];
    if(vert.x < zombie_aabb.lowerBound.x || vert.x > zombie_aabb.upperBound.x ||
       vert.y < zombie_aabb.lowerBound.y || vert.y > zombie_aabb.upperBound.y)
    {
      pflags[i] |= ParticleType.b2_zombieParticle;
      // world.destroyParticle(i); // works also
    }
  }
}
 
开发者ID:diwi,项目名称:LiquidFunProcessing,代码行数:24,代码来源:DwWorld.java

示例2: updateParticleShapeBuffer

import org.jbox2d.particle.ParticleType; //导入方法依赖的package包/类
@Deprecated
static final public int updateParticleShapeBuffer(World world, PShape group_particles){
  int particle_num_old = world.getParticleCount();
  int particle_num_new = 0;
  
  if(particle_num_old == 0){
    return 0;
  }
  
  if(group_particles.getChildCount() == 0){
    return 0;
  }
  
  // The following is way faster, then removing shapes in place.
  // ... even when iterating backwards, a lot of repeated/unnecessary copying 
  // will be needed.

  PShape group = group_particles;
  PShape[] shapes = group.getChildren();
  int[] particle_flag = world.getParticleFlagsBuffer();
  

  // re-map particles, so that zombies are left out
  for(int i = 0; i < particle_num_old; i++){
    if((particle_flag[i] & ParticleType.b2_zombieParticle) == 0){
      shapes[particle_num_new++] = shapes[i];
    }
  }
  
  // remove number of zombies by triming the buffer to the new size
  // unfortunately PShape offers no better way to do this
  for(int i = particle_num_old - 1; i >= particle_num_new; i--){
    group.removeChild(i);
  }
  
  
  int removed = particle_num_old - particle_num_new;
  
  return removed;
}
 
开发者ID:diwi,项目名称:LiquidFunProcessing,代码行数:41,代码来源:DwUtils.java

示例3: keyPressed

import org.jbox2d.particle.ParticleType; //导入方法依赖的package包/类
public void keyPressed(char keyChar, int keyCode) {
  m_drawing = keyChar != 'x';
  m_particleFlags = 0;
  m_groupFlags = 0;
  color.set((byte)127, (byte)127, (byte)127, (byte)50);
  switch (keyChar) {
    case 'e':
      m_particleFlags = ParticleType.b2_elasticParticle;
      m_groupFlags = ParticleGroupType.b2_solidParticleGroup;
      break;
    case 'p':
      m_particleFlags = ParticleType.b2_powderParticle;
      break;
    case 'f':
      m_groupFlags =
          ParticleGroupType.b2_rigidParticleGroup | ParticleGroupType.b2_solidParticleGroup;
      break;
    case 's':
      m_particleFlags = ParticleType.b2_springParticle;
      m_groupFlags = ParticleGroupType.b2_solidParticleGroup;
      break;
    case 't':
      color.set((byte)0, (byte)127, (byte)0, (byte)50);
      m_particleFlags = ParticleType.b2_tensileParticle;
      break;
    case 'v':
      color.set((byte)0, (byte)0, (byte)127, (byte)50);
      m_particleFlags = ParticleType.b2_viscousParticle;
      break;
    case 'w':
      m_particleFlags = ParticleType.b2_wallParticle;
      m_groupFlags = ParticleGroupType.b2_solidParticleGroup;
      break;
    case 'z':
      m_particleFlags = ParticleType.b2_zombieParticle;
      break;
  }
}
 
开发者ID:unktomi,项目名称:form-follows-function,代码行数:39,代码来源:DrawingParticles.java


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