Esempio n. 1
0
        void LoadExampleScheme()
        {
            //creating scheme from Model layer example
            PortModel port1 = new PortModel();

            port1.Position      = new Point(30, 100);
            port1.Size          = new Size(50, 40);
            port1.PortImpedance = 1;
            (AddElement as RelayCommand).Run(port1);

            LumpedElement inductor = new LumpedElement(ElementType.InductorInParallel, ElementType.InductorInParallel.ToString());

            inductor.Position = new Point(150, 100);
            inductor.Size     = new Size(50, 40);
            inductor.L        = 0.00001f;
            (AddElement as RelayCommand).Run(inductor);

            ConnectionModel conmod = new ConnectionModel(port1.Connectors[0], inductor.Connectors[0]);

            (AddConnection as RelayCommand).Run(conmod);

            LumpedElement capacitor = new LumpedElement(ElementType.CapacitorInParallel, ElementType.CapacitorInParallel.ToString());

            capacitor.Position = new Point(300, 100);
            capacitor.Size     = new Size(50, 40);
            capacitor.C        = 0.001f;
            (AddElement as RelayCommand).Run(capacitor);

            conmod = new ConnectionModel(inductor.Connectors[1], capacitor.Connectors[0]);
            (AddConnection as RelayCommand).Run(conmod);

            PortModel port2 = new PortModel();

            port2.Position      = new Point(420, 100);
            port2.Size          = new Size(50, 40);
            port2.PortImpedance = 1;
            (AddElement as RelayCommand).Run(port2);
            port2.Rotation = 2;

            conmod = new ConnectionModel(capacitor.Connectors[1], port2.Connectors[0]);
            (AddConnection as RelayCommand).Run(conmod);
        }
Esempio n. 2
0
        public static Element CreateElementByType(ElementType type, double width, double height, double top, double left)
        {
            Element toReturn;

            switch (type)
            {
            case ElementType.Element:
                toReturn = new Element();
                break;

            case ElementType.Port:
                toReturn = new PortModel();
                break;

            case ElementType.ResistorInSeries:
                toReturn = new LumpedElement(ElementType.ResistorInSeries, ElementType.ResistorInSeries.ToString());
                break;

            case ElementType.ResistorInParallel:
                toReturn = new LumpedElement(ElementType.ResistorInParallel, ElementType.ResistorInParallel.ToString());
                break;

            case ElementType.InductorInSeries:
                toReturn = new LumpedElement(ElementType.InductorInSeries, ElementType.InductorInSeries.ToString());
                break;

            case ElementType.InductorInParallel:
                toReturn = new LumpedElement(ElementType.InductorInParallel, ElementType.InductorInParallel.ToString());
                break;

            case ElementType.CapacitorInSeries:
                toReturn = new LumpedElement(ElementType.CapacitorInSeries, ElementType.CapacitorInSeries.ToString());
                break;

            case ElementType.CapacitorInParallel:
                toReturn = new LumpedElement(ElementType.CapacitorInParallel, ElementType.CapacitorInParallel.ToString());
                break;

            case ElementType.OpenCircuit:
                toReturn = new OpenCircuitModel();
                break;

            case ElementType.ShortCircuit:
                toReturn = new ShortCircuitModel();
                break;

            case ElementType.TransmissionLine:
                toReturn = new TransmissionLineModel();
                break;

            case ElementType.ImportedComponent:
                toReturn = new ImportedComponentModel();
                break;

            default:
                toReturn = new Element();
                break;
            }

            toReturn.Position = new Point(left, top);
            toReturn.Size     = new Size(width, height);

            return(toReturn);
        }