Canguro.Controller.ItemTextBuilder.getLineDeformedInfo C# (CSharp) Метод

getLineDeformedInfo() приватный Метод

private getLineDeformedInfo ( LineElement l, float xPos ) : string
l Canguro.Model.LineElement
xPos float
Результат string
        private string getLineDeformedInfo(LineElement l, float xPos)
        {
            string angleRad = "Rad";
            string distance = units.UnitName(Canguro.Model.UnitSystem.Units.Distance);

            float[] deflection2;
            float[] deflection3;
            bool lastUndoEnabled = model.Undo.Enabled;
            bool lastUnitSystemEnabled = Model.UnitSystem.UnitSystemsManager.Instance.Enabled;

            try
            {
                if (model.IsLocked)
                    model.Undo.Enabled = false;

                Model.UnitSystem.UnitSystemsManager.Instance.Enabled = false;

                Analysis.LineDeformationCalculator calc = new Canguro.Analysis.LineDeformationCalculator();

                deflection2 = calc.GetCurvedPoint(l, model.Results.ActiveCase.AbstractCase, Canguro.Analysis.LineDeformationCalculator.DeformationAxis.Local2, xPos);
                deflection3 = calc.GetCurvedPoint(l, model.Results.ActiveCase.AbstractCase, Canguro.Analysis.LineDeformationCalculator.DeformationAxis.Local3, xPos);
            }
            finally
            {
                Model.UnitSystem.UnitSystemsManager.Instance.Enabled = lastUnitSystemEnabled;
                model.Undo.Enabled = lastUndoEnabled;
            }

            return "\n U2: " + units.FromInternational(deflection2[1], Canguro.Model.UnitSystem.Units.Distance).ToString("G3") + distance + ", U3: " + units.FromInternational(deflection3[1], Canguro.Model.UnitSystem.Units.Distance).ToString("G3") + distance +
                   "\n R3: " + units.FromInternational(deflection2[2], Canguro.Model.UnitSystem.Units.Angle).ToString("G3") + angleRad + ", R2: " + units.FromInternational(deflection3[2], Canguro.Model.UnitSystem.Units.Angle).ToString("G3") + angleRad;
        }