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


Java VehicleWheel类代码示例

本文整理汇总了Java中com.jme3.bullet.objects.VehicleWheel的典型用法代码示例。如果您正苦于以下问题:Java VehicleWheel类的具体用法?Java VehicleWheel怎么用?Java VehicleWheel使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


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

示例1: createFor

import com.jme3.bullet.objects.VehicleWheel; //导入依赖的package包/类
@Override
@FXThread
public <T, V extends TreeNode<T>> @Nullable V createFor(@Nullable final T element, final long objectId) {

    if (element instanceof Vector3f) {
        return unsafeCast(new PositionTreeNode((Vector3f) element, objectId));
    } else if (element instanceof VertexBuffer) {
        return unsafeCast(new VertexBufferTreeNode((VertexBuffer) element, objectId));
    } else if (element instanceof Buffer) {
        return unsafeCast(new BufferTreeNode((Buffer) element, objectId));
    } else if (element instanceof VehicleWheel) {
        return unsafeCast(new VehicleWheelTreeNode((VehicleWheel) element, objectId));
    } else if (element instanceof MotionPath) {
        return unsafeCast(new MotionPathTreeNode((MotionPath) element, objectId));
    }

    return null;
}
 
开发者ID:JavaSaBr,项目名称:jmonkeybuilder,代码行数:19,代码来源:PrimitiveTreeNodeFactory.java

示例2: redoImpl

import com.jme3.bullet.objects.VehicleWheel; //导入依赖的package包/类
@Override
protected void redoImpl(@NotNull final ModelChangeConsumer editor) {
    EXECUTOR_MANAGER.addJMETask(() -> {

        for (int i = 0, length = control.getNumWheels(); i < length; i++) {
            final VehicleWheel wheel = control.getWheel(i);
            if (wheel == createdWheel) {
                control.removeWheel(i);
                break;
            }
        }

        final VehicleWheel toRemove = notNull(createdWheel);

        this.createdWheel = null;

        EXECUTOR_MANAGER.addFXTask(() -> editor.notifyFXRemovedChild(control, toRemove));
    });
}
 
开发者ID:JavaSaBr,项目名称:jmonkeybuilder,代码行数:20,代码来源:RemoveVehicleWheelOperation.java

示例3: undoImpl

import com.jme3.bullet.objects.VehicleWheel; //导入依赖的package包/类
@Override
protected void undoImpl(@NotNull final ModelChangeConsumer editor) {
    EXECUTOR_MANAGER.addJMETask(() -> {

        for (int i = 0, length = control.getNumWheels(); i < length; i++) {
            final VehicleWheel wheel = control.getWheel(i);
            if (wheel == createdWheel) {
                control.removeWheel(i);
                break;
            }
        }

        final VehicleWheel toRemove = notNull(createdWheel);

        this.createdWheel = null;

        EXECUTOR_MANAGER.addFXTask(() -> editor.notifyFXRemovedChild(control, toRemove));
    });
}
 
开发者ID:JavaSaBr,项目名称:jmonkeybuilder,代码行数:20,代码来源:AddVehicleWheelOperation.java

示例4: checkSpatial

import com.jme3.bullet.objects.VehicleWheel; //导入依赖的package包/类
/**
 * Check a spatial to have a edited wheel.
 *
 * @param spatial the spatial.
 * @return true if the spatial has this wheel.
 */
private boolean checkSpatial(@NotNull final Spatial spatial) {

    final VehicleControl control = spatial.getControl(VehicleControl.class);
    if (control == null) return false;

    final int numWheels = control.getNumWheels();

    for (int i = 0; i < numWheels; i++) {
        final VehicleWheel wheel = control.getWheel(i);
        if (wheel == getEditObject()) return true;
    }

    return false;
}
 
开发者ID:JavaSaBr,项目名称:jmonkeybuilder,代码行数:21,代码来源:WheelElementModelPropertyControl.java

示例5: buildForImpl

import com.jme3.bullet.objects.VehicleWheel; //导入依赖的package包/类
@Override
@FXThread
protected void buildForImpl(@NotNull final Object object, @Nullable final Object parent,
                            @NotNull final VBox container, @NotNull final ModelChangeConsumer changeConsumer) {

    if (object instanceof AbstractCinematicEvent) {
        build((AbstractCinematicEvent) object, container, changeConsumer);
    }  else if (object instanceof VehicleWheel) {
        build((VehicleWheel) object, container, changeConsumer);
    } else if (object instanceof Animation) {
        build((Animation) object, container, changeConsumer);
    }

    if (!(object instanceof Control)) return;

    if (object instanceof AbstractControl) {
        build((AbstractControl) object, container, changeConsumer);
    }

    super.buildForImpl(object, parent, container, changeConsumer);

    if (object instanceof SkeletonControl) {
        build((SkeletonControl) object, container, changeConsumer);
    } else if (object instanceof CharacterControl) {
        build((CharacterControl) object, container, changeConsumer);
    } else if (object instanceof RigidBodyControl) {
        build((RigidBodyControl) object, container, changeConsumer);
    } else if (object instanceof VehicleControl) {
        build((VehicleControl) object, container, changeConsumer);
    } else if (object instanceof MotionEvent) {
        build((MotionEvent) object, container, changeConsumer);
    }

    if (object instanceof PhysicsRigidBody) {
        build((PhysicsRigidBody) object, container, changeConsumer);
    }
}
 
