Exemplo n.º 1
0
        /// <summary>
        /// Определение распределенной арматуры
        /// </summary>
        /// <param name="length">Длина стержня</param>
        /// <param name="widthRun">Ширина распределения</param>
        /// <param name="step">Шаг</param>
        /// <param name="propDiam">Парам диаметра</param>
        /// <param name="propPos">Параметр аозиции</param>
        /// <param name="rows">Рядов стержней</param>
        /// <param name="friendlyName">Пользовательское имя</param>
        protected Bar defineBarDiv(int length, int widthRun, int step, string propDiam, string propPos,
                                   int rows, string friendlyName)
        {
            int diam = Block.GetPropValue <int>(propDiam);

            if (diam == 0)
            {
                return(null);
            }
            string pos    = Block.GetPropValue <string>(propPos);
            var    armDiv = new Bar(diam, length, widthRun, step, rows, pos, this, friendlyName);

            armDiv.Calc();
            return(armDiv);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Определение отдельных стержней
        /// </summary>
        /// <param name="countArm">Кол-во стержней</param>
        /// <param name="length">Длина стержня</param>
        /// <param name="propDiam">Параметр диаметра стержня</param>
        /// <param name="propPos">Параметр позиции стержня</param>
        /// <param name="friendName">Человеческое имя стержня для описания ошибок - Горизонтальные стержни, Хомут, и т.п.</param>
        /// <returns></returns>
        protected Bar defineBar(int countArm, int length, string propDiam, string propPos, string friendName)
        {
            if (countArm == 0 || length == 0)
            {
                return(null);
            }
            int diam = Block.GetPropValue <int>(propDiam);

            if (diam == 0)
            {
                return(null);
            }
            string pos = Block.GetPropValue <string>(propPos);
            var    arm = new Bar(diam, length, countArm, pos, this, friendName);

            arm.Calc();
            return(arm);
        }
Exemplo n.º 3
0
        private void defineFields()
        {
            // определение наличия торцов
            defineEnds();

            ApertureWidth       = Block.GetPropValue <int>(PropNameApertureWidth);
            ApertureHeight      = Block.GetPropValue <int>(PropNameApertureHeight);
            ApertureHeightUnder = Block.GetPropValue <int>(PropNameApertureHeightAbove, isRequired: false);
            Height    = Block.GetPropValue <int>(PropNameHeight);
            Thickness = Block.GetPropValue <int>(PropNameThickness);
            Outline   = Block.GetPropValue <int>(PropNameOutline);

            // Бетон
            defineConcrete();

            // Определние вертикальной арматуры усиления
            defineAddVerticArm();

            // Определние горизонтальной арматуры усиления
            defineAddHorArm();

            // Определение стержней над проемом - Скоба, Хомут, Гор погонная, Вертик погонная если надо
            defineAbove();
            defineUnder();

            // Скобы
            defineSideBrackets();

            // Диагональные стержни
            int    diamDiag       = 10;
            int    lapLenDiagonal = Armature.GetLapLength(diamDiag, Concrete);
            string posDiag        = Block.GetPropValue <string>(PropNameArmDiagonalPos);
            int    countDiagArm   = 4 + (hasBottomArm ? 4 : 0);

            BarDiagonal = new Bar(diamDiag, lapLenDiagonal * 2, countDiagArm, posDiag, this, "Диагональные стержни проема");
            BarDiagonal.Calc();
        }