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


Java Point3d.getZ方法代碼示例

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


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

示例1: playSound

import javax.vecmath.Point3d; //導入方法依賴的package包/類
@Override
public void playSound(double x, double y, double z, SoundEvent sound, SoundCategory category, float volume, float pitch, boolean distanceDelay) {
    Point3d transformed = this.getTransformedPosition(new Point3d(x, y, z));
    x = transformed.getX();
    y = transformed.getY();
    z = transformed.getZ();
    double distance = this.mc.getRenderViewEntity().getDistanceSq(x, y, z);
    PositionedSoundRecord positionedSound = new PositionedSoundRecord(sound, category, volume, pitch, (float) x, (float) y, (float) z);
    if (distanceDelay && distance > 100.0D) {
        double delay = Math.sqrt(distance) / 40.0D;
        this.mc.getSoundHandler().playDelayedSound(positionedSound, (int) (delay * 20.0D));
    } else {
        this.mc.getSoundHandler().playSound(positionedSound);
    }
}
 
開發者ID:gegy1000,項目名稱:BlockSystems,代碼行數:16,代碼來源:BlockSystemClient.java

示例2: addPlayer

import javax.vecmath.Point3d; //導入方法依賴的package包/類
public void addPlayer(EntityPlayerMP player) {
    BlockSystemPlayerHandler handler = BlockSystems.PROXY.getBlockSystemHandler(player.world).get(this.blockSystem, player);
    Point3d playerPosition = this.getUntransformedPosition(player);
    int playerChunkX = (int) playerPosition.getX() >> 4;
    int playerChunkZ = (int) playerPosition.getZ() >> 4;
    handler.setManagedPosX(playerPosition.getX());
    handler.setManagedPosZ(playerPosition.getZ());
    for (int chunkX = playerChunkX - this.playerViewRadius; chunkX <= playerChunkX + this.playerViewRadius; ++chunkX) {
        for (int chunkZ = playerChunkZ - this.playerViewRadius; chunkZ <= playerChunkZ + this.playerViewRadius; ++chunkZ) {
            this.getOrCreateTracker(chunkX, chunkZ).addPlayer(player);
        }
    }
    this.players.add(player);
    this.markSortPending();
}
 
開發者ID:gegy1000,項目名稱:BlockSystems,代碼行數:16,代碼來源:BlockSystemChunkTracker.java

示例3: updateMountedMovingPlayer

import javax.vecmath.Point3d; //導入方法依賴的package包/類
public void updateMountedMovingPlayer(EntityPlayerMP player) {
    BlockSystemPlayerHandler handler = BlockSystems.PROXY.getBlockSystemHandler(player.world).get(this.blockSystem, player);
    Point3d playerPosition = this.getUntransformedPosition(player);
    int playerChunkX = (int) playerPosition.getX() >> 4;
    int playerChunkZ = (int) playerPosition.getZ() >> 4;
    double managedPosX = handler.getManagedPosX();
    double managedPosZ = handler.getManagedPosZ();
    double managedDeltaX = managedPosX - playerPosition.getX();
    double managedDeltaZ = managedPosZ - playerPosition.getZ();
    double managedDelta = managedDeltaX * managedDeltaX + managedDeltaZ * managedDeltaZ;
    if (managedDelta >= 64.0D) {
        int managedChunkX = (int) managedPosX >> 4;
        int managedChunkZ = (int) managedPosZ >> 4;
        int viewRadius = this.playerViewRadius;
        int deltaChunkX = playerChunkX - managedChunkX;
        int deltaChunkZ = playerChunkZ - managedChunkZ;
        if (deltaChunkX != 0 || deltaChunkZ != 0) {
            for (int chunkX = playerChunkX - viewRadius; chunkX <= playerChunkX + viewRadius; ++chunkX) {
                for (int chunkZ = playerChunkZ - viewRadius; chunkZ <= playerChunkZ + viewRadius; ++chunkZ) {
                    if (!this.interects(chunkX, chunkZ, managedChunkX, managedChunkZ, viewRadius)) {
                        this.getOrCreateTracker(chunkX, chunkZ).addPlayer(player);
                    }
                    if (!this.interects(chunkX - deltaChunkX, chunkZ - deltaChunkZ, playerChunkX, playerChunkZ, viewRadius)) {
                        BlockSystemPlayerTracker tracker = this.getTracker(chunkX - deltaChunkX, chunkZ - deltaChunkZ);
                        if (tracker != null) {
                            tracker.removePlayer(player);
                        }
                    }
                }
            }
            handler.setManagedPosX(playerPosition.getX());
            handler.setManagedPosZ(playerPosition.getZ());
            this.markSortPending();
        }
    }
}
 
開發者ID:gegy1000,項目名稱:BlockSystems,代碼行數:37,代碼來源:BlockSystemChunkTracker.java

示例4: setPlayerViewRadius

