Exemplo n.º 1
0
        private void processInsertEdgeCommand(Command command)
        {
            var parameters         = command.GetParameters();
            var commandClientID    = command.__getClientID();
            var verticesDictionary = graph_.__getVerticesDictionary();

            var fromVertex = verticesDictionary.Find(FullID.FromString(parameters[0]));
            var endVertex  = verticesDictionary.Find(FullID.FromString(parameters[1]));

            if (fromVertex == null || endVertex == null)
            {
                return;
            }

            if (fromVertex.IsConnectedTo(endVertex))
            {
                return;
            }

            var edgeFullID = new FullID(commandClientID, int.Parse(parameters[2]));

            Edge edge = fromVertex.__connectTo(endVertex, edgeFullID);

            if (graph_.IsLoading() && commandClientID == graph_.__getClientID())
            {
                graph_.__setLastCreatedEdgeID(edgeFullID.GetIDinCreator());
            }

            graph_.__raiseEdgeAddedEvent(edge);
        }
Exemplo n.º 2
0
        private void processInsertVertexCommand(Command command)
        {
            var parameters      = command.GetParameters();
            var commandClientID = command.__getClientID();


            var position = new Point3D(double.Parse(parameters[1]),
                                       double.Parse(parameters[2]), double.Parse(parameters[3]));
            var    vertexFullID   = new FullID(commandClientID, int.Parse(parameters[0]));
            Vertex insertedVertex = graph_.__insertVertex(position, vertexFullID);

            if (graph_.IsLoading() && commandClientID == graph_.__getClientID())
            {
                graph_.__setLastCreatedVertexID(vertexFullID.GetIDinCreator());
            }

            graph_.__raiseVertexAddedEvent(insertedVertex);
        }