Esempio n. 1
0
        static void TestTet()
        {
            //new Validation.Case_03.Validator().Validate();

            var tet =
                new TetrahedronElement();

            //new Tetrahedral();

            tet.Nodes[0] = new Node(-1, -1, 0);
            tet.Nodes[1] = new Node(1, -1, 0);
            tet.Nodes[2] = new Node(1, 1, 0);
            tet.Nodes[3] = new Node(0, 0, 5);

            tet.Material = UniformIsotropicMaterial.CreateFromYoungPoisson(210e9, 0.3);
            //tet.E = 1000;tet.Nu = 0.3;

            var stf = tet.GetGlobalStifnessMatrix();

            var ctrl = new MatrixVisualizerControl();

            ctrl.VisualizeMatrix(stf);

            new Window()
            {
                Content = ctrl, Title = "epsi1on Matrix Visualizer!", Width = 24 * 50, Height = 24 * 50
            }
            .ShowDialog();
        }
Esempio n. 2
0
        // TODO: Add the following to your testing code to test the visualizer:
        //
        //    MatrixVisualizer.TestShowVisualizer(new SomeType());
        //
        /// <summary>
        /// Tests the visualizer by hosting it outside of the debugger.
        /// </summary>
        /// <param name="objectToVisualize">The object to display in the visualizer.</param>
        public static void TestShowVisualizer(object objectToVisualize)
        {
            //VisualizerDevelopmentHost visualizerHost = new VisualizerDevelopmentHost(objectToVisualize, typeof(MatrixVisualizer));
            //visualizerHost.ShowVisualizer();

            var ctrl = new MatrixVisualizerControl();

            var rows = (int)objectToVisualize.GetType().GetField("rowCount", BindingFlags.NonPublic | BindingFlags.Instance).GetValue(objectToVisualize);
            var cols = (int)objectToVisualize.GetType().GetField("columnCount", BindingFlags.NonPublic | BindingFlags.Instance).GetValue(objectToVisualize);
            var arr  = (double[])objectToVisualize.GetType().GetProperty("CoreArray", BindingFlags.Public | BindingFlags.Instance).GetValue(objectToVisualize, null);


            var mtx = new Matrix((int)rows, (int)cols);

            Array.Copy(arr as double[], mtx.CoreArray, mtx.CoreArray.Length);

            ctrl.VisualizeMatrix(mtx);
            new Window()
            {
                Content = ctrl, Title = "epsi1on Matrix Visualizer!", Width = cols * 150, Height = rows * 50
            }
            .ShowDialog();
        }