Example usage for org.apache.commons.math3.geometry.euclidean.threed Vector3D Vector3D

List of usage examples for org.apache.commons.math3.geometry.euclidean.threed Vector3D Vector3D

Introduction

In this page you can find the example usage for org.apache.commons.math3.geometry.euclidean.threed Vector3D Vector3D.

Prototype

public Vector3D(double x, double y, double z) 

Source Link

Document

Simple constructor.

Usage

From source file:nova.core.wrapper.mc.forge.v17.wrapper.block.forward.FWBlock.java

@SideOnly(Side.CLIENT)
@Override//from ww w  .j a v a  2  s. co m
public boolean renderWorldBlock(IBlockAccess world, int x, int y, int z, net.minecraft.block.Block block,
        int modelId, RenderBlocks renderer) {
    Block blockInstance = getBlockInstance(world, new Vector3D(x, y, z));
    Optional<StaticRenderer> opRenderer = blockInstance.components.getOp(StaticRenderer.class);
    if (opRenderer.isPresent()) {
        BWModel model = new BWModel();
        model.matrix = new MatrixStack().translate(x + 0.5, y + 0.5, z + 0.5);
        opRenderer.get().onRender.accept(model);
        model.renderWorld(world);

        return Tessellator.instance.rawBufferIndex != 0; // Returns true if Tesselator is not empty. Avoids crash on empty Tesselator buffer.
    }
    return false;
}

From source file:nova.core.wrapper.mc.forge.v17.wrapper.block.forward.FWBlock.java

@Override
public float getExplosionResistance(Entity expEntity, World world, int x, int y, int z, double explosionX,
        double p_explosionresistance, double explosionY) {
    // TODO: Maybe do something withPriority these parameters.
    return (float) getBlockInstance(world, new Vector3D(x, y, z)).getResistance() * 30;
}

From source file:nova.core.wrapper.mc.forge.v17.wrapper.block.forward.FWBlock.java

@Override
public float getBlockHardness(World world, int x, int y, int z) {
    return (float) getBlockInstance(world, new Vector3D(x, y, z)).getHardness() * 2;
}

From source file:nova.core.wrapper.mc.forge.v17.wrapper.block.forward.FWTile.java

@Override
public void validate() {
    super.validate();

    block.components.add(new MCBlockTransform(block, Game.natives().toNova(getWorldObj()),
            new Vector3D(xCoord, yCoord, zCoord)));

    if (cacheData != null && block instanceof Storable) {
        ((Storable) block).load(cacheData);
        cacheData = null;//from  www.j  a v  a 2  s.  c o  m
    }

    block.events.publish(new Stateful.LoadEvent());
}

From source file:nova.core.wrapper.mc.forge.v17.wrapper.cuboid.CuboidConverter.java

@Override
public Cuboid toNova(AxisAlignedBB aabb) {
    return new Cuboid(new Vector3D(aabb.minX, aabb.minY, aabb.minZ),
            new Vector3D(aabb.maxX, aabb.maxY, aabb.maxZ));
}

From source file:nova.core.wrapper.mc.forge.v17.wrapper.entity.forward.BWRigidBody.java

@Override
public Vector3D getVelocity() {
    return new Vector3D(mcEntity().motionX, mcEntity().motionY, mcEntity().motionZ);
}

From source file:nova.core.wrapper.mc.forge.v17.wrapper.entity.forward.MCEntityTransform.java

@Override
public Vector3D position() {
    return new Vector3D(wrapper.posX, wrapper.posY, wrapper.posZ);
}

From source file:nova.core.wrapper.mc.forge.v17.wrapper.item.ItemWrapperMethods.java

default boolean onItemUse(ItemStack itemStack, EntityPlayer player, World world, int x, int y, int z, int side,
        float hitX, float hitY, float hitZ) {
    Item item = Game.natives().toNova(itemStack);
    Item.UseEvent event = new Item.UseEvent(new BWEntity(player), new Vector3D(x, y, z),
            Direction.fromOrdinal(side), new Vector3D(hitX, hitY, hitZ));
    item.events.publish(event);//from   w ww. j  ava 2s .c o  m
    ItemConverter.instance().updateMCItemStack(itemStack, item);
    return event.action;
}

From source file:nova.core.wrapper.mc.forge.v18.asm.StaticForwarder.java

public static void chunkSetBlockEvent(Chunk chunk, BlockPos pos, IBlockState oldBlockState,
        IBlockState newBlockState) {//from   ww w .  ja  va  2s.  com
    // Publish the event
    Game.events().publish(new BlockEvent.Change(Game.natives().toNova(chunk.getWorld()),
            new Vector3D((chunk.xPosition << 4) + pos.getX(), pos.getY(), (chunk.zPosition << 4) + pos.getZ()),
            Game.natives().toNova(oldBlockState.getBlock()), Game.natives().toNova(newBlockState.getBlock())));
}

From source file:nova.core.wrapper.mc.forge.v18.launcher.ForgeEventHandler.java

@SubscribeEvent
public void playerInteractEvent(PlayerInteractEvent event) {
    if (event.world != null && event.pos != null) {
        nova.core.event.PlayerEvent.Interact evt = new nova.core.event.PlayerEvent.Interact(
                Game.natives().toNova(event.world),
                new Vector3D(event.pos.getX(), event.pos.getY(), event.pos.getZ()),
                Game.natives().toNova(event.entityPlayer),
                nova.core.event.PlayerEvent.Interact.Action.values()[event.action.ordinal()]);

        Game.events().publish(evt);//from  w w w .  jav a  2s  . c o  m

        event.useBlock = Event.Result.values()[evt.useBlock.ordinal()];
        event.useItem = Event.Result.values()[evt.useItem.ordinal()];
        event.setCanceled(evt.isCanceled());
    }
}