示例#1
0
        public override void Run(RenderControl render)
        {
            base.Run(render);

            // Let's iterate the scene
            using (FileStream fs = new FileStream("d:/myZip.zip", FileMode.Create))
            {
                using (ZipArchive zipArchive = new ZipArchive(fs, ZipArchiveMode.Create))
                {
                    for (var itr = render.GetScene().CreateIterator(); itr.More(); itr.Next())
                    {
                        var node = BrepSceneNode.Cast(itr.Current());
                        if (node == null)
                        {
                            continue;
                        }

                        ZipArchiveEntry entry = zipArchive.CreateEntry(String.Format("{0}.brep", node.GetUuid()));
                        using (StreamWriter writer = new StreamWriter(entry.Open(), Encoding.Default))
                        {
                            writer.Write(node.GetTopoShape().Write());
                        }
                    }
                }
            }
        }
示例#2
0
        public override void Run(RenderControl renderer)
        {
            var shape       = ShapeBuilder.MakeSphere(new GPnt(), 1);
            var bufferShape = new BufferShape(shape, null, null, 0.1);

            bufferShape.Build();

            float distance  = 3.0f;
            int   halfCount = 5;

            var scene = renderer.GetScene();

            for (int ii = -halfCount; ii < halfCount; ++ii)
            {
                for (int jj = -halfCount; jj < halfCount; ++jj)
                {
                    for (int kk = -halfCount; kk < halfCount; ++kk)
                    {
                        var node = new BrepSceneNode(bufferShape);
                        node.SetTransform(Matrix4.makeTranslation(ii * distance, jj * distance, kk * distance));
                        scene.AddNode(node);
                    }
                }
            }
            renderer.ZoomAll();

            Matrix4 m1 = new Matrix4(1);
            Matrix4 m2 = new Matrix4(1);
            Matrix4 x  = m1 * m2;
        }
示例#3
0
 private void deleteToolStripMenuItem_Click(object sender, EventArgs e)
 {
     if (mSelectedItm < 1)
     {
         return;
     }
     mRenderView.GetScene().RemoveNode(mSelectedItm);
     mRenderView.GetContext().GetSelection().Clear();
     mRenderView.RequestDraw(EnumUpdateFlags.Scene);
 }