/// <summary> /// create pipe /// </summary> /// <param name="crystParams">parameters of the crystal</param> /// <param name="inputFile">name of file with input crystal</param> /// <param name="axis">axis and direction of rotation</param> public void CreatePipe(CrystalParameters crystParams, string inputFile, string axis) { CylinderParameters pipeParams = GetPipeParametres(); if (Equals(pipeParams, null)) { ShowError("Invalid values of pipe parametres."); return; } try { Program.CreatePipe(crystParams, pipeParams, inputFile, axis); ActionWasSuccessfull("Pipe was created."); } catch { ShowError("Invalid input file with crystal atom's coordinates."); } }
/// <summary> /// Load pipe parameters from input textboxes and verify they are correct /// </summary> /// <returns>pipe parameters</returns> public CylinderParameters GetPipeParametres() { double depth = Convert.ToDouble(textBoxLength.Text); if (areParametersPhysical) { double innerSize = Convert.ToDouble(textBoxInnerDiameter.Text, CultureInfo.InvariantCulture); double outerSize = Convert.ToDouble(textBoxOuterDiameter.Text, CultureInfo.InvariantCulture); double circ = ConvertorOfParametres.CircumferenceOfTheCircle(innerSize, outerSize); //count circumference of a circle double height = (outerSize - innerSize) / 2; return(new CylinderParameters(depth, circ, height)); } double circumference = Convert.ToDouble(textBoxInnerDiameter.Text, CultureInfo.InvariantCulture); double wallWidth1 = Convert.ToDouble(textBoxOuterDiameter.Text, CultureInfo.InvariantCulture); CylinderParameters pp = new CylinderParameters(depth, circumference, wallWidth1); if (!Validator.ValidPipe(pp)) { return(null); } return(pp); }