public void SetResultBeam(ResultBeam beam) { ExceptMembers = beam.ExceptMembers; ExceptSolids = beam.ExceptSolids; ExceptSurfaces = beam.ExceptSurfaces; IncludeMembers = beam.IncludeMembers; IncludeSolids = beam.IncludeSolids; IncludeSurfaces = beam.IncludeSurfaces; Integrate = beam.Integrate; if (beam.Parameters != null) { Parameters = beam.Parameters.ToList(); } }
/// </structural_toolkit_2015> /// <structural_toolkit_2015> /// <summary> /// Build document body for result document /// </summary> /// <param name="calculationParameters">Code calculation parameters</param> /// <param name="element">Revit element for which result document is built</param> /// <param name="document">Active Revit document</param> /// <returns>DocumentBody object</returns> public override DocumentBody BuildResultDocumentBody(Autodesk.Revit.DB.ExtensibleStorage.Entity calculationParameters, Element element, Autodesk.Revit.DB.Document document) { Autodesk.Revit.DB.CodeChecking.Storage.StorageService service = Autodesk.Revit.DB.CodeChecking.Storage.StorageService.GetStorageService(); Autodesk.Revit.DB.CodeChecking.Storage.StorageDocument storageDocument = service.GetStorageDocument(document); Guid activePackageId = storageDocument.CalculationParamsManager.CalculationParams.GetInputResultPackageId(Server.ID); Autodesk.Revit.DB.CodeChecking.Storage.ResultStatus status = storageDocument.ResultsManager.GetResultStatus(element, activePackageId, Server.ID); DocumentBody body = new DocumentBody(); if (!status.IsError()) { // create body object // get results schema for the current element string schemaName = calculationParameters.Schema.SchemaName; switch (schemaName) { case "ResultBeam": ResultLinearElement resultBeam = new ResultBeam(); resultBeam.SetProperties(calculationParameters); WriteResultsToNoteForLinearElements(body, resultBeam, document, ElementType.Beam); break; case "ResultColumn": ResultLinearElement resultColumn = new ResultColumn(); resultColumn.SetProperties(calculationParameters); WriteResultsToNoteForLinearElements(body, resultColumn, document, ElementType.Column); break; case "ResultFloor": ResultSurfaceElement resultFloor = new ResultSurfaceElement(); resultFloor.SetProperties(calculationParameters); WriteResultsToNoteForSurfaceElements(body, resultFloor, document, element, ElementType.Floor); break; case "ResultWall": ResultSurfaceElement resultWall = new ResultSurfaceElement(); resultWall.SetProperties(calculationParameters); WriteResultsToNoteForSurfaceElements(body, resultWall, document, element, ElementType.Wall); break; } } return(body); }