Example #1
0
    public override void Execute(Editor arg)
    {
        Wire     newWire   = new Wire();
        WireNode startNode = newWire.CreateIOWireNode(this.startIO);
        WireNode endNode   = newWire.CreateIOWireNode(this.endIO);

        if (IsCornerNeeded())
        {
            WireNode cornerNode = newWire.CreateJunctionWireNode(this.corner);
            newWire.AddNode(cornerNode);
            newWire.ConnectNodes(startNode, newWire, cornerNode);
            newWire.ConnectNodes(cornerNode, newWire, endNode);
        }
        else
        {
            newWire.ConnectNodes(startNode, newWire, endNode);
        }

        arg.Simulator.AddWire(newWire);
    }
    public override void Execute(Editor arg)
    {
        Wire wire = new Wire();

        WireNode startNode = wire.CreateIOWireNode(this.startIO);
        WireNode endNode   = wire.CreateJunctionWireNode(this.endPos);

        if (IsCornerNeeded())
        {
            // INCLUDE CORNER
            WireNode cornerNode = wire.CreateJunctionWireNode(this.corner);
            wire.AddNode(cornerNode);
            wire.ConnectNodes(startNode, wire, cornerNode);
            wire.ConnectNodes(cornerNode, wire, endNode);
        }
        else
        {
            // NO CORNER
            wire.ConnectNodes(startNode, wire, endNode);
        }

        arg.Simulator.AddWire(wire);
    }