📄 controlledmanager.java
字号:
// **********************************************************************//// <copyright>//// BBN Technologies// 10 Moulton Street// Cambridge, MA 02138// (617) 873-8000//// Copyright (C) BBNT Solutions LLC. All rights reserved.//// </copyright>// **********************************************************************//// $Source: /cvs/distapps/openmap/src/j3d/com/bbn/openmap/tools/j3d/ControlledManager.java,v $// $RCSfile: ControlledManager.java,v $// $Revision: 1.3.2.3 $// $Date: 2005/08/11 21:36:12 $// $Author: dietrick $//// **********************************************************************package com.bbn.openmap.tools.j3d;import com.bbn.openmap.MapHandler;import com.bbn.openmap.proj.Projection;import java.awt.*;import javax.media.j3d.*;import javax.swing.JFrame;/** * A 3D manager where the eye position is controlled by an outside * object. The keys should still work to control the view orientation, * just not position. (I don't think they do, yet). * * @author dietrick */public class ControlledManager extends MapContentManager { /** * The object controlling the viewer's position. */ protected NavBehaviorProvider controller; public ControlledManager(MapHandler mapHandler, NavBehaviorProvider cont, int contentMask) { this(mapHandler, cont, new Background(0f, 0f, 0f), contentMask); } public ControlledManager(MapHandler mapHandler, NavBehaviorProvider cont, Background background, int contentMask) { super(); // background.setCapability(Background.ALLOW_APPLICATION_BOUNDS_WRITE); // background.setCapability(Background.ALLOW_APPLICATION_BOUNDS_READ); // background.setCapability(Background.ALLOW_COLOR_READ); // background.setCapability(Background.ALLOW_COLOR_WRITE); setController(cont); this.setSceneBackground(background); addMapContent(mapHandler, objRootBG, contentMask); // Important!! Compiles the universe ((UniverseManager) universe).makeLive(); } protected void setController(NavBehaviorProvider cont) { controller = cont; } public NavBehaviorProvider getController() { return controller; } public Behavior getMotionBehavior(TransformGroup cameraTransform, Projection projection) { Behavior behavior = null; if (controller != null) { behavior = controller.setViewingPlatformBehavior(cameraTransform, projection, scaleFactor); } return behavior; } public static JFrame getFrame(String title, int width, int height, MapHandler mapHandler, NavBehaviorProvider controller, Background background, int contentMask) { JFrame frame = new JFrame(title); frame.setSize(width, height); frame.getContentPane().setLayout(new BorderLayout()); ControlledManager c3d = new ControlledManager(mapHandler, controller, background, contentMask); c3d.compileUniverse(); frame.getContentPane().add("Center", c3d.getCanvas()); return frame; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -