/// <summary> /// Adds the scope to decision. /// Default scope size is 160 by 160 /// </summary> /// <param name="label">The label.</param> /// <param name="positionX">The center X position of the scope.</param> /// <param name="positionY">The center Y position of the scope.</param> /// <param name="decisionNode">The decision node.</param> /// <param name="exitDecisionNode">The exit decision node.</param> /// <param name="experiment">The experiment.</param> public static void AddScopeToDecision(string label, double positionX, double positionY, ExperimentDecisionNode decisionNode, ExitDecisionNode exitDecisionNode, IEditableExperiment experiment, double width = 160, double height = 160) { ScopeNode scopeNode = GenerateScopeNode(label, experiment, positionX, positionY, width, height); //set decision and exit decision references //(also note that ExperimentFactory also sets it when deseralizing experiment) scopeNode.DecisionNode = decisionNode; scopeNode.ExitDecisionNode = exitDecisionNode; experiment.AddVertex(scopeNode); experiment.AddFixedConnection(decisionNode, scopeNode, true); experiment.AddFixedConnection(scopeNode, exitDecisionNode, true); experiment.SetLogLevelSettings(scopeNode); }
private static void GenerateScopesAndExit(IEditableExperiment experiment, SerializedVertexData data, ExperimentDecisionNode decisionNode) { ExitDecisionNode exitDecisionNode = GenerateExitDecisionNode(data.X, data.Y + 240); experiment.AddVertex(exitDecisionNode); //add invisible fixed connection between decision and exit - so that if scope can be skipped upon condition experiment.AddFixedConnection(decisionNode, exitDecisionNode, true); //set the log settings of all new nodes experiment.SetLogLevelSettings(decisionNode); experiment.SetLogLevelSettings(exitDecisionNode); AddScopeToDecision("Scope 1", data.X - 90, data.Y + 120, decisionNode, exitDecisionNode, experiment); AddScopeToDecision("Scope 2", data.X + 90, data.Y + 120, decisionNode, exitDecisionNode, experiment); }
/// <summary> /// Adds the fixed connection. /// </summary> /// <param name="fromNode">From node.</param> /// <param name="toNode">To node.</param> /// <param name="isVisible">if set to <c>true</c> edge is visible.</param> /// <returns> /// the added connection /// </returns> public ExperimentNodeConnection AddFixedConnection(ExperimentNode fromNode, ExperimentNode toNode, bool isVisible) { return(m_experiment.AddFixedConnection(fromNode, toNode, isVisible)); }
/// <summary> /// Adds the scope to decision. /// Default scope size is 160 by 160 /// </summary> /// <param name="label">The label.</param> /// <param name="positionX">The center X position of the scope.</param> /// <param name="positionY">The center Y position of the scope.</param> /// <param name="decisionNode">The decision node.</param> /// <param name="exitDecisionNode">The exit decision node.</param> /// <param name="experiment">The experiment.</param> public static void AddScopeToDecision(string label, double positionX, double positionY, ExperimentDecisionNode decisionNode, ExitDecisionNode exitDecisionNode, IEditableExperiment experiment, double width = 160, double height = 160) { ScopeNode scopeNode = GenerateScopeNode(label, experiment, positionX, positionY, width, height); //set decision and exit decision references //(also note that ExperimentFactory also sets it when deseralizing experiment) scopeNode.DecisionNode = decisionNode; scopeNode.ExitDecisionNode = exitDecisionNode; experiment.AddVertex(scopeNode); experiment.AddFixedConnection(decisionNode, scopeNode, true); experiment.AddFixedConnection(scopeNode, exitDecisionNode, true); experiment.SetLogLevelSettings(scopeNode); }
private static void GenerateScopesAndExit(IEditableExperiment experiment, SerializedVertexData data, ExperimentDecisionNode decisionNode) { ExitDecisionNode exitDecisionNode = GenerateExitDecisionNode(data.X, data.Y + 240); experiment.AddVertex(exitDecisionNode); //add invisible fixed connection between decision and exit - so that if scope can be skipped upon condition experiment.AddFixedConnection(decisionNode, exitDecisionNode, true); //set the log settings of all new nodes experiment.SetLogLevelSettings(decisionNode); experiment.SetLogLevelSettings(exitDecisionNode); AddScopeToDecision("Scope 1", data.X - 90, data.Y + 120, decisionNode, exitDecisionNode, experiment); AddScopeToDecision("Scope 2", data.X + 90, data.Y + 120, decisionNode, exitDecisionNode, experiment); }