开发者ID:JavaSaBr,项目名称:jmonkeybuilder,代码行数:38,代码来源:DefaultControlPropertyBuilder.java

示例6: process

import com.jme3.bullet.objects.VehicleWheel; //导入依赖的package包/类
@FXThread
@Override
protected void process() {

    final TreeNode<?> node = getNode();
    final Object element = node.getElement();
    final TreeNode<?> nodeParent = notNull(node.getParent());
    final VehicleControl vehicleControl = (VehicleControl) nodeParent.getElement();
    final VehicleWheel vehicleWheel = (VehicleWheel) element;

    final NodeTree<ModelChangeConsumer> nodeTree = getNodeTree();
    final ChangeConsumer changeConsumer = notNull(nodeTree.getChangeConsumer());
    changeConsumer.execute(new RemoveVehicleWheelOperation(vehicleControl, vehicleWheel));
}
 
开发者ID:JavaSaBr,项目名称:jmonkeybuilder,代码行数:15,代码来源:RemoveVehicleWheelAction.java

示例7: RemoveVehicleWheelOperation

import com.jme3.bullet.objects.VehicleWheel; //导入依赖的package包/类
/**
 * Instantiates a new Remove vehicle wheel operation.
 *
 * @param control the control
 * @param wheel   the wheel
 */
public RemoveVehicleWheelOperation(@NotNull final VehicleControl control, @NotNull final VehicleWheel wheel) {
    this.control = control;
    this.connectionPoint = wheel.getLocation();
    this.direction = wheel.getDirection();
    this.axle = wheel.getAxle();
    this.restLength = wheel.getRestLength();
    this.wheelRadius = wheel.getRadius();
    this.isFrontWheel = wheel.isFrontWheel();
    this.createdWheel = wheel;
}
 
开发者ID:JavaSaBr,项目名称:jmonkeybuilder,代码行数:17,代码来源:RemoveVehicleWheelOperation.java

示例8: undoImpl

import com.jme3.bullet.objects.VehicleWheel; //导入依赖的package包/类
@Override
protected void undoImpl(@NotNull final ModelChangeConsumer editor) {
    EXECUTOR_MANAGER.addJMETask(() -> {

        final VehicleWheel vehicleWheel = control.addWheel(connectionPoint, direction, axle, restLength,
                wheelRadius, isFrontWheel);

        this.createdWheel = vehicleWheel;

        EXECUTOR_MANAGER.addFXTask(() -> editor.notifyFXAddedChild(control, vehicleWheel, -1, false));
    });
}
 
开发者ID:JavaSaBr,项目名称:jmonkeybuilder,代码行数:13,代码来源:RemoveVehicleWheelOperation.java

示例9: redoImpl

import com.jme3.bullet.objects.VehicleWheel; //导入依赖的package包/类
@Override
protected void redoImpl(@NotNull final ModelChangeConsumer editor) {
    EXECUTOR_MANAGER.addJMETask(() -> {

        final VehicleWheel vehicleWheel = control.addWheel(connectionPoint, direction, axle, restLength,
                wheelRadius, isFrontWheel);

        this.createdWheel = vehicleWheel;

        EXECUTOR_MANAGER.addFXTask(() -> editor.notifyFXAddedChild(control, vehicleWheel, -1, true));
    });
}
 
开发者ID:JavaSaBr,项目名称:jmonkeybuilder,代码行数:13,代码来源:AddVehicleWheelOperation.java

示例10: getName

import com.jme3.bullet.objects.VehicleWheel; //导入依赖的package包/类
@Override
@FromAnyThread
public @NotNull String getName() {
    final VehicleWheel element = getElement();
    final Spatial wheelSpatial = element.getWheelSpatial();
    return wheelSpatial != null ? Messages.MODEL_FILE_EDITOR_NODE_WHEEL + " [" + wheelSpatial.getName() + "]" :
            Messages.MODEL_FILE_EDITOR_NODE_WHEEL;
}
 
开发者ID:JavaSaBr,项目名称:jmonkeybuilder,代码行数:9,代码来源:VehicleWheelTreeNode.java

示例11: setApplyPhysicsLocal

import com.jme3.bullet.objects.VehicleWheel; //导入依赖的package包/类
/**
 * When set to true, the physics coordinates will be applied to the local
 * translation of the Spatial
 * @param applyPhysicsLocal
 */
public void setApplyPhysicsLocal(boolean applyPhysicsLocal) {
    motionState.setApplyPhysicsLocal(applyPhysicsLocal);
    for (Iterator<VehicleWheel> it = wheels.iterator(); it.hasNext();) {
        VehicleWheel vehicleWheel = it.next();
        vehicleWheel.setApplyLocal(applyPhysicsLocal);
    }
}
 
开发者ID:mleoking,项目名称:PhET,代码行数:13,代码来源:VehicleControl.java

