protected override void Start() { this.visualization = VisualizationService.GetVisualizations().Single(p => p.Id == VisualizationId); this.text = this.visualization.Name; base.Start(); }
public MainWindowViewModel() { SelectedDpi = 300; var visualizationService = new VisualizationService( new TestModelServiceFactory(), new TestDiagramServiceFactory(), new TestUiServiceFactory(), new DiagramPluginFactory(new TestLayoutPriorityProvider(), new TestDiagramShapeFactory()), new[] { DiagramPluginId.AutoLayoutDiagramPlugin, DiagramPluginId.ConnectorHandlerDiagramPlugin, DiagramPluginId.ModelTrackingDiagramPlugin } ); _testModelService = (ITestModelService)visualizationService.GetModelService(); var diagramId = visualizationService.CreateDiagram(minZoom: 0.2, maxZoom: 5, initialZoom: 1); _diagramService = visualizationService.GetDiagramService(diagramId); _uiService = (IWpfUiService)visualizationService.GetUiService(diagramId); _uiService.DiagramNodeInvoked += i => Debug.WriteLine($"DiagramNodeInvoked: {i}"); _uiService.ShowModelItemsRequested += OnShowModelItemsRequested; AddCommand = new DelegateCommand(AddShapes); RemoveCommand = new DelegateCommand(RemoveShapes); ZoomToContentCommand = new DelegateCommand(ZoomToContent); CopyToClipboardCommand = new DelegateCommand(CopyToClipboardAsync); PopulateModel(_testModelService); }
public override void Cleanup() { VisualizationService.Stop(); TrackerService.Destroy(); CameraService.Destroy(); Messenger.Default.Send(new RemoveCameraMessage(Camera)); // todo remove after message with feedback? SimpleIoc.Default.Unregister<CameraViewModel>(Camera.GUID); base.Cleanup(); }
public static void OpenVectorVisualizer(int visualizationId) { Guard.IsNotNull(visualizationId); var lastScene = Instance.currentScene; var visualizer = new Visualizer(); visualizer.Vizualization = VisualizationService.GetVisualizations().Single(visualization => visualization.Id == visualizationId); visualizer.Load(); Instance.currentScene = visualizer; Instance.vectorVisualizer = visualizer; SceneManager.LoadSceneAsync("Scenes/VectorVisualizer"); CloseScene(lastScene); }
public HttpResponseMessage GetSourceCodeisualization(string originalId) { try { VisualizationService visualizationService = new VisualizationService(); var view3dData = visualizationService.GetView3dSourceCode(originalId); var data = new JavaScriptSerializer().Serialize(view3dData); var response = Request.CreateResponse(HttpStatusCode.OK); response.Content = new StringContent(data, Encoding.UTF8, "application/json"); return(response); } catch (Exception ex) { throw InternalError.ThrowError(ex); } }
public HttpResponseMessage GetView3UserFilterVisualization(TaskProjectModel filter) { try { VisualizationService visualizationService = new VisualizationService(); var view3dData = visualizationService.GetView3dUserDataFilter(filter); var data = new JavaScriptSerializer().Serialize(view3dData); var response = Request.CreateResponse(HttpStatusCode.OK); response.Content = new StringContent(data, Encoding.UTF8, "application/json"); return(response); } catch (Exception ex) { throw InternalError.ThrowError(ex); } }
public static bool TryOpenVectorVisualizer(String uri) { // Parse URI // Definition // Case 1: "https://vr-vektoren.ch/app/VrVektoren/[section]/[id]" // 2: "vrvektoren://[section]/[id]" // // Example "https://vr-vektoren.ch/app/VrVektoren/tutorial/1" // Config: string[] avaliableSections = { "tutorial" }; if (string.IsNullOrWhiteSpace(uri)) { LogDebug("uri is null or size = 0"); return(false); } Uri unparsedUrl; if (!Uri.TryCreate(uri, UriKind.Absolute, out unparsedUrl)) { LogDebug("Not a valid uri. URI:" + uri); return(false); } if (unparsedUrl.Scheme != "vrvektoren" && !(unparsedUrl.Scheme == "https" && unparsedUrl.Authority == "vr-vektoren.ch")) { LogDebug("not a valid scheme according to definition. URI:" + uri + ", Scheme:" + unparsedUrl.Scheme + ", Authority:" + unparsedUrl.Authority); return(false); } string relativePath; if (unparsedUrl.AbsolutePath.Contains("VrVektoren")) { relativePath = unparsedUrl.AbsolutePath.Split(new string[] { "VrVektoren" }, 2, StringSplitOptions.None)[1]; } else { relativePath = unparsedUrl.Authority + unparsedUrl.AbsolutePath; } string[] path = relativePath.Split(new string[] { "/" }, StringSplitOptions.RemoveEmptyEntries); if (path.Length != 2) // "[section]" / "[id]" { LogDebug("not a valid path according to definition. URI:" + uri); return(false); } string section = path[0]; string idString = path[1]; if (!avaliableSections.Contains(section)) { LogDebug("not a valid section according to definition. URI:" + uri); return(false); } if (!int.TryParse(idString, out int id)) { LogDebug("not a valid id according to definition. URI:" + uri); return(false); } if (!VisualizationService.GetVisualizations().Any(p => p.Id == id)) { LogDebug("not a existing id:" + idString); return(false); } OpenVectorVisualizer(id); // Todo: Remove LogDebug(idString); return(true); }
public void DoToggleVisualization(bool enabled) { if (enabled) VisualizationService.Start(); else VisualizationService.Stop(); }