public void AddCs(double x, double y, double z) { this.Dispatcher.Invoke(() => { var t = new CoordinateSystemVisual3D(); modelVisual3D.Children.Add(t); }); }
public Node(int Number) { x = 0.0; y = 0.0; z = 0.0; number = Number; csv3d = new CoordinateSystemVisual3D(); }
/// <summary> /// Disegna assi su scena /// </summary> private void DrawAxis(double factor = 10) { var cooDim = view.GetCooAxisDim(); if (double.IsNaN(cooDim)) { return; } var coo = new CoordinateSystemVisual3D { ArrowLengths = cooDim / factor }; var g = new HelixToolkit.DefaultLightsVisual3D(); view.Add(g); view.Add(coo); }
public CoordinateSystemVisual3D GetCoordinateSystem(bool onlyNew = false) { bool newCoordinateSystem = false; if (_CoordinateSystemVisual3D == null) { newCoordinateSystem = true; _CoordinateSystemVisual3D = new CoordinateSystemVisual3D(); _CoordinateSystemVisual3D.ArrowLengths = 0.05; _CoordinateSystemVisual3D.Transform = new MatrixTransform3D(Frame.T_base_world.Inverse().Matrix3D); } if (onlyNew && newCoordinateSystem || !onlyNew) { return(_CoordinateSystemVisual3D); } else { return(null); } }
public void AddCs(Vector3D position, Vector3D target) { this.Dispatcher.Invoke(() => { var ld = (target - position); ld.Normalize(); Vector3D x = ld; Vector3D z = new Vector3D(0.0, 0.0, 1.0); Vector3D y = Vector3D.CrossProduct(x, z); z = Vector3D.CrossProduct(x, y); var t = new CoordinateSystemVisual3D(); var cm = BuildCosinesMatrix(x, y, z); Transform3DGroup tg = new Transform3DGroup(); tg.Children.Add(new MatrixTransform3D(cm)); tg.Children.Add(new TranslateTransform3D(position.X, position.Y, position.Z)); t.Transform = tg; modelVisual3D.Children.Add(t); }); }
private void CreateViewport() { _SyncContext.Send(d => { _SlamModel3D = new SlamModel3D(_SyncContext, false); _Viewport3d = new HelixViewport3D(); _Viewport3d.Background = System.Windows.Media.Brushes.White; _Viewport3d.Camera = new PerspectiveCamera(new Point3D(0, 1, 0.3), new Vector3D(0, -1, -0.3), new Vector3D(0, 0, 1), 45); _Viewport3d.Children.Add(new DefaultLights()); _Viewport3d.Children.Add(new CoordinateSystemVisual3D() { ArrowLengths = 0.1 }); _ModelVisual3d = new ModelVisual3D(); _Viewport3d.Children.Add(_ModelVisual3d); _CameraPosition = new CoordinateSystemVisual3D(); _CameraPosition.ArrowLengths = 0.1; _Viewport3d.Children.Add(_CameraPosition); _TrajectoryKeyFrame = new LinesVisual3D(); _TrajectoryKeyFrame.Color = System.Windows.Media.Colors.Gold; _TrajectoryKeyFrame.Thickness = 3; _Viewport3d.Children.Add(_TrajectoryKeyFrame); _TrajectoryFrame = new LinesVisual3D(); _TrajectoryFrame.Color = System.Windows.Media.Colors.OrangeRed; _TrajectoryFrame.Thickness = 2; _Viewport3d.Children.Add(_TrajectoryFrame); }, null); }