public static Point CenterBetweenNodes(NodModelBase Nod1, NodModelBase Nod2) { double newNodePosX; double newNodePosY; if (Nod1.PositionLeft > Nod2.PositionLeft) { newNodePosX = Nod2.PositionLeft + (Nod1.PositionLeft - Nod2.PositionLeft) / 2; if (Nod1.PositionTop > Nod2.PositionTop) { newNodePosY = Nod2.PositionTop + (Nod1.PositionTop - Nod2.PositionTop) / 2; } else { newNodePosY = Nod1.PositionTop + (Nod2.PositionTop - Nod1.PositionTop) / 2; } } else { newNodePosX = Nod1.PositionLeft + (Nod2.PositionLeft - Nod1.PositionLeft) / 2; if (Nod1.PositionTop > Nod2.PositionTop) { newNodePosY = Nod2.PositionTop + (Nod1.PositionTop - Nod2.PositionTop) / 2; } else { newNodePosY = Nod1.PositionTop + (Nod2.PositionTop - Nod1.PositionTop) / 2; } } return(new Point(newNodePosX, newNodePosY)); }
public LinjeModel(LinjeViewModel lvm, NodModelBase n1, NodModelBase n2) { LinjeViewModel = lvm; Nod1 = n1; Nod2 = n2; SetOnPropertyChanged(); }
public static LinjeModel GetSharingLinje(NodModelBase n1, NodModelBase n2) { foreach (LinjeModel l in n1.LinjeListModel) { if (l.Nod1 == n2 || l.Nod2 == n2) { return(l); } } return(null); }
public LinjeViewModel AddNewLinje(NodModelBase n1, NodModelBase n2) { LinjeViewModel lvm = new LinjeViewModel(this, n1, n2); n1.LinjeListModel.Add(lvm.LinjeModel); n2.LinjeListModel.Add(lvm.LinjeModel); Add(lvm); lvm.Select(); return(lvm); }
public void ReplaceNod(NodModelBase oldNod, NodModelBase newNod) { if (Nod1 == oldNod) { Nod1 = newNod; } else { Nod2 = newNod; } SetOnPropertyChanged(); }
public LinjeViewModel(LinjeRepository lr, NodModelBase n1, NodModelBase n2) { LinjeRepository = lr; LinjeModel = new LinjeModel(this, n1, n2); }