public static LinearPosition UpdateModel(LinearPosition m, LinearPositionViewModel vm) { m.Id = vm.Id; m.Max = vm.Max; m.Min = vm.Min; m.Pos = vm.Pos; m.Direction = vm.Direction; return(m); }
public static LinearPositionViewModel UpdateViewModel(LinearPositionViewModel vm, LinearPosition m) { vm.Id = m.Id; vm.Max = m.Max; vm.Min = m.Min; vm.Pos = m.Pos; vm.Direction = m.Direction; vm.Value = m.Pos; return(vm); }
public static MachineViewModels.ViewModels.Links.ILinkViewModel Convert(this ILink link, MachineElementViewModel mevm, Transform3DGroup transformGroup, Point3D rotationCenter) { if (link == null) { return(null); } if (link is LinearPosition linPos) { var vm = new LinearPositionViewModel(); var action = GetLinearPositionLinkAction(transformGroup, linPos.Direction, linPos.Pos); MachineViewModels.Extensions.LinkExtensions.UpdateViewModel(vm, linPos); vm.Description = mevm.Name; if (action != null) { vm.ValueChanged += (s, e) => action(e); } return(vm); } else if (link is LinearPneumatic pnmPos) { var vm = new LinearPneumaticViewModel(); MachineViewModels.Extensions.LinkExtensions.UpdateViewModel(vm, pnmPos); vm.Description = mevm.Name; ApplyLinearPneumaticLinkAction(transformGroup, vm, mevm); return(vm); } else if (link is RotaryPneumatic pnmRot) { var vm = new RotaryPneumaticViewModel(); MachineViewModels.Extensions.LinkExtensions.UpdateViewModel(vm, pnmRot); vm.Description = mevm.Name; ApplyRotaryPneumaticLinkAction(transformGroup, rotationCenter, vm); return(vm); } else { throw new NotImplementedException(); } }
private GantryLinearPositionViewModel CreateViewModel(LinearPositionViewModel master, IEnumerable <LinearPositionViewModel> links) { var vm = new GantryLinearPositionViewModel() { Master = master.Id, Slave = -1, CompatibleLinks = new List <int>() { -1 } }; foreach (var item in links) { if ((item.Id != master.Id) && (item.Direction == master.Direction)) { vm.CompatibleLinks.Add(item.Id); } } return(vm); }