示例12: VehicleEditorController

import com.jme3.bullet.objects.VehicleWheel; //导入依赖的package包/类
public VehicleEditorController(JmeSpatial jmeRootNode, BinaryModelDataObject currentFileObject) {
    this.jmeRootNode = jmeRootNode;
    this.currentFileObject = currentFileObject;
    rootNode = jmeRootNode.getLookup().lookup(Node.class);
    toolsNode = new Node("ToolsNode");
    toolController = new SceneToolController(toolsNode, currentFileObject.getLookup().lookup(ProjectAssetManager.class));
    toolController.setShowSelection(true);
    result = Utilities.actionsGlobalContext().lookupResult(JmeSpatial.class);
    result.addLookupListener(this);
    toolsNode.addLight(new DirectionalLight());
    Node track = (Node) new DesktopAssetManager(true).loadModel("Models/Racetrack/Raceway.j3o");
    track.getChild("Grass").getControl(RigidBodyControl.class).setPhysicsLocation(new Vector3f(30, -1, 0));
    track.getChild("Grass").getControl(RigidBodyControl.class).setPhysicsRotation(new Quaternion().fromAngleAxis(FastMath.HALF_PI * 0.68f, Vector3f.UNIT_Y).toRotationMatrix());
    track.getChild("Road").getControl(RigidBodyControl.class).setPhysicsLocation(new Vector3f(30, 0, 0));
    track.getChild("Road").getControl(RigidBodyControl.class).setPhysicsRotation(new Quaternion().fromAngleAxis(FastMath.HALF_PI * 0.68f, Vector3f.UNIT_Y).toRotationMatrix());
    toolsNode.attachChild(track);
    bulletState = new BulletAppState();

    result2 = Utilities.actionsGlobalContext().lookupResult(VehicleWheel.class);
    LookupListener listener = new LookupListener() {

        public void resultChanged(LookupEvent ev) {
            for (Iterator<? extends VehicleWheel> it = result2.allInstances().iterator(); it.hasNext();) {
                VehicleWheel wheel = it.next();
                toolController.updateSelection(wheel.getWheelSpatial());
            }
        }
    };
    result2.addLookupListener(listener);
}
 
开发者ID:jMonkeyEngine,项目名称:sdk,代码行数:31,代码来源:VehicleEditorController.java

示例13: doApplyWheelData

import com.jme3.bullet.objects.VehicleWheel; //导入依赖的package包/类
public void doApplyWheelData(VehicleControl control, int wheels, SuspensionSettings settings) {
        for (int i = 0; i < control.getNumWheels(); i++) {
            VehicleWheel wheel = control.getWheel(i);
            switch (wheels) {
                case 0:
                    break;
                case 1:
                    if (!wheel.isFrontWheel()) {
                        continue;
                    }
                    break;
                case 2:
                    if (wheel.isFrontWheel()) {
                        continue;
                    }
                    break;
            }
            wheel.setRestLength(settings.getRestLength());
            wheel.setMaxSuspensionForce(settings.getMaxForce());
            wheel.setSuspensionStiffness(settings.getStiffness());
            wheel.setRollInfluence(settings.getRollInfluence());
            wheel.setWheelsDampingCompression(settings.getCompression());
            wheel.setWheelsDampingRelaxation(settings.getRelease());
//            wheel.setRadius(settings.getRadius());
            wheel.setFrictionSlip(settings.getFriction());
        }
    }
 
开发者ID:jMonkeyEngine,项目名称:sdk,代码行数:28,代码来源:VehicleEditorController.java

示例14: SuspensionSettings

import com.jme3.bullet.objects.VehicleWheel; //导入依赖的package包/类
public SuspensionSettings(VehicleWheel wheel) {
    this.direction.set(wheel.getDirection());
    this.axle.set(wheel.getAxle());
    this.frontWheel = wheel.isFrontWheel();
    this.radius = wheel.getRadius();
    this.restLength = wheel.getRestLength();
    this.maxForce = wheel.getMaxSuspensionForce();
    this.stiffness = wheel.getSuspensionStiffness();
    this.rollInfluence = wheel.getRollInfluence();
    this.compression = wheel.getWheelsDampingCompression();
    this.release = wheel.getWheelsDampingRelaxation();
    this.friction = wheel.getFrictionSlip();
}
 
开发者ID:jMonkeyEngine,项目名称:sdk,代码行数:14,代码来源:SuspensionSettings.java

示例15: applyData

import com.jme3.bullet.objects.VehicleWheel; //导入依赖的package包/类
public void applyData(VehicleWheel wheel){
    wheel.setRadius(getRadius());
    wheel.setFrictionSlip(getFriction());
    wheel.setRollInfluence(getRollInfluence());
    wheel.setMaxSuspensionForce(getMaxForce());
    wheel.setSuspensionStiffness(getStiffness());
    wheel.setWheelsDampingCompression(getCompression());
    wheel.setWheelsDampingRelaxation(getRelease());
}
 
开发者ID:jMonkeyEngine,项目名称:sdk,代码行数:10,代码来源:SuspensionSettings.java


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