Пример #1
0
 protected void OnLoadDXF()
 {
     if (OnCheckSave())
     {
         string[] dxfExtensions = { "dxf", "DXF" };
         string   dxfPath       = EditorUtility.OpenFilePanelWithFilters("Load DXF", "", dxfExtensions);
         if (System.IO.File.Exists(dxfPath))
         {
             System.IO.FileStream stream = System.IO.File.OpenRead(dxfPath);
             Shapes = VectorShapeFilesDXF.ReadDXF(stream);
         }
     }
 }
Пример #2
0
    public static void OpenTestWindow()
    {
        VectorShapeEditor testWindow = EditorWindow.GetWindow(typeof(VectorShapeEditor)) as VectorShapeEditor;

        testWindow.titleContent.text = "Testing...";

        /*
         *
         * PointShape testPoint = new PointShape(-2, 0);
         * testPoint.colorOutline = Color.black;
         *
         * PolyShape testLine = new PolyShape(new Vector2(-1, 0), 0.4f, 4);
         * testLine.colorOutline = Color.black;
         * for (int i = 0; i < testLine.vertices.Length; i++)
         * {
         *      testLine.vertices[i].segmentCurves = true;
         * }
         * testLine.closed = false;
         *
         * CircleShape testCircle = new CircleShape(new Vector2(0, 0), 0.4f);
         * testCircle.colorOutline = Color.black;
         *
         * PolyShape testPoly3 = new PolyShape(new Vector2(1, 2), 0.45f, 3);
         * testPoly3.colorOutline = Color.black;
         * PolyShape testPoly4 = new PolyShape(new Vector2(1, 1), 0.50f, 4);
         * testPoly4.colorOutline = Color.black;
         * testPoly4.RotateAround(new Vector2(1, 1), 45);
         * PolyShape testPoly5 = new PolyShape(new Vector2(1, 0), 0.45f, 5);
         * testPoly5.colorOutline = Color.black;
         * PolyShape testPoly6 = new PolyShape(new Vector2(1, -1), 0.45f, 6);
         * testPoly6.colorOutline = Color.black;
         * testPoly6.RotateAround(new Vector2(1, -1), 30);
         *
         * PolyShape testShape = new PolyShape(new Vector2(2, 0), 0.4f, 4);
         * testShape.colorOutline = Color.black;
         * for (int i = 0; i < testShape.vertices.Length; i++)
         * {
         *      testShape.vertices[i].segmentCurves = true;
         * }
         *
         * testWindow.Shapes = new List<VectorShape>() { testPoint, testLine, testCircle, testPoly3, testPoly4, testPoly5, testPoly6, testShape };
         * testWindow.Focus();
         *
         * string tempPath = Application.dataPath + "/test.svg";
         * System.IO.Stream stream = new System.IO.FileStream(tempPath, System.IO.FileMode.OpenOrCreate);
         * VectorShapeSVGExporter exporter = new VectorShapeSVGExporter();
         * Rect bounds = new Rect(-5, -5, 10, 10);
         * exporter.Open(stream, bounds, VectorShapeSVGExporter.Unit.Centimeters);
         * exporter.AddShapeGroup(testWindow.Shapes, "TestGroup");
         * exporter.Close();
         * stream.Close();
         */

        //EllipseShape testEllipse = new EllipseShape(Vector2.zero, 1f, 2f, 22.5f);
        //testEllipse.colorOutline = Color.green;
        //PolyShape testRect = new PolyShape(testEllipse.ShapeBounds);
        //testWindow.Shapes = new List<VectorShape>() { testEllipse, testRect };

        //TextAsset asset = Resources.Load("Flipper_Left_SVG") as TextAsset;
        //testWindow.Shapes = VectorShapeFilesSVG.ReadSVG(new System.IO.StringReader(asset.text));

        //TextAsset asset = Resources.Load("InlineDrop_DXF") as TextAsset;
        //TextAsset asset = Resources.Load("Saucer_DXF") as TextAsset;
        //TextAsset asset = Resources.Load("LaneGuide_1500_DXF") as TextAsset;
        TextAsset asset = Resources.Load("Playfield_DXF") as TextAsset;

        //TextAsset asset = Resources.Load("ThreeTarget_DXF") as TextAsset;
        testWindow.Shapes = VectorShapeFilesDXF.ReadDXF(new System.IO.MemoryStream(asset.bytes));

        testWindow.Focus();
    }