示例#1
0
 public MasterController(VirtualObjectsManager virtualObjectsManager, MaterialManager materialManager,
                         IUIControls uiControls)
 {
     this.virtualObjectsManager = virtualObjectsManager;
     this.materialManager       = materialManager;
     this.uiControls            = uiControls;
 }
示例#2
0
        private void SetControllerType(IControllerDesc desc, IData newData = null)
        {
            currentDesc = desc;
            data        = newData;

            if (data == null)
            {
                data = desc.CreateData();
            }

            controls = desc.CreateControls(data);

            gridControls.Children.Clear();
            gridControls.Children.Add(controls.FrameworkElement);

            controls.ShowHelp += (helpKey) =>
            {
                lastHelpKey = helpKey;
                helpWindow.ShowHelp(helpKey);
            };

            if (!mutePresetPicker && presetsPicker != null)
            {
                presetsPicker.Setup(data.Type, config.LastPreset);
            }
        }
示例#3
0
 public MasterController(VirtualObjectsManager virtualObjectsManager, MaterialManager materialManager, IUIControls uiControls, IDatabase databaseCtrl, Logger logger)
 {
     this.virtualObjectsManager = virtualObjectsManager;
     this.materialManager       = materialManager;
     this.uiControls            = uiControls;
     this.databaseCtrl          = databaseCtrl;
     this.logger = logger;
     this.databaseCtrl.AttachDbObserver(this);
 }
示例#4
0
 private void Initialize()
 {
     arRaycastmanager      = GetComponent <ARRaycastManager>();
     virtualObjectsManager = new VirtualObjectsManager(gameObjectToInstantiate, logger);
     materialManager       = new MaterialManager(gameObjectToInstantiate);
     uiControls            = new UIControls();
     controller            = new MasterController(virtualObjectsManager, materialManager, uiControls);
     uiControls.SetController(controller);
     planeTouchHandler         = new PlaneTouchHandler(virtualObjectsManager, controller);
     virtualObjectTouchHandler = new VirtualObjectTouchHandler(virtualObjectsManager, controller);
     touchDetector             = new TouchDetector(planeTouchHandler, virtualObjectTouchHandler, arRaycastmanager, logger);
 }
示例#5
0
 private void Initialize()
 {
     arRaycastmanager        = GetComponent <ARRaycastManager>();
     virtualObjectsLayerMask = LayerMask.GetMask("VirtualObjects");
     arAnchorManager         = GetComponent <ARAnchorManager>();
     virtualObjectsCreator   = new VirtualObjectsCreator(arAnchorManager, gameObjectToInstantiate, virtualObjectsLayerMask, logger);
     virtualObjectsStore     = new VirtualObjectsStore(arAnchorManager, logger);
     virtualObjectsManager   = new VirtualObjectsManager(virtualObjectsCreator, virtualObjectsStore, logger);
     materialManager         = new MaterialManager(gameObjectToInstantiate);
     databaseCtrl            = new FirebaseWithCloudAnchorDb(new FirebaseWrapper(logger), new CloudAnchorsWrapper(arAnchorManager, logger), logger);
     uiControls = new UIControls();
     controller = new MasterController(virtualObjectsManager, materialManager, uiControls, databaseCtrl, logger);
     uiControls.SetController(controller);
     planeTouchHandler         = new PlaneTouchHandler(virtualObjectsManager, controller);
     virtualObjectTouchHandler = new VirtualObjectTouchHandler(virtualObjectsManager, controller);
     touchDetector             = new TouchDetector(planeTouchHandler, virtualObjectTouchHandler, arRaycastmanager, logger);
 }