import javax.vecmath.Point3d; //導入方法依賴的package包/類
public void setPlayerViewRadius(int radius) {
    radius = MathHelper.clamp(radius, 3, 32);
    if (radius != this.playerViewRadius) {
        int deltaRadius = radius - this.playerViewRadius;
        for (EntityPlayerMP player : Lists.newArrayList(this.players)) {
            Point3d playerPosition = this.getUntransformedPosition(player);
            int playerChunkX = (int) playerPosition.getX() >> 4;
            int playerChunkZ = (int) playerPosition.getZ() >> 4;
            if (deltaRadius > 0) {
                for (int chunkX = playerChunkX - radius; chunkX <= playerChunkX + radius; ++chunkX) {
                    for (int chunkZ = playerChunkZ - radius; chunkZ <= playerChunkZ + radius; ++chunkZ) {
                        BlockSystemPlayerTracker tracker = this.getOrCreateTracker(chunkX, chunkZ);
                        if (!tracker.containsPlayer(player)) {
                            tracker.addPlayer(player);
                        }
                    }
                }
            } else {
                for (int chunkX = playerChunkX - this.playerViewRadius; chunkX <= playerChunkX + this.playerViewRadius; ++chunkX) {
                    for (int chunkZ = playerChunkZ - this.playerViewRadius; chunkZ <= playerChunkZ + this.playerViewRadius; ++chunkZ) {
                        if (!this.interects(chunkX, chunkZ, playerChunkX, playerChunkZ, radius)) {
                            this.getOrCreateTracker(chunkX, chunkZ).removePlayer(player);
                        }
                    }
                }
            }
        }
        this.playerViewRadius = radius;
        this.markSortPending();
    }
}
 
開發者ID:gegy1000,項目名稱:BlockSystems,代碼行數:32,代碼來源:BlockSystemChunkTracker.java

示例5: getClosestPlayer

import javax.vecmath.Point3d; //導入方法依賴的package包/類
@Override
public EntityPlayer getClosestPlayer(double posX, double posY, double posZ, double distance, boolean spectator) {
    Point3d transformed = this.getTransformedPosition(new Point3d(posX, posY, posZ));
    posX = transformed.getX();
    posY = transformed.getY();
    posZ = transformed.getZ();
    return this.mainWorld.getClosestPlayer(posX, posY, posZ, distance, spectator);
}
 
開發者ID:gegy1000,項目名稱:BlockSystems,代碼行數:9,代碼來源:BlockSystem.java

示例6: getNearestAttackablePlayer

import javax.vecmath.Point3d; //導入方法依賴的package包/類
@Override
public EntityPlayer getNearestAttackablePlayer(double posX, double posY, double posZ, double maxXZDistance, double maxYDistance, Function<EntityPlayer, Double> serializer, Predicate<EntityPlayer> selector) {
    Point3d transformed = this.getTransformedPosition(new Point3d(posX, posY, posZ));
    posX = transformed.getX();
    posY = transformed.getY();
    posZ = transformed.getZ();
    return this.mainWorld.getNearestAttackablePlayer(posX, posY, posZ, maxXZDistance, maxYDistance, serializer, selector);
}
 
開發者ID:gegy1000,項目名稱:BlockSystems,代碼行數:9,代碼來源:BlockSystem.java

示例7: spawnParticle

import javax.vecmath.Point3d; //導入方法依賴的package包/類
@Override
public void spawnParticle(EnumParticleTypes particleType, double posX, double posY, double posZ, double xSpeed, double ySpeed, double zSpeed, int... parameters) {
    Point3d transformed = this.getTransformedPosition(new Point3d(posX, posY, posZ));
    posX = transformed.getX();
    posY = transformed.getY();
    posZ = transformed.getZ();
    if (particleType != EnumParticleTypes.REDSTONE) {
        Vec3d transformedVelocity = this.getTransformedVector(new Vec3d(xSpeed, ySpeed, zSpeed));
        xSpeed = transformedVelocity.xCoord;
        ySpeed = transformedVelocity.yCoord;
        zSpeed = transformedVelocity.zCoord;
    }
    super.spawnParticle(particleType, posX, posY, posZ, xSpeed, ySpeed, zSpeed, parameters);
}
 
開發者ID:gegy1000,項目名稱:BlockSystems,代碼行數:15,代碼來源:BlockSystem.java

示例8: playSound

import javax.vecmath.Point3d; //導入方法依賴的package包/類
@Override
public void playSound(EntityPlayer player, double x, double y, double z, SoundEvent sound, SoundCategory category, float volume, float pitch) {
    Point3d transformed = this.getTransformedPosition(new Point3d(x, y, z));
    x = transformed.getX();
    y = transformed.getY();
    z = transformed.getZ();
    super.playSound(player, x, y, z, sound, category, volume, pitch);
}
 
開發者ID:gegy1000,項目名稱:BlockSystems,代碼行數:9,代碼來源:BlockSystem.java

示例9: transformEffect

