使用键导航器行为时,哪些键用于移动?如何设置它们



我学到了一些关于Java3D的知识,我想知道如何使用击键在相机周围移动。我已经找到了KeyNavigatorBehavior并设置了它,只是没有Key做任何事情。如何正确使用此行为?

在这里,我得到了设置行为的方法:

protected BranchGroup buildViewBranch(Canvas3D c) {
        BranchGroup viewBranch = new BranchGroup();
        Transform3D viewXfm = new Transform3D();
        viewXfm.set(new Vector3f(0.0f, 0.0f, 10.0f));
        TransformGroup viewXfmGroup = new TransformGroup(viewXfm);
        viewXfmGroup.setCapability(TransformGroup.ALLOW_TRANSFORM_READ);
        viewXfmGroup.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
        BoundingSphere movingBounds = new BoundingSphere(new Point3d(0.0, 0.0,0.0), 100.0);
        BoundingLeaf boundLeaf = new BoundingLeaf(movingBounds);
        ViewPlatform myViewPlatform = new ViewPlatform();
        viewXfmGroup.addChild(boundLeaf);
        PhysicalBody myBody = new PhysicalBody();
        PhysicalEnvironment myEnvironment = new PhysicalEnvironment();
        viewXfmGroup.addChild(myViewPlatform);
        viewBranch.addChild(viewXfmGroup);
        View myView = new View();
        myView.addCanvas3D(c);
        myView.attachViewPlatform(myViewPlatform);
        myView.setPhysicalBody(myBody);
        myView.setPhysicalEnvironment(myEnvironment);
        KeyNavigatorBehavior keyNav = new KeyNavigatorBehavior(viewXfmGroup);
        keyNav.setSchedulingBounds(movingBounds);
        viewBranch.addChild(keyNav);
        return viewBranch;
    }

以下是设置虚拟宇宙的台词:

        group = new BranchGroup();
        VirtualUniverse universe = new VirtualUniverse();
        Locale locale = new Locale(universe);
        locale.addBranchGraph(this.buildViewBranch(canvas));
        locale.addBranchGraph(group);

我自己找到了答案:

您必须激活键盘鼠标(Alt + Shift + Num(并停用数字锁定:

键是:箭头+向上/向下翻页(也在数字锁上(

相关内容

最新更新