SEToolbox.Models.GroupMoveModel.Load C# (CSharp) Method

Load() public method

public Load ( ObservableCollection selections, Vector3D playerPosition ) : void
selections ObservableCollection
playerPosition Vector3D
return void
        public void Load(ObservableCollection<IStructureViewBase> selections, Vector3D playerPosition)
        {
            Selections = new ObservableCollection<GroupMoveItemModel>();
            _playerPosition = playerPosition;
            IsGlobalOffsetPosition = true;

            foreach (var selection in selections)
            {
                Selections.Add(new GroupMoveItemModel
                {
                    Item = selection,
                    PositionX = selection.DataModel.PositionX,
                    PositionY = selection.DataModel.PositionY,
                    PositionZ = selection.DataModel.PositionZ,
                    PlayerDistance = selection.DataModel.PlayerDistance
                });
            }
        }

Usage Example

Example #1
0
        public void GroupMoveExecuted()
        {
            var model = new GroupMoveModel();
            var position = ThePlayerCharacter != null ? (Vector3D)ThePlayerCharacter.PositionAndOrientation.Value.Position : Vector3D.Zero;
            model.Load(Selections, position);
            var loadVm = new GroupMoveViewModel(this, model);

            var result = _dialogService.ShowDialog<WindowGroupMove>(this, loadVm);
            if (result == true)
            {
                model.ApplyNewPositions();
                _dataModel.CalcDistances();
                IsModified = true;
            }
        }