Beispiel #1
0
        public SetupSceneAction(String name, CameraPosition cameraPosition, LayerState layers, MusclePosition musclePosition, PresetState medicalState, bool captureHighlight, bool isHighlighted)
        {
            action         = new RunCommandsAction(name);
            Layers         = layers != null;
            Camera         = cameraPosition != null;
            MusclePosition = musclePosition != null;
            MedicalState   = medicalState != null;
            HighlightTeeth = captureHighlight;

            if (Layers)
            {
                ChangeLayersCommand changeLayersCommand = new ChangeLayersCommand();
                changeLayersCommand.Layers.copyFrom(layers);
                action.addCommand(changeLayersCommand);
            }

            if (MusclePosition)
            {
                SetMusclePositionCommand musclePositionCommand = new SetMusclePositionCommand();
                musclePositionCommand.MusclePosition = musclePosition;
                action.addCommand(musclePositionCommand);
            }

            if (Camera)
            {
                MoveCameraCommand moveCameraCommand = new MoveCameraCommand();
                moveCameraCommand.CameraPosition = cameraPosition;
                action.addCommand(moveCameraCommand);
            }

            if (MedicalState)
            {
                ChangeMedicalStateCommand medicalStateCommand = new ChangeMedicalStateCommand();
                medicalStateCommand.PresetState = medicalState;
                action.addCommand(medicalStateCommand);
            }

            if (HighlightTeeth)
            {
                action.addCommand(new ChangeTeethHighlightsCommand(isHighlighted));
            }

            AllowPreview = true;
        }
Beispiel #2
0
        public void captureSceneState(EditUICallback callback)
        {
            action.clear();
            if (Layers)
            {
                ChangeLayersCommand changeLayers = new ChangeLayersCommand();
                changeLayers.Layers.captureState();
                action.addCommand(changeLayers);
            }

            if (MusclePosition)
            {
                SetMusclePositionCommand musclePosition = new SetMusclePositionCommand();
                musclePosition.MusclePosition.captureState();
                action.addCommand(musclePosition);
            }

            if (Camera)
            {
                MoveCameraCommand moveCamera = new MoveCameraCommand();
                callback.runOneWayCustomQuery(CameraPosition.CustomEditQueries.CaptureCameraPosition, moveCamera.CameraPosition);
                action.addCommand(moveCamera);
            }

            if (MedicalState)
            {
                ChangeMedicalStateCommand medicalState = new ChangeMedicalStateCommand();
                MedicalState medState = new MedicalState("");
                medState.update();
                medicalState.captureFromMedicalState(medState);
                action.addCommand(medicalState);
            }

            if (HighlightTeeth)
            {
                action.addCommand(new ChangeTeethHighlightsCommand(TeethController.HighlightContacts));
            }
        }