|
FactoryModelAssembleModel Method
|
Assemble a model out of its components
Namespace:
KarambaCommon.Factories
Assembly:
KarambaCommon (in KarambaCommon.dll) Version: 1.0.0.0 (1.0.0.0)
Syntaxpublic virtual Model AssembleModel(
IReadOnlyList<BuilderElement> elems,
IReadOnlyList<Support> supports,
List<Load> loads,
out string info,
out double mass,
out Point3 cog,
out string msg,
out bool runtimeWarning,
IReadOnlyList<Joint> joints = null,
IReadOnlyList<Point3> points = null,
IReadOnlyList<ElemSet> beamsets = null,
double limitDist = 0.005,
IReadOnlyList<CroSec> crosecs = null,
IReadOnlyList<FemMaterial> materials = null
)
Public Overridable Function AssembleModel (
elems As IReadOnlyList(Of BuilderElement),
supports As IReadOnlyList(Of Support),
loads As List(Of Load),
<OutAttribute> ByRef info As String,
<OutAttribute> ByRef mass As Double,
<OutAttribute> ByRef cog As Point3,
<OutAttribute> ByRef msg As String,
<OutAttribute> ByRef runtimeWarning As Boolean,
Optional joints As IReadOnlyList(Of Joint) = Nothing,
Optional points As IReadOnlyList(Of Point3) = Nothing,
Optional beamsets As IReadOnlyList(Of ElemSet) = Nothing,
Optional limitDist As Double = 0.005,
Optional crosecs As IReadOnlyList(Of CroSec) = Nothing,
Optional materials As IReadOnlyList(Of FemMaterial) = Nothing
) As Model
public:
virtual Model^ AssembleModel(
IReadOnlyList<BuilderElement^>^ elems,
IReadOnlyList<Support^>^ supports,
List<Load^>^ loads,
[OutAttribute] String^% info,
[OutAttribute] double% mass,
[OutAttribute] Point3% cog,
[OutAttribute] String^% msg,
[OutAttribute] bool% runtimeWarning,
IReadOnlyList<Joint^>^ joints = nullptr,
IReadOnlyList<Point3>^ points = nullptr,
IReadOnlyList<ElemSet^>^ beamsets = nullptr,
double limitDist = 0.005,
IReadOnlyList<CroSec^>^ crosecs = nullptr,
IReadOnlyList<FemMaterial^>^ materials = nullptr
)
abstract AssembleModel :
elems : IReadOnlyList<BuilderElement> *
supports : IReadOnlyList<Support> *
loads : List<Load> *
info : string byref *
mass : float byref *
cog : Point3 byref *
msg : string byref *
runtimeWarning : bool byref *
?joints : IReadOnlyList<Joint> *
?points : IReadOnlyList<Point3> *
?beamsets : IReadOnlyList<ElemSet> *
?limitDist : float *
?crosecs : IReadOnlyList<CroSec> *
?materials : IReadOnlyList<FemMaterial>
(* Defaults:
let _joints = defaultArg joints null
let _points = defaultArg points null
let _beamsets = defaultArg beamsets null
let _limitDist = defaultArg limitDist 0.005
let _crosecs = defaultArg crosecs null
let _materials = defaultArg materials null
*)
-> Model
override AssembleModel :
elems : IReadOnlyList<BuilderElement> *
supports : IReadOnlyList<Support> *
loads : List<Load> *
info : string byref *
mass : float byref *
cog : Point3 byref *
msg : string byref *
runtimeWarning : bool byref *
?joints : IReadOnlyList<Joint> *
?points : IReadOnlyList<Point3> *
?beamsets : IReadOnlyList<ElemSet> *
?limitDist : float *
?crosecs : IReadOnlyList<CroSec> *
?materials : IReadOnlyList<FemMaterial>
(* Defaults:
let _joints = defaultArg joints null
let _points = defaultArg points null
let _beamsets = defaultArg beamsets null
let _limitDist = defaultArg limitDist 0.005
let _crosecs = defaultArg crosecs null
let _materials = defaultArg materials null
*)
-> Model Parameters
- elems
- Type: System.Collections.GenericIReadOnlyListBuilderElement
Builders of elements to be added - supports
- Type: System.Collections.GenericIReadOnlyListSupport
Supports to be added - loads
- Type: System.Collections.GenericListLoad
Loads to be added - info
- Type: SystemString
Information regarding the assembly-process - mass
- Type: SystemDouble
Mass of the assembled model in kg - cog
- Type: Karamba.GeometryPoint3
Center of gravity of the assembled model - msg
- Type: SystemString
Error messages of warnings regarding the assembly process - runtimeWarning
- Type: SystemBoolean
'true' if there is a warning. - joints (Optional)
- Type: System.Collections.GenericIReadOnlyListJoint
'Joint definitions for the model. - points (Optional)
- Type: System.Collections.GenericIReadOnlyListPoint3
Input nodes of the model that may be connected by elements. May contain duplicate points.
The elimination of duplicate nodes closer than 'limitDist' does not apply to them. In case of duplicate points,
elements are attached to them alternating: first element to first duplicate point, second element to second
duplicate point, third element to first duplicate point in case there are only two points in one position.
The same mechanism applies to point-loads and supports." - beamsets (Optional)
- Type: System.Collections.GenericIReadOnlyListElemSet
Input sets of beams - limitDist (Optional)
- Type: SystemDouble
Limit distance for coincident points. The default is 0.005 meter - crosecs (Optional)
- Type: System.Collections.GenericIReadOnlyListCroSec
List of cross section agents - materials (Optional)
- Type: System.Collections.GenericIReadOnlyListFemMaterial
List of material agents
Return Value
Type:
ModelThe assembled model
See Also