Version 0.11.0 |
[This is preliminary documentation and is subject to change.]
This version has been released on 2020-05-11.
Here is the list of objects that have been added in this release.
LocalCoordinateSystem: Lists supported local coordinate systems that can be defined on ModelInformation
IHasParentId: Marker interface for objects that have a ParentId property.
ICoordinateExtensions: Added 2 new extension methods for ICoordinate implementations.
ICoordinate.CrossProduct(ICoordinate other) will calculate the cross product between 2 coordinates. This treats a coordinate as a 3D vector
ICoordinate.Magnitude() will calculate the magnitude (= length) of a coordinate in meters. This treats a coordinate as a 3D vector and the size of the vector is from origin (0,0,0) to the coordinate.
Here are the objects that have been changed in this release.
StructuralCurveMember: Implemented IHasParentId, added property ParentId.
StructuralCurveMemberRib: Implemented IHasParentId, added property ParentId.
StructuralSurfaceMember: Implemented IHasParentId, added property ParentId.
StructuralSurfaceMember: Added property Area. This property is not (yet) automatically calculated, but you can already use the new extension method CalculateArea to calculate it. Please note that any openings should be deducted!
StructuralSurfaceMemberOpening: Added property Area. This property is not (yet) automatically calculated, but you can already use the new extension method CalculateArea to calculate it.
StructuralSurfaceMemberRegion: Implemented IHasParentId, added property ParentId.
StructuralSurfaceMemberRegion: Added property Area. This property is not (yet) automatically calculated, but you can already use the new extension method CalculateArea to calculate it.
CurveExtensions: Added method CalculateArea to calculate an Area from a list of curves that outline the area. Please note that this calculation is only usable on simple areas (straight lines only), so use it at your own risk. Will be updated at a later stage to be more correct all over the board.
ModelInformation: Added property LocalCoordinateSystem to keep track in which coordinate system the model is defined.
IAnalysisModelLocalCoordinateSystemTransformationService: Service used to transform an AnalysisModel from one local coordinate system to another. Based on the transformation, some objects will be modified.
Loads will generally have their values inverted and their direction changed, depending on the transformation.
Beams will have their LCS rotated, depending on the transformation.
Hinges and supports will have their constraints swapped, depending on the transformation.
For more information on the supported local coordinate systems, see LocalCoordinateSystem
Updated validation for StructuralCurveMember: Removed constraint for LCS rotation to be between -360° and 360°.
With the new LCS transformation service, it's possible that the rotation would exceed these values, and it was not possible to normalize these values to values within that range
It would cause different values when converting back to the original LCS and that would mess up equality comparison.