/// <summary> /// This is the method that actually does the work. /// </summary> /// <param name="dataAccess"> /// The DA object is used to retrieve from inputs and store in outputs. /// </param> protected override void SolveInstance(IGH_DataAccess dataAccess) { dataAccess.SetData(1, false); bool run = false; if (!dataAccess.GetData(3, ref run)) { AddRuntimeMessage(GH_RuntimeMessageLevel.Error, "Invalid data"); return; } if (!run) { return; } Analytical.AnalyticalModel analyticalModel = null; if (!dataAccess.GetData(0, ref analyticalModel) || analyticalModel == null) { AddRuntimeMessage(GH_RuntimeMessageLevel.Error, "Invalid data"); return; } string path = null; if (!dataAccess.GetData(1, ref path) || string.IsNullOrWhiteSpace(path)) { AddRuntimeMessage(GH_RuntimeMessageLevel.Error, "Invalid data"); return; } double tolerance = 0.00001; if (!dataAccess.GetData(2, ref tolerance) || double.IsNaN(tolerance)) { AddRuntimeMessage(GH_RuntimeMessageLevel.Error, "Invalid data"); return; } gbXML gbXML = analyticalModel.TogbXML(Core.Tolerance.MacroDistance, tolerance); if (gbXML == null) { return; } bool result = Core.gbXML.Create.gbXML(gbXML, path); dataAccess.SetData(0, Core.gbXML.Convert.ToString(gbXML)); dataAccess.SetData(1, result); }
/// <summary> /// This is the method that actually does the work. /// </summary> /// <param name="dataAccess"> /// The DA object is used to retrieve from inputs and store in outputs. /// </param> protected override void SolveInstance(IGH_DataAccess dataAccess) { dataAccess.SetData(1, false); bool run = false; if (!dataAccess.GetData(2, ref run)) { AddRuntimeMessage(GH_RuntimeMessageLevel.Error, "Invalid data"); return; } if (!run) { return; } string path = null; if (!dataAccess.GetData(0, ref path) || string.IsNullOrWhiteSpace(path)) { AddRuntimeMessage(GH_RuntimeMessageLevel.Error, "Invalid data"); return; } double tolerance = 0.00001; if (!dataAccess.GetData(1, ref tolerance) || double.IsNaN(tolerance)) { AddRuntimeMessage(GH_RuntimeMessageLevel.Error, "Invalid data"); return; } Analytical.AnalyticalModel analyticalModel = Analytical.gbXML.Create.AnalyticalModel(path, tolerance); dataAccess.SetData(0, new GooAnalyticalModel(analyticalModel)); dataAccess.SetData(1, true); //AddRuntimeMessage(GH_RuntimeMessageLevel.Error, "Cannot split segments"); }