/// <summary> /// Функция строит модель /// </summary> public void Build(HouseProperties houseProperties) { var windowsRow = _houseProperties.GetParameter(ParameterType.WindowsRow).Value; var houseLength = _houseProperties.GetParameter(ParameterType.HouseLength).Value; var floorsCount = _houseProperties.GetParameter(ParameterType.FloorsCount).Value; var windowHeight = _houseProperties.GetParameter(ParameterType.WindowHeight).Value; var windowWidth = _houseProperties.GetParameter(ParameterType.WindowWidth).Value; var windowDistanceHor = _houseProperties.GetParameter(ParameterType.WindowDistanceHor).Value; var windowDistanceVer = _houseProperties.GetParameter(ParameterType.WindowDistanceVer).Value; var balconHeight = _houseProperties.GetParameter(ParameterType.BalconHeight).Value; var balconWidth = _houseProperties.GetParameter(ParameterType.BalconWidth).Value; var balconLength = _houseProperties.GetParameter(ParameterType.BalconLength).Value; var doorHeight = _houseProperties.GetParameter(ParameterType.DoorHeight).Value; var doorWidth = _houseProperties.GetParameter(ParameterType.DoorWidth).Value; var peakLength = _houseProperties.GetParameter(ParameterType.PeakLength).Value; double houseHeight; double houseWidth; double balconRow; double doorDistance = 20.0; double peakHeight = 2.0; double lowDistance = 5.0; houseHeight = (windowHeight + windowDistanceVer) * floorsCount + doorHeight + doorDistance + peakHeight + lowDistance; houseWidth = (windowWidth + windowDistanceHor) * windowsRow + windowDistanceHor / 2; if (windowsRow % 3 == 2) { balconRow = Convert.ToInt32(windowsRow / 3) - 1; } else { balconRow = Convert.ToInt32(windowsRow / 3); } ArrayList houseBuildingParameters = new ArrayList(); houseBuildingParameters.Add(houseWidth); houseBuildingParameters.Add(houseLength); houseBuildingParameters.Add(floorsCount); houseBuildingParameters.Add(windowHeight); houseBuildingParameters.Add(windowWidth); houseBuildingParameters.Add(windowDistanceHor); houseBuildingParameters.Add(windowDistanceVer); houseBuildingParameters.Add(balconHeight); houseBuildingParameters.Add(balconWidth); houseBuildingParameters.Add(balconLength); houseBuildingParameters.Add(doorHeight); houseBuildingParameters.Add(doorWidth); houseBuildingParameters.Add(peakLength); houseBuildingParameters.Add(windowsRow); houseBuildingParameters.Add(houseHeight); houseBuildingParameters.Add(doorDistance); houseBuildingParameters.Add(peakHeight); houseBuildingParameters.Add(lowDistance); houseBuildingParameters.Add(balconRow); if (houseProperties == null) { throw new AccessingNullException(); } BuildHouse(houseBuildingParameters); BuildWindows(houseBuildingParameters); BuildBalcons(houseBuildingParameters); BuildRoof(houseBuildingParameters); BuildPeak(houseBuildingParameters); BuildDoor(houseBuildingParameters); }
//TODO: /// <summary> /// Инициализация параетров в полях формы /// </summary> public void InitParameters() { WindowsRow.Parameter = _houseProperties.GetParameter(ParameterType.WindowsRow); HouseLength.Parameter = _houseProperties.GetParameter(ParameterType.HouseLength); FloorsCount.Parameter = _houseProperties.GetParameter(ParameterType.FloorsCount); WindowHeight.Parameter = _houseProperties.GetParameter(ParameterType.WindowHeight); WindowWidth.Parameter = _houseProperties.GetParameter(ParameterType.WindowWidth); WindowDistanceHor.Parameter = _houseProperties.GetParameter(ParameterType.WindowDistanceHor); WindowDistanceVer.Parameter = _houseProperties.GetParameter(ParameterType.WindowDistanceVer); BalconHeight.Parameter = _houseProperties.GetParameter(ParameterType.BalconHeight); BalconWidth.Parameter = _houseProperties.GetParameter(ParameterType.BalconWidth); BalconLength.Parameter = _houseProperties.GetParameter(ParameterType.BalconLength); DoorWidth.Parameter = _houseProperties.GetParameter(ParameterType.DoorWidth); DoorHeight.Parameter = _houseProperties.GetParameter(ParameterType.DoorHeight); PeakLength.Parameter = _houseProperties.GetParameter(ParameterType.PeakLength); ArcHeight.Parameter = _houseProperties.GetParameter(ParameterType.ArcHeight); ArcWidth.Parameter = _houseProperties.GetParameter(ParameterType.ArcWidth); StartPoint.Parameter = _houseProperties.GetParameter(ParameterType.StartPoint); }