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:org.forYoink.math.CommonsVector3D.java

@Override
public Vector ebeMultiply(Vector m) {
    Vector3D tempM = (Vector3D) m.getInternalVector();
    double x = tempM.getX() * this.internalVector.getX();
    double y = tempM.getY() * this.internalVector.getY();
    double z = tempM.getZ() * this.internalVector.getZ();
    tempVector = new Vector3D(x, y, z);
    Vector temp = new CommonsVector3D();
    temp.setInternalVector(tempVector);//from  ww w  .  j a  v  a  2s  .  c o m
    return temp;

}

From source file:org.forYoink.math.CommonsVector3D.java

@Override
public Vector exp() {

    double x = Math.exp(this.internalVector.getX());
    double y = Math.exp(this.internalVector.getY());
    double z = Math.exp(this.internalVector.getZ());
    tempVector = new Vector3D(x, y, z);
    Vector temp = new CommonsVector3D();
    temp.setInternalVector(tempVector);/*from  w ww  . j a  va 2s.  c  o m*/
    return temp;

}

From source file:org.gearvrf.controls.model.Apple.java

public boolean checkValidPosition(Vector3D pos) {

    Vector3D wormPos = new Vector3D(MainScript.worm.wormParent.getTransform().getPositionX(),
            MainScript.worm.wormParent.getTransform().getPositionY(),
            MainScript.worm.wormParent.getTransform().getPositionZ());
    if (Vector3D.distance(pos, wormPos) < MAX_APPLES_DISTANCE)
        return false;
    for (Apple a : appleList) {

        if (a == this)
            continue;
        Vector3D iteratedApple = new Vector3D(a.getTransform().getPositionX(), 0,
                a.getTransform().getPositionZ());
        float distance = (float) Vector3D.distance(pos, iteratedApple);

        if (distance < MAX_APPLES_DISTANCE) {

            return false;
        }// ww  w. j  av a  2s. co  m

    }
    return true;
}

From source file:org.gearvrf.controls.model.Apple.java

public void setAppleRandomPosition(GVRContext context) {

    float angle = (float) Math.random() * 360;
    float distance = (float) (Math.random()
            * (Constants.MAX_APPLE_DISTANCE - (Constants.MAX_APPLE_DISTANCE - Constants.MIN_APPLE_DISTANCE))
            + Constants.MIN_APPLE_DISTANCE);
    this.getTransform().setPositionZ(distance);
    this.getTransform().rotateByAxisWithPivot(angle, 0, 1, 0, 0, 0, 0);

    Vector3D instanceApple = new Vector3D(this.getTransform().getPositionX(),
            this.getTransform().getPositionY(), this.getTransform().getPositionZ());
    if (!checkValidPosition(instanceApple)) {
        setAppleRandomPosition(context);

    } else {/* www .j  a  va 2  s  .co  m*/
        if (!appleList.contains(this)) {
            addApple(this);
            shadow.getTransform().setPosition((float) instanceApple.getX(), -0.9999f,
                    (float) instanceApple.getZ());
            getGVRContext().getMainScene().addSceneObject(shadow);
        }
    }
}

From source file:org.gearvrf.controls.model.Apple.java

private Vector3D setNewApplePosition(GVRContext context, float angle, float distance) {
    float[] vecDistance = context.getMainScene().getMainCameraRig().getLookAt();

    if (vecDistance[1] > CAMERA_DIRECTION_THREASHOLD || vecDistance[1] < -CAMERA_DIRECTION_THREASHOLD) {
        setAppleRandomPosition(context);
        return null;
    }//from  w w w  .  j  av  a2s . c o  m

    vecDistance[0] *= distance;
    vecDistance[2] *= distance;
    Vector3D instanceApple = new Vector3D(vecDistance[0], 0, vecDistance[2]);
    instanceApple.normalize();
    this.getTransform().setPositionX((float) instanceApple.getX());
    this.getTransform().setPositionZ((float) instanceApple.getZ());
    this.getTransform().rotateByAxisWithPivot(angle, 0, 1, 0, 0, 0, 0);
    instanceApple = new Vector3D(this.getTransform().getPositionX(), this.getTransform().getPositionY(),
            this.getTransform().getPositionZ());
    shadow.getTransform().setPosition((float) instanceApple.getX(), -0.9999f, (float) instanceApple.getZ());
    shadow.getTransform().setScale(1, 1, 1);
    return instanceApple;
}

From source file:org.gearvrf.controls.util.MathUtils.java

public static float distance(GVRSceneObject obj1, GVRSceneObject obj2) {

    Vector3D v1 = new Vector3D(obj1.getTransform().getPositionX(), obj1.getTransform().getPositionY(),
            obj1.getTransform().getPositionZ());

    Vector3D v2 = new Vector3D(obj2.getTransform().getPositionX(), obj2.getTransform().getPositionY(),
            obj2.getTransform().getPositionZ());

    return (float) Vector3D.distance(v1, v2);
}

From source file:org.gearvrf.controls.util.MathUtils.java

public static float distance(GVRTransform obj1, GVRTransform obj2) {

    Vector3D v1 = new Vector3D(obj1.getPositionX(), obj1.getPositionY(), obj1.getPositionZ());

    Vector3D v2 = new Vector3D(obj2.getPositionX(), obj2.getPositionY(), obj2.getPositionZ());

    return (float) Vector3D.distance(v1, v2);
}

From source file:org.gearvrf.controls.util.MathUtils.java

public static float distance(GVRTransform obj1, float[] obj2) {

    Vector3D v1 = new Vector3D(obj1.getPositionX(), obj1.getPositionY(), obj1.getPositionZ());

    Vector3D v2 = new Vector3D(obj2[0], obj2[1], obj2[2]);

    return (float) Vector3D.distance(v1, v2);
}

From source file:org.gearvrf.controls.Worm.java

public void checkWormEatingApple(GVRContext gvrContext) {

    Vector3D wormPosition = new Vector3D(wormParent.getTransform().getPositionX(),
            head.getParent().getTransform().getPositionY(), wormParent.getTransform().getPositionZ());

    for (Apple a : Apple.appleList) {
        Vector3D applePosition = new Vector3D(a.getTransform().getPositionX(), a.getTransform().getPositionY(),
                a.getTransform().getPositionZ());

        if (Vector3D.distance(applePosition, wormPosition) < DISTANCE_TO_EAT_APPLE) {

            a.resetPosition(gvrContext);
        }//from   w  ww .j  av  a  2  s . c  o  m
    }
}

From source file:org.gearvrf.keyboard.model.SphereFlag.java

private void initSphere(TypedArray sphere) {
    Resources res = gvrContext.getContext().getResources();

    mCountryName = res.getString(sphere.getResourceId(0, -1));
    mTexture = sphere.getResourceId(1, -1);
    mQuestion = res.getString(sphere.getResourceId(2, -1));
    mAnswer = res.getString(sphere.getResourceId(3, -1));
    mResultTexture = R.drawable.check;//from w w w  . j a  va  2 s.  c  o m

    float posX = Util.applyRatioAt(sphere.getFloat(4, -1));
    float posY = Util.applyRatioAt(sphere.getFloat(5, -1));
    float posZ = Util.applyRatioAt(sphere.getFloat(6, -1));
    positionVector = new Vector3D(posX, posY, posZ);
}