cLinkObjSetLocalAxesAdvanced Method |
Assigns advanced local axes to link objects
Namespace:
ETABS2016
Assembly:
ETABS2016 (in ETABS2016.dll) Version: 16.0.0.0 (16.0.0.0)
Syntaxint SetLocalAxesAdvanced(
string Name,
bool Active,
int AxVectOpt,
string AxCSys,
ref int[] AxDir,
ref string[] AxPt,
ref double[] AxVect,
int Plane2,
int PlVectOpt,
string PlCSys,
ref int[] PlDir,
ref string[] PlPt,
ref double[] PlVect,
eItemType ItemType = eItemType.Objects
)
Function SetLocalAxesAdvanced (
Name As String,
Active As Boolean,
AxVectOpt As Integer,
AxCSys As String,
ByRef AxDir As Integer(),
ByRef AxPt As String(),
ByRef AxVect As Double(),
Plane2 As Integer,
PlVectOpt As Integer,
PlCSys As String,
ByRef PlDir As Integer(),
ByRef PlPt As String(),
ByRef PlVect As Double(),
Optional ItemType As eItemType = eItemType.Objects
) As Integer
int SetLocalAxesAdvanced(
String^ Name,
bool Active,
int AxVectOpt,
String^ AxCSys,
array<int>^% AxDir,
array<String^>^% AxPt,
array<double>^% AxVect,
int Plane2,
int PlVectOpt,
String^ PlCSys,
array<int>^% PlDir,
array<String^>^% PlPt,
array<double>^% PlVect,
eItemType ItemType = eItemType::Objects
)
abstract SetLocalAxesAdvanced :
Name : string *
Active : bool *
AxVectOpt : int *
AxCSys : string *
AxDir : int[] byref *
AxPt : string[] byref *
AxVect : float[] byref *
Plane2 : int *
PlVectOpt : int *
PlCSys : string *
PlDir : int[] byref *
PlPt : string[] byref *
PlVect : float[] byref *
?ItemType : eItemType
(* Defaults:
let _ItemType = defaultArg ItemType eItemType.Objects
*)
-> int
Parameters
- Name
- Type: SystemString
The name of an existing link object or group depending on the value of the
ItemType item. - Active
- Type: SystemBoolean
This is True if advanced local axes exist - AxVectOpt
- Type: SystemInt32
This is 1, 2, or 3, indicating the axis reference vector option.
This item applies only when the Active item is True.
Value | AxVectOpt |
---|
1 | Coordinate direction |
2 | Two joints |
3 | User vector |
- AxCSys
- Type: SystemString
The coordinate system used to define the axis reference vector coordinate
directions and the axis user vector. This item applies when the Active item is
True and the AxVectOpt item is 1 or 3. - AxDir
- Type: SystemInt32
- AxPt
- Type: SystemString
This is an array dimensioned to 1 (2 strings), indicating the labels
of two joints that define the axis reference vector. Either of these joints may be specified
as None to indicate the center of the specified object. If both joints are specified
as None, they are not used to define the axis reference vector. This item applies when
the Active item is True and the AxVectOpt item is 2.
- AxVect
- Type: SystemDouble
This is an array dimensioned to 2 (3 doubles) that defines the axis
reference vector. This item applies when the Active item is True
and the AxVectOpt item is 3. - Plane2
- Type: SystemInt32
This is 12 or 13, indicating that the local plane determined by the
plane reference vector is the 1-2 or 1-3 plane. This item applies only when the
Active item is True. - PlVectOpt
- Type: SystemInt32
This is 1, 2, or 3, indicating the plane reference vector option.
This item applies only when the Active item is True.
Value | PlVectOpt |
---|
1 | Coordinate direction |
2 | Two joints |
3 | User vector |
- PlCSys
- Type: SystemString
- PlDir
- Type: SystemInt32
- PlPt
- Type: SystemString
This is an array dimensioned to 1 (2 strings), indicating the labels
of two joints that define the plane reference vector. Either of these joints may be specified
as None to indicate the center of the specified object. If both joints are specified
as None, they are not used to define the plane reference vector. This item applies when
the Active item is True and the PlVectOpt item is 2.
- PlVect
- Type: SystemDouble
This is an array dimensioned to 2 (3 doubles) that defines the plane
reference vector. This item applies when the Active item is True
and the PlVectOpt item is 3. - ItemType (Optional)
- Type: ETABS2016eItemType
This is one of the items in the eItemType enumeration.
If this item is Objects, the assignment is made to the link
object specified by the Name item.
If this item is Group, the assignment is made to the all link
objects in the group specified by the Name item.
If this item is SelectedObjects, the assignment is made to
all selected link objects, and the Name item is ignored.
Return Value
Type:
Int32Returns zero if the advanced local axes assignments are assigned successfully;
otherwise, it returns a nonzero value.
Remarks
ExamplesPublic Sub Example()
Dim SapModel As cSapModel
Dim EtabsObject As cOAPI
Dim ret As Integer = -1
Dim MyName As String
Dim MyAxDir(1) As Integer
Dim MyAxPt(1) As String
Dim MyAxVect(2) As Double
Dim MyPlDir(1) As Integer
Dim MyPlPt(1) As String
Dim MyPlVect(2) As Double
EtabsObject = CreateObject("CSI.ETABS.API.ETABSObject")
ret = EtabsObject.ApplicationStart()
SapModel = EtabsObject.SapModel
ret = SapModel.InitializeNewModel()
ret = SapModel.File.NewSteelDeck(4,12,12,4,4,24,24)
ret = SapModel.LinkObj.AddByPoint("1", "5", MyName)
MyAxVect(0)=0.707
MyAxVect(1)=0.707
MyAxVect(2)=0
MyPlDir(0) = 2
MyPlDir(1) = 3
ret = SapModel.LinkObj.SetLocalAxesAdvanced(MyName, True, 3, "Global", MyAxDir, MyAxPt, MyAxVect, 12, 1, "Global", MyPlDir, MyPlPt, MyPlVect)
EtabsObject.ApplicationExit(False)
SapModel = Nothing
EtabsObject = Nothing
End Sub
See Also