Example #1
0
        private static MeshGeometry3D GetMesh(MeshGeneratorBase mesh)
        {
            MeshGeometry3D geometry = mesh.Geometry;

            geometry.Freeze();
            return(geometry);
        }
Example #2
0
        public void AddToScene(Visual3DCollection elementGroup)
        {
            //pointDrawer.ElementGroup = elementGroup;

            meshGeneratorBase = new Petzold.Media3D.SphereMesh();
            sphere            = meshGeneratorBase.Geometry;
            //Color materialColor = new DiffuseMaterial(new SolidColorBrush(value));
            material = new DiffuseMaterial(new SolidColorBrush(Colors.AliceBlue));

            //foreach (IPosition3D position in position3DSet)
            //{
            //    //pointDrawer.Add(position.GetX(),
            //    //    position.GetY(),
            //    //    position.GetZ());

            //    GeometryModel3D geometryModel3D = new GeometryModel3D(sphere, material);
            //    Transform3DGroup transform3DGroup = new Transform3DGroup();
            //    transform3DGroup.Children.Add(new ScaleTransform3D(0.5, 0.5, 0.5));
            //    TranslateTransform3D translateTransform3D = new TranslateTransform3D(
            //        position.GetX(), position.GetY(), position.GetZ());
            //    transform3DGroup.Children.Add(translateTransform3D);
            //    geometryModel3D.Transform = transform3DGroup;
            //    modelGroup.Children.Add(geometryModel3D);
            //}

            //ModelVisual3D modelVisual3D = new ModelVisual3D();
            //modelVisual3D.Content = modelGroup;
            //elementGroup.Add(modelVisual3D);

            MeshGeometry3D positionSetMesh = new MeshGeometry3D();
            MeshGeometry3D sphereMesh      = new Sphere().Geometry;

            foreach (IPosition3D position in position3DSet)
            {
                MeshGeometry3D mesh = WPF3DHelper.Translate(sphereMesh, new Vector3D(
                                                                position.GetX(), position.GetY(), position.GetZ()));

                WPF3DHelper.CombineTo(positionSetMesh, mesh);
            }

            GeometryModel3D positionSetModel = new GeometryModel3D(positionSetMesh, material);

            ModelVisual3D modelVisual3D = new ModelVisual3D();

            modelVisual3D.Content = positionSetModel;
            elementGroup.Add(modelVisual3D);
        }
Example #3
0
 public PointDrawer()
 {
     meshGeneratorBase = new Petzold.Media3D.SphereMesh();
     sphere            = meshGeneratorBase.Geometry;
     material          = new DiffuseMaterial(new SolidColorBrush(materialColor));
 }