private static ViewBase FindView(SerializedObject so) { if (ViewFinder.FindRelativeView(((Component)so.targetObject).gameObject, ViewFinder.FindRelativeViewUpward, out ViewBase v)) { return(v); } return(default);
protected override ExecutionResult DoExecute(string arg) { var sessions = DataService.GetSessions().AsSwitchSessionResult(); foreach (var s in sessions) { s.Icon = "FormatListNumbers"; } ViewFinder.GetViewModel().SetResult(sessions, keepalive: true); return(ExecutionResult.SuccesShow); }
public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) { var uiApp = commandData.Application; var doc = uiApp.ActiveUIDocument.Document; SetStatusText("Updating CO2e visualisation..."); var view = new ViewFinder(doc).Get3DViewNamed("CO2e"); if (view == null) { TaskDialog.Show("Error", "A 3D view named 'CO2e' must exist to view the AMEE CO2e visualization."); return(Result.Failed); } new AnalysisDisplayStyles().SetCO2eAnalysisDisplayStyle(view); var sfm = SpatialFieldManager.GetSpatialFieldManager(view); if (sfm == null) { sfm = SpatialFieldManager.CreateSpatialFieldManager(view, 1); // One measurement value for each point } sfm.Clear(); var sw = new Stopwatch(); sw.Start(); var collector = new FilteredElementCollector(doc, view.Id); ICollection <Element> co2eElements = collector.WherePasses(Settings.CreateFilterForElementsWithCO2eParameter()).WhereElementIsNotElementType().ToElements(); var count = 0; foreach (var element in co2eElements) { if (count++ > 200) { logger.InfoFormat("Skipping CO2e visualisation update for element {0} since we have already updated more than 200", element.Name); continue; } SetStatusText("Updating CO2e visualisation for element {0}...", element.Name); CO2eVisualisationCreator.UpdateCO2eVisualization(sfm, element); } sw.Stop(); SetStatusText("Updated all CO2e visualisations in {0}", sw.Elapsed); logger.InfoFormat("Updated all CO2e visualisations in {0}", sw.Elapsed); return(Result.Succeeded); }
public void RegisterView(ViewZoom v) { base.Register(v); if (v.ViewFinder != null) { ViewFinder vf = v.ViewFinder; if (parentViewfinders.ContainsKey(vf.Parent)) { parentViewfinders[vf.Parent].Add(vf); } else { parentViewfinders.Add(vf.Parent, new List <ViewFinder>() { vf }); } } }
/// <inheritdoc /> public async Task <MediaFile> TakePhotoAsync(StoreMediaOptions options) { if (!this.IsEnabled) { throw new NotSupportedException(); } //var capture = new CameraCaptureUI(this.CameraFacingDirection); var capture = new ViewFinder(this.CameraFacingDirection); var result = await capture.CaptureFileAsync(); if (result == null) { return(null); } StorageFolder rootFolder = ApplicationData.Current.LocalFolder; string targetFilePath = options.GetFilePath(rootFolder.Path); var directoryPath = Path.GetDirectoryName(targetFilePath); var directoryName = options.Directory; if (!string.IsNullOrWhiteSpace(directoryName)) { var exists = Directory.Exists(directoryPath); if (!exists) { await rootFolder.CreateFolderAsync(directoryName, CreationCollisionOption.ReplaceExisting); } } rootFolder = await StorageFolder.GetFolderFromPathAsync(directoryPath); string targetFilename = Path.GetFileName(targetFilePath); var file = await result.CopyAsync(rootFolder, targetFilename, NameCollisionOption.ReplaceExisting).AsTask().ConfigureAwait(false); Stream stream = await file.OpenStreamForReadAsync().ConfigureAwait(false); return(new MediaFile(file.Path, () => stream)); }
void CrossBranchOverlapTest() { v0 = new ViewZoom(0); v1 = new ViewZoom(1); v2 = new ViewZoom(1); v3 = new ViewZoom(2); v4 = new ViewZoom(2); //is overlap return false //vF1 = new ViewFinder(v0, v1, 0.15f, 0.15f, new Vector3(0.5f, 0.25f,0)); //vF2 = new ViewFinder(v0, v2, 0.15f, 0.15f, new Vector3(0.75f, 0.25f,0)); //vF3 = new ViewFinder(v0, v3, 0.15f, 0.15f, new Vector3(1f, 0.25f,0)); //is overlap return true vF1 = new ViewFinder(v0, v1, 0.15f, 0.15f, new Vector3(1f, 0.25f, 0)); vF2 = new ViewFinder(v0, v2, 0.15f, 0.15f, new Vector3(0.75f, 0.25f, 0)); vF3 = new ViewFinder(v1, v3, 0.15f, 0.15f, new Vector3(0.6666666f, 0.5f, 0)); vF4 = new ViewFinder(v2, v4, 0.15f, 0.15f, new Vector3(1.55f, 0.5f, 0)); v1.ViewFinder = vF1; v2.ViewFinder = vF2; v3.ViewFinder = vF3; v4.ViewFinder = vF4; poly.Register(v0); poly.Register(v1); poly.Register(v2); poly.Register(v3); poly.Register(v4); poly.UpdateLayout(); GameObject v0g = new GameObject(); v0g.name = "V" + v0.Level; v0g.transform.position = v0.Position; v0g.transform.localScale = new Vector3(v0.Width, v0.Height, 1); GameObject v1g = GameObject.CreatePrimitive(PrimitiveType.Cube); v1g.name = "V1" + v1.Level; v1g.transform.position = v1.Position; v1g.transform.localScale = new Vector3(v1.Width, v1.Height, 1); GameObject v2g = GameObject.CreatePrimitive(PrimitiveType.Sphere); v2g.name = "V2" + v2.Level; v2g.transform.position = v2.Position; v2g.transform.localScale = new Vector3(v2.Width, v2.Height, 1); GameObject v3g = GameObject.CreatePrimitive(PrimitiveType.Cube); v3g.name = "V3" + v3.Level; v3g.transform.position = v3.Position; v3g.transform.localScale = new Vector3(v3.Width, v3.Height, 1); GameObject v4g = GameObject.CreatePrimitive(PrimitiveType.Sphere); v4g.name = "V4" + v4.Level; v4g.transform.position = v4.Position; v4g.transform.localScale = new Vector3(v4.Width, v4.Height, 1); GameObject vf1g = GameObject.CreatePrimitive(PrimitiveType.Cube); vf1g.name = "VF" + vF1.Parent.Level; vf1g.transform.position = vF1.Position; vf1g.transform.localScale = new Vector3(vF1.Width, vF1.Height, 1); GameObject vf2g = GameObject.CreatePrimitive(PrimitiveType.Sphere); vf2g.name = "VF" + vF2.Parent.Level; vf2g.transform.position = vF2.Position; vf2g.transform.localScale = new Vector3(vF2.Width, vF2.Height, 1); GameObject vf3g = GameObject.CreatePrimitive(PrimitiveType.Cube); vf3g.name = "VF" + vF3.Parent.Level; vf3g.transform.position = vF3.Position; vf3g.transform.localScale = new Vector3(vF3.Width, vF3.Height, 1); GameObject vf4g = GameObject.CreatePrimitive(PrimitiveType.Sphere); vf4g.name = "VF" + vF4.Parent.Level; vf4g.transform.position = vF4.Position; vf4g.transform.localScale = new Vector3(vF4.Width, vF4.Height, 1); //There is overlap Debug.Log(poly.IsChildrenOverlap(v0)); bool isSolve = true; //Solve overlap if (poly.IsChildrenOverlap(v0) && isSolve) { poly.SolveChildrenOverlap(v0); } if (poly.IsChildrenOverlap(v1) && isSolve) { poly.SolveChildrenOverlap(v1); } poly.UpdateLayout(); v0g.transform.position = v0.Position; v0g.transform.localScale = new Vector3(v0.Width, v0.Height, 1); v1g.transform.position = v1.Position; v1g.transform.localScale = new Vector3(v1.Width, v1.Height, 1); v2g.transform.position = v2.Position; v2g.transform.localScale = new Vector3(v2.Width, v2.Height, 1); v3g.transform.position = v3.Position; v3g.transform.localScale = new Vector3(v3.Width, v3.Height, 1); vf4g.transform.position = vF4.Position; vf4g.transform.localScale = new Vector3(vF4.Width, vF4.Height, 1); }