private Color TTBigger = Colors.Red; //for TT values in the last(bigger) range public EnergyVisualisationNode(Core.VplControl hostCanvas) : base(hostCanvas) { // Init UI IsResizeable = true; AddInputPortToNode("Model", typeof(string)); AddOutputPortToNode("SelectedEntities", typeof(List <IfcGloballyUniqueId>)); EnergyVisualisationControl energyVisualisationControl = new EnergyVisualisationControl(); _viewPort = energyVisualisationControl.Viewport3D; //create a bar // ProgressBar ColorBarAll = new ProgressBar();//creates a new progress bar, it can be any other control, but this will work ProgressBar ColorBar = energyVisualisationControl.ColorBarAll; // ColorBarAll.Height = 20;//defines the height // ColorBarAll.Width = 400;//defines the width //ColorBar.Background=new Color(Color) ColorBar.Value = 0;//just keeps the progress bar empty _Colors = GetStaticPropertyBag(typeof(Colors)).ToList(); AddControlToNode(energyVisualisationControl); //#0 // AddControlToNode(ColorBarAll);//#1 }
public static void CreateModel(ref HelixViewport3D viewPort) { if (device3D == null) { if (File.Exists(MODEL_PATH)) { viewPort3d = viewPort; device3D = new ModelVisual3D(); device3D.Content = Display3d(); StartPosition = device3D.Transform.Value; viewPort3d.Camera.LookDirection = new Vector3D(14.32, -15.95, -7.48); viewPort3d.Camera.UpDirection = new Vector3D(-0.354, 0.392, 0.834); viewPort3d.Camera.Position = new Point3D(-16.52, 16.62, 9); //viewPort3d.CameraController.CameraTarget = new Point3D(-2.2, 0.6, 1.5); viewPort3d.Children.Add(device3D); } else { MessageBox.Show("Wrong path to model!"); } } }
public void StartDraw(HelixViewport3D helix) { brush = new SolidColorBrush(Color.FromRgb(0, 0, 255)); for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { for (int k = 0; k < n; k++) { box[i, j, k] = new BoxVisual3D(); } } } for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { for (int k = 0; k < n; k++) { box[i, j, k].Width = 4; box[i, j, k].Height = 4; box[i, j, k].Length = 4; box[i, j, k].Center = new System.Windows.Media.Media3D.Point3D(10 * i, 10 * j, 10 * k); box[i, j, k].Fill = brush; helix.Children.Add(box[i, j, k]); } } } }
void hv_MouseDown(object sender, System.Windows.Input.MouseButtonEventArgs e) { HelixViewport3D hv = e.Source as HelixViewport3D; if (hv == null) { return; } Point3D p; Vector3D v; DependencyObject d; if (hv.FindNearest(e.GetPosition(hv), out p, out v, out d)) { ModelVisual3D mv3d = d as ModelVisual3D; ModelVisual3D parent = mv3d.GetValue(MyProperties.MyParentProperty) as ModelVisual3D; // object o = mv3d.GetValue(MyProperties.MyParentProperty); string mouseDownObjName = parent != null ? _dict[parent] : _dict[mv3d]; List <DataGridObject> objs = dg_Variables.ItemsSource as List <DataGridObject>; idxSelectedRow = objs.FindIndex(a => a.Name == mouseDownObjName); DataGridRow row = dg_Variables.ItemContainerGenerator.ContainerFromIndex(idxSelectedRow) as DataGridRow; row.Background = PropertyServer.SelectedRowBackground; Logger.Log(sender, "Row background color changed - selected"); } }
public Scene3D(HelixViewport3D viewport, GridLinesVisual3D grid, LightSetup light, PanoramaCube3D panoramaCube3D) { this.viewport = viewport; this.grid = grid; this.light = light; this.panoramaCube3D = panoramaCube3D; }
public void Initialize(HelixViewport3D left) { int n = numberOfComponents; components = new Component[n]; joints = new Joint[n + 1]; for (int i = 0; i < n; i++) { components[i] = new Component(); } for (int i = 0; i < n + 1; i++) { joints[i] = new Joint(); } for (int i = 0; i < n; i++) { components[i].Begin = joints[i]; components[i].End = joints[i + 1]; components[i].Length = 5.0f; left.Children.Add(components[i].Tube); } components[2].Tube.Fill = Brushes.Red; //components[0].Length = 0.0f; //components[1].Length = 5.0f; //components[3].Length = 2.0f; //components[4].Length = 1.0f; joints[2].AddCyllinder(left); joints[3].AddCyllinder(left); joints[4].AddCyllinder(left); joints[5].AddCyllinder(left); //Update(); }
private void Viewport_MouseUp(object sender, MouseButtonEventArgs e) { if (e.ChangedButton == MouseButton.Left) { DebugUtil.LogWithLocation("Clicked on viewport"); HelixViewport3D viewport = (HelixViewport3D)sender; var overlayHit = viewport.Viewport .FindHits(e.GetPosition(Overlay)) .FirstOrDefault(); if (overlayHit != null) { //do something } else { //no hit in overlay //check if this hits anything in the underlaying viewport var scenehit = viewport.Viewport .FindHits(e.GetPosition(Scene)) .FirstOrDefault(); if (scenehit != null) { SceneActor selectedActor = VisualFactory?.GetRenderItem(RenderingMode.Solid, scenehit.Visual); if (selectedActor != null) { ActorClicked?.Invoke(selectedActor.Transform.Parent); } } } } }
// public MainViewModel(IFileDialogService fds, HelixViewport3D hv, ModelVisual3D rootModel) public MainViewModel(IFileDialogService fds, HelixViewport3D hv, MainWindow window) { Expansion = 1; FileDialogService = fds; HelixView = hv; FileOpenCommand = new DelegateCommand(FileOpen); FileOpenRawCommand = new DelegateCommand(FileOpenRaw); FileExportCommand = new DelegateCommand(FileExport); FileExportRawCommand = new DelegateCommand(FileExportRaw); FileExitCommand = new DelegateCommand(FileExit); ViewZoomExtentsCommand = new DelegateCommand(ViewZoomExtents); EditCopyXamlCommand = new DelegateCommand(CopyXaml); EditClearAreaCommand = new DelegateCommand(ClearArea); FileExportStlCommand = new DelegateCommand(StlFileExport); ApplicationTitle = "Dental.Smile - 3D Viewer"; ModelToBaseMarker = new Dictionary <Model3D, BaseMarker>(); OriginalMaterial = new Dictionary <Model3D, Material>(); //Elements = new List<VisualElement>(); //foreach (var c in hv.Children) Elements.Add(new VisualElement(c)); DB = DentalSmileDBFactory.GetInstance(); Treatment = new Treatment(); SmileFile = new SmileFile(); Patient = new Patient(); JawVisual = new JawVisual3D(Patient); RootVisual = window.vmodel; app = Application.Current as App; RootVisual.Children.Add(JawVisual); this.window = window; }
private List <D3Model> AddData() { d3ModelsList = new List <D3Model>(); HelixViewport3D helixViewport3D1 = new HelixViewport3D() { Name = "One" }; HelixViewport3D helixViewport3D2 = new HelixViewport3D() { Name = "Three" }; HelixViewport3D helixViewport3D3 = new HelixViewport3D() { Name = "Four" }; helixViewport3D1.Children.Add(new DefaultLights()); helixViewport3D1.Children.Add(new Teapot()); d3ModelsList.Add(new D3Model() { id = 1, Name = helixViewport3D1.Name, helixViewport3D = helixViewport3D1 }); helixViewport3D2.Children.Add(new DefaultLights()); d3ModelsList.Add(new D3Model() { id = 2, Name = helixViewport3D2.Name, helixViewport3D = helixViewport3D2 }); helixViewport3D3.Children.Add(new Teapot()); d3ModelsList.Add(new D3Model() { id = 3, Name = helixViewport3D3.Name, helixViewport3D = helixViewport3D3 }); return(d3ModelsList); }
public void Wpf_Export_Triangle_Valid() { var b1 = new MeshBuilder(); b1.AddTriangle(new Point3D(0, 0, 0), new Point3D(0, 0, 1), new Point3D(0, 1, 0)); var meshGeometry = b1.ToMesh(); var mesh = new MeshGeometryVisual3D(); mesh.MeshGeometry = meshGeometry; mesh.Material = Materials.Green; mesh.Transform = new TranslateTransform3D(2, 0, 0); var viewport = new HelixViewport3D(); viewport.Items.Add(mesh); string temp = Path.GetTempPath(); var objPath = temp + "model.obj"; var mtlPath = temp + "model.mtl"; try { viewport.Export(objPath); string contentObj = File.ReadAllText(objPath); string expectedObj = @"mtllib ./model.mtl o object1 g group1 usemtl mat1 v 2 0 0 v 2 0 1 v 2 1 0 # 3 vertices vt 0 1 vt 1 1 vt 0 0 # 3 texture coordinates f 1/1 2/2 3/3 # 1 faces "; Assert.AreEqual(expectedObj.Replace("\r\n", "\n"), contentObj.Replace("\r\n", "\n")); string contentMtl = File.ReadAllText(mtlPath); } finally { if (File.Exists(objPath)) { File.Delete(objPath); } if (File.Exists(mtlPath)) { File.Delete(mtlPath); } } }
public RendererViewport(HelixViewport3D sceneViewport) { RenderMode = RenderingMode.Solid; this.viewport = sceneViewport; this.visualFactory = VisualFactory; listeners = new List <RenderItemListener>(); }
//INTEGRATION public MainViewModel(IFileDialogService fds, HelixViewport3D hv, Treatment treatment, SmileFile file, bool duplicate, MainWindow window) { Expansion = 1; FileDialogService = fds; HelixView = hv; FileOpenCommand = new DelegateCommand(FileOpen); FileOpenRawCommand = new DelegateCommand(FileOpenRaw); //FileExportCommand = new DelegateCommand(FileExport); FileExportCommand = new DelegateCommand(ConfirmDirectFileExport); FileExportRawCommand = new DelegateCommand(FileExportRaw); FileExitCommand = new DelegateCommand(FileExit); ViewZoomExtentsCommand = new DelegateCommand(ViewZoomExtents); EditCopyXamlCommand = new DelegateCommand(CopyXaml); EditClearAreaCommand = new DelegateCommand(ClearArea); FileExportStlCommand = new DelegateCommand(StlFileExport); ApplicationTitle = "Dental Smile - 3D Viewer"; ModelToBaseMarker = new Dictionary <Model3D, BaseMarker>(); OriginalMaterial = new Dictionary <Model3D, Material>(); //Elements = new List<VisualElement>(); //foreach (var c in hv.Children) Elements.Add(new VisualElement(c)); this.window = window; RootVisual = window.vmodel; handleManipulationData(treatment, file, duplicate); //JawVisual = new JawVisual3D(Patient); //RootVisual.Children.Add(JawVisual); }
public void Initialize(HelixViewport3D viewport) { components = new Element[componentsCount]; for (int i = 0; i < componentsCount; i++) { components[i] = new Element(); } joints = new Joint[componentsCount + 1]; for (int i = 0; i < componentsCount + 1; i++) { joints[i] = new Joint(); } for (int i = 0; i < componentsCount; i++) { components[i].Begin = joints[i]; components[i].End = joints[i + 1]; viewport.Children.Add(components[i].Tube); viewport.Children.Add(components[i].Sphere); } components[0].Length = 0.0f; components[1].Length = 5.0f; components[3].Length = 2.0f; components[4].Length = 1.0f; }
public void Attach(HelixViewport3D viewport) { this.viewport = viewport; // add the point cloud model to the viewport to display it this.viewport.Children.Add(this.pointCloudModel.Model); }
public MainViewModel(IFileDialogService fds, HelixViewport3D viewport, HelixViewport3D viewport2) { if (viewport == null || viewport2 == null) { throw new ArgumentNullException("Neither viewport nor viewport2 is NULL!"); } this.dispatcher = Dispatcher.CurrentDispatcher; this.Expansion = 1; this.fileDialogService = fds; this.viewport = viewport; this.viewport2 = viewport2; this.FileOpenCommand = new DelegateCommand(this.FileOpen); this.FileExportCommand = new DelegateCommand(this.FileExport); this.FileExitCommand = new DelegateCommand(FileExit); this.ViewZoomExtentsCommand = new DelegateCommand(this.ViewZoomExtents); this.EditCopyXamlCommand = new DelegateCommand(this.CopyXaml); this.ApplicationTitle = "Medical 3D Model viewer"; this.Elements = new List <VisualViewModel>(); foreach (var c in viewport.Children) { this.Elements.Add(new VisualViewModel(c)); } foreach (var c in viewport2.Children) { this.Elements.Add(new VisualViewModel(c)); } this.Info1 = "This is a test"; }
private void GizmoHandler_SelectionGizmoRemoved(IGizmo gizmo, GizmoHandler.ViewportLayer layer) { HelixViewport3D viewport = GetViewport(layer); viewport.Children.Remove(gizmo.Visual); visibleGizmos.Remove(gizmo); }
public Robot(HelixViewport3D left, ModelVisual3D FrameStartEuler, ModelVisual3D FrameEndEuler) { this.startFrameEuler = FrameStartEuler; this.endFrameEuler = FrameEndEuler; Initialize(left); }
public HelixViewport3D CreateControl(DataStore data) { HelixViewport3D control = new HelixViewport3D(); Deserialize(control, data); return(control); }
public void LoadHelixViewPort(FrameworkElement control) { HelixViewPort = control.FindChild <HelixViewport3D>("mHelixViewPort"); if (HelixViewPort != null) { HelixViewPort.Camera = PerspectiveCamera; } }
public BlockScene(HelixViewport3D viewport, List <IFeature> basePaths) { Viewport = viewport; BasePaths = basePaths; Blocks = new List <ExtrudedVisual3D>(); Init(); }
public PUMA(HelixViewport3D viewport, ModelVisual3D start, ModelVisual3D end) { startFrame = start; endFrame = end; converter = Singleton <EulerToQuaternionConverter> .Instance; mathHelper = Singleton <MathHelper> .Instance; Initialize(viewport); }
public ChartScene(HelixViewport3D viewport, int m, int n) { Viewport = viewport; M = m; N = n; Boxes = new List <BoxVisual3D>(); Init(); }
private void Create3DViewPort() { var hVp3D = new HelixViewport3D(); var lights = new DefaultLights(); var teaPot = new Teapot(); hVp3D.Children.Add(lights); hVp3D.Children.Add(teaPot); }
public BlockScene(HelixViewport3D viewport, Map map) { this.Viewport = viewport; this.Map = map; this.Blocks = new List <Visual3D>(); this.Roads = new List <Visual3D>(); this.Init(); }
private void ViewportUnHighlighted() { foreach (IGizmo gizmo in visibleGizmos) { DebugUtil.LogWithLocation("Unhighlighted" + ViewportID.ToString()); HelixViewport3D viewport = GetViewport(gizmo.Layer); viewport.Children.Remove(gizmo.Visual); } }
public MyTask5(string name, int number, IFileDialog dialog, HelixViewport3D viewport) : base(name, number, dialog, viewport) { MaxPointOz = 25; MinPointOz = -25; Start = new DelegateCommand(StartTransformation); Stop = new DelegateCommand(StopTask); _myThread = new Thread(Move); }
public MyTask3(string name, int number, IFileDialog dialog, HelixViewport3D viewport) { _viewport = viewport ?? throw new ArgumentNullException(nameof(viewport)); Name = name; Number = number; _dialog = dialog; _dispatcher = Dispatcher.CurrentDispatcher; Load = new DelegateCommand(LoadFile); Clear = new DelegateCommand(ClearContent); }
private void Create3DViewPort() { var hVp3D = new HelixViewport3D(); var lights = new DefaultLights(); var sphere = new SphereVisual3D(); var cube = new CubeVisual3D(); hVp3D.Children.Add(lights); hVp3D.Children.Add(sphere); }
private void Create3DViewPort() { //var viewport = new HelixViewport3D(); HelixViewport3D viewport = new HelixViewport3D(); this.grid.Children.Add(viewport); var lights = new DefaultLights(); viewport.Children.Add(new GridLinesVisual3D()); viewport.Children.Add(lights); box.Width = 6; box.Height = 6; box.Length = 6; box.Fill = Brushes.Yellow; viewport.Children.Add(box); BoxVisual3D bPlane = new BoxVisual3D(); bPlane.Height = 1; bPlane.Width = 30; bPlane.Length = 30; bPlane.Fill = Brushes.Pink; bPlane.Center = new Point3D(35, 30, -1); // Plane3D bPlane = new Plane3D(); viewport.Children.Add(bPlane); BoxVisual3D cPlane = new BoxVisual3D(); cPlane.Height = 30; cPlane.Width = 1; cPlane.Length = 30; cPlane.Fill = Brushes.Pink; cPlane.Center = new Point3D(35, 15, 14); viewport.Children.Add(cPlane); BoxVisual3D dPlane = new BoxVisual3D(); dPlane.Height = 30; dPlane.Width = 30; dPlane.Length = 1; dPlane.Fill = Brushes.Pink; dPlane.Center = new Point3D(20, 30, 14); viewport.Children.Add(dPlane); BoxVisual3D ePlane = new BoxVisual3D(); ePlane.Height = 30; ePlane.Width = 30; ePlane.Length = 1; ePlane.Fill = Brushes.Pink; ePlane.Center = new Point3D(50, 30, 14); viewport.Children.Add(ePlane); }
public void load3dModel() { ObjReader CurrentHelixObjReader = new ObjReader(); Model3DGroup MyModel = CurrentHelixObjReader.Read(@"C:\Users\Uğurcan Soruç\Desktop\Flight_GCS\Flight_GCS\3.6.2019 Arayuz SON\FullArayüz-Yedek\uydu.obj"); model.Content = MyModel; var hVp3D = new HelixViewport3D(); var mode = new ModelVisual3D(); hVp3D.Children.Add(mode); }