private void performShow() { try { Autodesk.Revit.DB.ElementId toShow = Autodesk.Revit.DB.ElementId.InvalidElementId; Models.ClearWidth cw = treeView1.SelectedNode.Tag as Models.ClearWidth; if (cw != null) { toShow = cw.Id; } Models.Node node = treeView1.SelectedNode.Tag as Models.Node; if (node != null) { toShow = node.RoomId; } if (toShow == Autodesk.Revit.DB.ElementId.InvalidElementId) { return; } _controller.Show(toShow); } catch (Exception ex) { Autodesk.Revit.UI.TaskDialog td = new Autodesk.Revit.UI.TaskDialog("Error"); td.MainContent = "Unexpected error: " + ex.GetType().Name + ": " + ex.Message; td.ExpandedContent = ex.StackTrace; td.Show(); } }
private void reCheckMaxPath() { if (treeView1.Nodes.Count == 0) { return; } UpdateStatus("Checking max travel..."); foreach (TreeNode room in treeView1.Nodes[0].Nodes) { Models.Node roomNode = room.Tag as Models.Node; if (roomNode == null) { continue; } // find the minimum double min = 9999; int childRoutes = 0; foreach (TreeNode child in room.Nodes) { Models.Route r = child.Tag as Models.Route; if (r != null) { childRoutes++; if (r.TotalDistance < min) { min = r.TotalDistance; } if (r.TotalDistance > _maxTravel) { child.BackColor = System.Drawing.Color.Yellow; } else { child.BackColor = Color.White; } } } if ((childRoutes > 0)) { room.Text = roomNode.Name + " Max Travel Dist: " + min.ToString("F1"); if (min > _maxTravel) { room.BackColor = Color.Orange; } else { room.BackColor = Color.White; } } } }
private void ShowContextMenu(UIElement target, Point offset) { if (!WorkSpace.Equals("")) { Models.Node CurrentNode = (Models.Node)Files.SelectedItem; var MyFlyout = this.Resources["FileContextMenu"] as MenuFlyout; System.Diagnostics.Debug.WriteLine("MenuFlyout shown '{0}', '{1}' on item:{2}", target, offset, CurrentNode.Path); MyFlyout.ShowAt(target, offset); } }
private async void SvxLinkService_NodeConnected(Models.Node n) { try { await InvokeAsync(() => StateHasChanged()); await ShowInfoToastAsync(n.Name, "A rejoint le salon."); } catch (Exception e) { Logger.LogError($"Impossible d'indiquer qu'un noeud a rejoint le salon. {e.Message}"); Telemetry.TrackException(e); } }
private void SvxLinkService_NodeTx(Models.Node n) { try { CurrentTxNode = n; InvokeAsync(() => StateHasChanged()); } catch (Exception e) { Logger.LogError($"Impossible de passer le node en TX. {e.Message}"); Telemetry.TrackException(e); } }
private void Files_Right_Click(object sender, RightTappedRoutedEventArgs e) { //var s = (FrameworkElement)sender; var d = ((FrameworkElement)e.OriginalSource).DataContext; System.Diagnostics.Debug.WriteLine("Selected Type :" + d.GetType()); Models.Node node = (Models.Node)d; Files.SelectedItem = node; System.Diagnostics.Debug.WriteLine("Selected item :" + ((Models.Node)Files.SelectedItem).Label); ShowContextMenu(null, e.GetPosition(null)); }
private void performGetAllRoutes() { try { DateTime start = DateTime.Now; var egresses = _controller.GetEgressNodes(); double total = (double)treeView1.Nodes[0].Nodes.Count; UpdateStatus("Calculating Egress Routes to " + egresses.Count + " egress locations..."); double count = 0; double percent = 0.0; foreach (TreeNode child in treeView1.Nodes[0].Nodes) { percent = count / total * 100.0; count++; UpdateStatus("Calculating Egress Routes to " + egresses.Count + " egress locations...(" + percent.ToString("F0") + "%)"); child.Nodes.Clear(); Models.Node roomNode = child.Tag as Models.Node; foreach (var egress in egresses) { ExternalApp.Log("PathFinding " + roomNode + " to " + egress); try { Models.Route r = Utilities.GraphUtility.FindShortest(roomNode, egress); if (r != null) { addRouteNode(child, egress, r); } } catch (Exception ex) { ExternalApp.Log("Exception while pathfinding: " + ex.GetType().Name + ": " + ex.Message); ExternalApp.Log(ex.StackTrace); } } } reCheckMaxPath(); reCheckDoorCW(); TimeSpan analysis = DateTime.Now - start; UpdateStatus("Analysis Completed in " + analysis); } catch (Exception ex) { Autodesk.Revit.UI.TaskDialog td = new Autodesk.Revit.UI.TaskDialog("Error"); td.MainContent = "Unexpected error: " + ex.GetType().Name + ": " + ex.Message; td.ExpandedContent = ex.StackTrace; td.Show(); } }
private void addRouteNode(TreeNode parent, Models.Node egress, Models.Route route) { TreeNode routeNode = parent.Nodes.Add("Route to " + egress.NodeType + ": " + egress.Name); routeNode.Tag = route; if (route != null) { routeNode.Text += ": " + route.TotalDistance.ToString("F2") + "ft."; //_controller.DrawRoute(route); StringBuilder sb = new StringBuilder(); foreach (var node in route.Nodes) { sb.Append(node.Name + " - "); } routeNode.ToolTipText = sb.ToString(); } }
private void Files_Click(object sender, TappedRoutedEventArgs e) { Models.Node CurrentNode = (Models.Node)Files.SelectedItem; if (CurrentNode.Folder) { string fileId = CurrentNode.Path; if (WorkSpace.Equals("")) { WorkSpace = fileId; } else { History.Add(fileId); } System.Diagnostics.Debug.WriteLine("Item clicked, path:" + CurrentNode.Path); Browse(); } }