/// <summary> /// Creates and draws a cylinder that is defined with the given parameters. /// </summary> /// <param name="document">The active document</param> /// <param name="top">The top vertex coordinates of the cylinder</param> /// <param name="bottom">The bottom vertex coordinates of the cylinder</param> /// <param name="radius">The radius of the cylinder</param> public void DrawCylinder(Document document, XYZ top, XYZ bottom, double radius) { string cylinder_name = "Cylinder" + m_direct_cylinder_instance_count++; DirectCylinder cylinder = new DirectCylinder(document, cylinder_name, top, bottom, radius, S_CYLINDER_COLOR, 50); m_direct_shape_list.Add(cylinder); }
private void Write(DirectCylinder dc) { string content = $"{dc.Name}\n" + $" .top-center\n" + $" .X = {dc.Top.X.ToString("##0.####")}\n" + $" .Y = {dc.Top.Y.ToString("##0.####")}\n" + $" .Z = {dc.Top.Z.ToString("##0.####")}\n" + $" .bottom-center\n" + $" .X = {dc.Bottom.X.ToString("##0.####")}\n" + $" .Y = {dc.Bottom.Y.ToString("##0.####")}\n" + $" .Z = {dc.Bottom.Z.ToString("##0.####")}\n" + $" .center\n" + $" .X = {dc.Center.X.ToString("##0.####")}\n" + $" .Y = {dc.Center.Y.ToString("##0.####")}\n" + $" .Z = {dc.Center.Z.ToString("##0.####")}\n" + $" .radius = {XYZUnitConversionData.FormatLength(dc.Radius, FindSurfaceRevitPlugin.MeasurementUnit, "##0.####")}\n" + $" .length = {XYZUnitConversionData.FormatLength(dc.Length, FindSurfaceRevitPlugin.MeasurementUnit, "##0.####")}\n" + $" .lateral-area = {XYZUnitConversionData.FormatArea(dc.LateralArea, FindSurfaceRevitPlugin.MeasurementUnit, "##0.####")}\n" + $" .surface-area = {XYZUnitConversionData.FormatArea(dc.SurfaceArea, FindSurfaceRevitPlugin.MeasurementUnit, "##0.####")}\n" + $" .volume = {XYZUnitConversionData.FormatVolume(dc.Volume, FindSurfaceRevitPlugin.MeasurementUnit, "##0.####")}\n\n"; this.richTextBoxInspectResult.AppendText(content); }