protected override GH_GetterResult Prompt_Singular(ref IGH_Goo value) { var bPlane = Plane.WorldXY; MainMenu: var go = new Rhino.Input.Custom.GetString(); go.SetCommandPrompt("Set default robot."); go.AcceptNothing(true); go.AddOption("Default"); go.AddOption("IRB_120"); go.AddOption("IRB_6620"); go.AddOption("SetBasePlane", $"O({bPlane.OriginX.ToString("0.00")},{bPlane.OriginY.ToString("0.00")},{bPlane.OriginZ.ToString("0.00")}) " + $"Z({bPlane.ZAxis.X.ToString("0.00")},{bPlane.ZAxis.Y.ToString("0.00")}, {bPlane.ZAxis.Z.ToString("0.00")})"); switch (go.Get()) { case Rhino.Input.GetResult.Option: if (go.Option().EnglishName == "Default") { var rob = Abb6DOFRobot.Default; rob.ChangeBasePlane(bPlane); value = rob; } if (go.Option().EnglishName == "IRB_120") { var rob = Abb6DOFRobot.IRB120; rob.ChangeBasePlane(bPlane); value = rob; } if (go.Option().EnglishName == "IRB_6620") { var rob = Abb6DOFRobot.IRB6620; rob.ChangeBasePlane(bPlane); value = rob; } if (go.Option().EnglishName == "SetBasePlane") { GetBPlane(out bPlane); goto MainMenu; } return(GH_GetterResult.success); case Rhino.Input.GetResult.Nothing: return(GH_GetterResult.cancel); default: return(GH_GetterResult.cancel); } }