import javax.vecmath.Point3d; //導入方法依賴的package包/類
public static void transformEffect(Particle particle) {
    BlockSystem transforming = BlockSystem.transforming;
    if (transforming != null) {
        Point3d transformed = transforming.getTransformedPosition(new Point3d(particle.posX, particle.posY, particle.posZ));
        particle.setPosition(transformed.getX(), transformed.getY(), transformed.getZ());
        particle.prevPosX = transformed.getX();
        particle.prevPosY = transformed.getY();
        particle.prevPosZ = transformed.getZ();
        Vec3d transformedVelocity = transforming.getTransformedVector(new Vec3d(particle.motionX, particle.motionY, particle.motionZ));
        particle.motionX = transformedVelocity.xCoord;
        particle.motionY = transformedVelocity.yCoord;
        particle.motionZ = transformedVelocity.zCoord;
    }
}
 
開發者ID:gegy1000,項目名稱:BlockSystems,代碼行數:15,代碼來源:BlockSystemHooks.java

示例10: getTriangle

import javax.vecmath.Point3d; //導入方法依賴的package包/類
/**
 * Renvoie le triangle qui se trouve dans la maille indexX, indexY et dans le
 * bas de la maille si inferior est true et dans le haut de celle-ci sinon
 * Renvoie null si les indices ne correspondent pas à un triangle existant
 * 
 * @param indexX l'indice de la maille en X
 * @param indexY l'indice de la maille en Y
 * @param inferior la position du triangle par rapport à la maille
 * @return une liste de points correspondants au sommet du triangle concerné
 */
public DirectPositionList getTriangle(int indexX, int indexY, boolean inferior) {

  // Si les coordonnées ne sont pas dans le MNT, on renvoie null
  if (indexX >= (this.nX - 1) || indexX < 0 || indexY >= (this.nY - 1)
      || indexY < 0) {

    return null;

  }
  // On récupère les 4 coordonnées potentielle
  int lignInit2 = 2 * (indexX) + 2 * (this.nY - 1 - (indexY + 1)) * this.nX;

  Point3d pointemp1 = new Point3d();
  this.strip.getCoordinate(lignInit2, pointemp1);

  Point3d pointemp2 = new Point3d();
  this.strip.getCoordinate(lignInit2 + 1, pointemp2);

  Point3d pointemp3 = new Point3d();
  this.strip.getCoordinate(lignInit2 + 2, pointemp3);

  Point3d pointemp4 = new Point3d();
  this.strip.getCoordinate(lignInit2 + 3, pointemp4);

  DirectPosition pt12D = new DirectPosition(pointemp1.x + this.xIni,
      pointemp1.y + this.yIni, pointemp1.getZ());
  DirectPosition pt22D = new DirectPosition(pointemp2.x + this.xIni,
      pointemp2.y + this.yIni, pointemp2.getZ());
  DirectPosition pt32D = new DirectPosition(pointemp3.x + this.xIni,
      pointemp3.y + this.yIni, pointemp3.getZ());
  DirectPosition pt42D = new DirectPosition(pointemp4.x + this.xIni,
      pointemp4.y + this.yIni, pointemp4.getZ());

  DirectPositionList dpl = new DirectPositionList();

  if (inferior) {

    dpl.add(pt12D);
    dpl.add(pt22D);
    dpl.add(pt32D);

  } else {

    dpl.add(pt42D);
    dpl.add(pt22D);
    dpl.add(pt32D);
  }

  return dpl;
}
 
開發者ID:IGNF,項目名稱:geoxygene,代碼行數:61,代碼來源:DTMPostGIS.java

示例11: getTransformedPosition

import javax.vecmath.Point3d; //導入方法依賴的package包/類
public Vec3d getTransformedPosition(Vec3d position) {
    Point3d point = new Point3d(position.xCoord - 0.5, position.yCoord, position.zCoord - 0.5);
    this.transformMatrix.transform(point);
    return new Vec3d(point.getX(), point.getY(), point.getZ());
}
 
開發者ID:gegy1000,項目名稱:BlockSystems,代碼行數:6,代碼來源:BlockSystem.java

示例12: getUntransformedPosition

import javax.vecmath.Point3d; //導入方法依賴的package包/類
public Vec3d getUntransformedPosition(Vec3d position) {
    Point3d point = new Point3d(position.xCoord, position.yCoord, position.zCoord);
    this.untransformMatrix.transform(point);
    return new Vec3d(point.getX() + 0.5, point.getY(), point.getZ() + 0.5);
}
 
開發者ID:gegy1000,項目名稱:BlockSystems,代碼行數:6,代碼來源:BlockSystem.java

示例13: transformPoint

import javax.vecmath.Point3d; //導入方法依賴的package包/類
public Vec3d transformPoint(Vec3d vec) {
    Point3d point = new Point3d(vec.xCoord, vec.yCoord, vec.zCoord);
    this.transform(point);
    return new Vec3d(point.getX(), point.getY(), point.getZ());
}
 
開發者ID:gegy1000,項目名稱:BlockSystems,代碼行數:6,代碼來源:Matrix.java


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