Skip to content

BH.oM.Base.FragmentSet

Class structure

Implemented interfaces and base types

The FragmentSet is inheriting from the following base type(s) and implements the following interfaces:

Properties

Inherited properties

The following properties are inherited from the base class of the object

Name Type Description Quantity
Comparer IEqualityComparer<Type> - -
Item IFragment - -
Count int - -
Item IFragment - -

Derived properties

The following properties are defined as extension methods in one of the BHoM_Engines

Name Type Description Quantity Engine
AbsoluteMaxEnvelope BarForce - - Results_Engine
AbsoluteMaxEnvelopeByCase List<BarForce> - - Results_Engine
AbsoluteMaxEnvelopeByObject List<BarForce> - - Results_Engine
AbsoluteMaxForces List<BarForce> - - Results_Engine
Average Point - - Geometry_Engine
Bounds BoundingBox Queries the IElements BoundingBox. Acts on the elements geometrical definition of the IElement through the Geometry_Engine. - Spatial_Engine
Centroid Point Queries the combined centre of area enclosed by a set of ICurves with an optional set of openings.
To give a correct result all input curves must be planar, coplanar, closed and non-self-intersecting.
Opening curves should also be inside of outline curves.
- Geometry_Engine
ElementCurves List<ICurve> Queries the geometricly defining curves of the IElements geometries. - Spatial_Engine
ElementVertices List<Point> Returns the discontinuity points from the defining ICurves of the IElements. - Spatial_Engine
ExternalEdges List<IElement1D> Returns external edges from a collection of 2D elements. - Facade_Engine
FilterUniqueRevitElements List<IBHoMObject> Filters the given collection of BHoM objects to return only unique Revit elements based on their UniqueId. - Revit_Engine
GetDistinctEdges List<Edge> - - Lusas_Engine
GetDistinctPoints List<Point> - - Lusas_Engine
MaxBarRequiredArea List<BarRequiredArea> Returns a list of BarRequiredArea results, one for each component, that contain the maximum value for each required area and its concurrent required areas. - Results_Engine
MaxEnvelope BarForce Determines the maximum force in each component of the BarForce and returns a single BarForce object with the enveloped forces. - Results_Engine
MaxEnvelope MeshRequiredArea Determines the maximum required in each component of the MeshRequiredArea and returns a single MeshRequiredArea object with the enveloped required areas. - Results_Engine
MaxEnvelope BarRequiredArea Determines the maximum required in each component of the BarRequiredArea and returns a single BarRequiredArea object with the enveloped required areas. - Results_Engine
MaxEnvelopeByCase List<BarForce> Groups the BarForces by case and finds the maximum envelope returning a single enveloped BarForce for each case. The resulting BarForce will not contain concurrent forces. - Results_Engine
MaxEnvelopeByObject List<BarForce> Groups the BarForces by id and finds the maximum envelope returning a single enveloped BarForce for each id. The resulting BarForce will not contain concurrent forces. - Results_Engine
MaxForces List<BarForce> Returns a list of BarForces, one for each component, that contain the maximum value for each components and its concurrent forces. - Results_Engine
MaxMeshRequiredArea List<MeshRequiredArea> Returns a list of MeshRequiredAreas results, one for each component, that contain the maximum value for each required area and its concurrent required areas. - Results_Engine
MinBarRequiredArea List<BarRequiredArea> Returns a list of BarRequiredArea results, one for each component, that contain the minimum value for each required area and its concurrent required areas. - Results_Engine
MinEnvelope BarForce Determines the minimum force in each component of the BarForce and returns a single BarForce object with the enveloped forces. - Results_Engine
MinEnvelope BarRequiredArea Determines the minimum required in each component of the BarRequiredArea and returns a single BarRequiredArea object with the enveloped required areas. - Results_Engine
MinEnvelope MeshRequiredArea Determines the minimum required in each component of the MeshRequiredArea and returns a single MeshRequiredArea object with the enveloped required areas. - Results_Engine
MinEnvelopeByCase List<BarForce> Groups the BarForces by case and finds the minimum envelope returning a single enveloped BarForce for each case. The resulting BarForce will not contain concurrent forces. - Results_Engine
MinEnvelopeByObject List<BarForce> Groups the BarForces by id and finds the minimum envelope returning a single enveloped BarForce for each id. The resulting BarForce will not contain concurrent forces. - Results_Engine
MinForces List<BarForce> Returns a list of BarForces, one for each component, that contain the minimum value for each components and its concurrent forces. - Results_Engine
MinMeshRequiredArea List<MeshRequiredArea> Returns a list of MeshRequiredAreas results, one for each component, that contain the minimum value for each required area and its concurrent required areas. - Results_Engine
ObjectsByType Dictionary<Type, List<object>> - - Reflection_Engine
SumModuleDataValues Dictionary<Module, double> Gets a list of doubles corresponding to the sum of values for each property of the provided ILifeCycleAssessmentPhaseData, i.e. the first value will be the sum of A1 for all the provided ILifeCycleAssessmentPhaseDatas. - LifeCycleAssessment_Engine
TotalMaterialBreakdown List<MaterialResult> Gets total MaterialResults for all provided element results grouped by MaterialName, EPDName and Metric, and returns a single MaterialResult for each group containing the total evaluated. - LifeCycleAssessment_Engine
TotalMaterialBreakdown List<MaterialResult> Gets total MaterialResults from list of individual material results grouped by MaterialName, EPDName and Type, and returns a single MaterialResult for each group containing the total evaluated. - LifeCycleAssessment_Engine

Code and Schema

C# implementation

C#
public class FragmentSet : System.Collections.ObjectModel.KeyedCollection<System.Type, BH.oM.Base.IFragment>,
System.Collections.ObjectModel.Collection<BH.oM.Base.IFragment>,
System.Collections.Generic.IList<BH.oM.Base.IFragment>,
System.Collections.Generic.ICollection<BH.oM.Base.IFragment>,
System.Collections.Generic.IEnumerable<BH.oM.Base.IFragment>,
System.Collections.IEnumerable,
System.Collections.IList,
System.Collections.ICollection,
System.Collections.Generic.IReadOnlyList<BH.oM.Base.IFragment>,
System.Collections.Generic.IReadOnlyCollection<BH.oM.Base.IFragment>,
BH.oM.Base.IObject

Assembly: BHoM.dll

The C# class definition is available on github:

All history and changes of the class can be found by inspection the history.

JSON Schema implementation

The object is defined as a JSON schema. You can validate a JSON instance against this schema by reference. To do this, use the schema reference below in a validator like this one.

JSON Schema
{
 "$ref" : "https://raw.githubusercontent.com/BHoM/BHoM_JSONSchema/develop/BHoM/FragmentSet.json"
}

The JSON Schema is available on github here: