Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 43 additions & 0 deletions RFEM/BasicObjects/bracing.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,19 @@
# comment: str = '',
# params: dict = {}):

# '''
# Args:
# no (int): Bracing Tag
# member_type (enum): Bracing Type Enumeration
# start_node_no (int): Start Node
# end_node_no (int): End Node
# rotation_angle (float): Rotation Angle
# start_section_no (int): Tag of Start Section
# end_section_no (int): End of End Section
# comment (str, optional): Comment
# params (dict, optional): Parameters
# '''

# # Client model | Bracing
# clientObject = Model.clientModel.factory.create('ns0:bracing')

Expand Down Expand Up @@ -69,6 +82,21 @@
# comment: str = '',
# params: dict = {}):

# '''
# Args:
# no (int): Bracing Tag
# bracing_type (enum): Bracing Type Enumeration
# start_node_no (int): Start Node
# end_node_no (int): End Node
# rotation_angle (float): Rotation Angle
# start_section_no (int): Tag of Start Section
# end_section_no (int): End of End Section
# start_bracing_hinge_no (int): Hinge at Bracing Start
# end_bracing_hinge_no (int): Hinge at Bracing End
# comment (str, optional): Comment
# params (dict, optional): Parameters
# '''

# # Client model | Bracing
# clientObject = Model.clientModel.factory.create('ns0:bracing')

Expand Down Expand Up @@ -125,6 +153,21 @@
# comment: str = '',
# params: dict = {}):

# '''
# Args:
# no (int): Bracing Tag
# bracing_type (enum): Bracing Type Enumeration
# start_node_no (int): Start Node
# end_node_no (int): End Node
# rotation_angle (float): Rotation Angle
# start_section_no (int): Tag of Start Section
# end_section_no (int): End of End Section
# start_bracing_hinge_no (int): Hinge at Bracing Start
# end_bracing_hinge_no (int): Hinge at Bracing End
# comment (str, optional): Comment
# params (dict, optional): Parameters
# '''

# # Client model | Bracing
# clientObject = Model.clientModel.factory.create('ns0:bracing')

Expand Down
17 changes: 17 additions & 0 deletions RFEM/BasicObjects/frame.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,23 @@
# comment: str = '',
# params: dict = {}):

# '''
# Args:
# number_of_frames (int): Number of Frames
# span_l (int): Span Length
# height_h (int): Frame Height
# column_cross_section (int): Tag of Column Section
# column_member_type (enum): Column Member Type Enumeration
# girder_cross_section (int): Tag of Girder Section
# girder_member_type (enum): Girder Member Type Enumeration
# support_type (enum): Column to Girder Connection Type Enumeration
# insertion_point_x (int): Insertion Point x
# insertion_point_y (int): Insertion Point y
# insertion_point_z (int): Insertion Point z
# comment (str, optional): Comment
# params (dict, optional): Parameters
# '''

# # Client model | Frame
# clientObject = clientModel.factory.create('ns0:member')

Expand Down
128 changes: 107 additions & 21 deletions RFEM/BasicObjects/line.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,14 @@ def __init__(self,
comment: str = '',
params: dict = {}):

'''
Args:
no (int): Line Tag
nodes_no (str): Nodes Defining Line
comment (str, optional): Comments
params (dict, optional): Parameters
'''

# Client model | Line
clientObject = Model.clientModel.factory.create('ns0:line')

Expand Down Expand Up @@ -36,6 +44,14 @@ def Polyline(self,
comment: str = '',
params: dict = {}):

'''
Args:
no (int): Line Tag
nodes_no (str): Nodes Defining Polyline
comment (str, optional): Comments
params (dict, optional): Parameters
'''

# Client model | Line
clientObject = Model.clientModel.factory.create('ns0:line')

Expand Down Expand Up @@ -63,12 +79,22 @@ def Polyline(self,

def Arc(self,
no: int = 1,
nodes_no: list = [1,2],
nodes_no: str = [1,2],
control_point: list = [10,0,0], # X,Y,Z
alpha_adjustment_target = LineArcAlphaAdjustmentTarget.ALPHA_ADJUSTMENT_TARGET_BEGINNING_OF_ARC,
comment: str = '',
params: dict = {}):

'''
Args:
no (int): Line Tag
nodes_no (list): Node Tags Defining Arc
control_point (list): Control Point for Arc in [X, Y, Z]
alpha_adjustment_target (enum): Line Arc Alpha Adjustment Target Enumeration
comment (str, optional): Comments
params (dict, optional): Parameters
'''

# Client model | Line
clientObject = Model.clientModel.factory.create('ns0:line')

Expand Down Expand Up @@ -102,12 +128,23 @@ def Arc(self,

def Circle(self,
no: int = 1,
center_of_cirle = [20,0,0],
circle_radius = 1,
point_of_normal_to_circle_plane = [1,0,0],
center_of_cirle: list = [20,0,0],
circle_radius: float = 1.0,
point_of_normal_to_circle_plane: list = [1,0,0],
comment: str = '',
params: dict = {}):

'''
Args:
no (int): Line Tag
nodes_no (str): Nodes on Line of Circle
center_of_circle (list): Cartesian Co-Ordinates of Circle Centre [X, Y, Z]
circle_radius (float): Magnitude of Circle Radius
point_of_normal_to_circle_plane (list): Vector from Circle Centre to this Point [X, Y, Z] defines Vector Normal to Circle Plane
comment (str, optional): Comments
params (dict, optional): Parameters
'''

# Client model | Line
clientObject = Model.clientModel.factory.create('ns0:line')

Expand Down Expand Up @@ -143,15 +180,27 @@ def Circle(self,
Model.clientModel.service.set_line(clientObject)

def EllipticalArc(self,
no: int = 72,
p1_control_point = [0,-6,0],
p2_control_point = [20,-6,0],
p3_control_point = [10,10,3],
arc_angle_alpha = 0,
arc_angle_beta = 3.141592653589793,
no: int = 1,
p1_control_point: list = [0,-6,0],
p2_control_point: list = [20,-6,0],
p3_control_point: list = [10,10,3],
arc_angle_alpha: float = 0,
arc_angle_beta: float = 3.141592653589793,
comment: str = '',
params: dict = {}):

'''
Args:
no (int): Line Tag
p1_control_point (list): Control Point 1 [X, Y, Z]
p2_control_point (list): Control Point 2 [X, Y, Z]
p3_control_point (list): Control Point 3 [X, Y, Z]
arc_angle_alpha (float): Alpha Arc Angle (in Radians)
arc_angle_beta (float): Beta Arc Angle (in Radians)
comment (str, optional): Comments
params (dict, optional): Parameters
'''

# Client model | Line
clientObject = Model.clientModel.factory.create('ns0:line')

Expand Down Expand Up @@ -193,10 +242,19 @@ def EllipticalArc(self,
def Ellipse(self,
no: int = 1,
nodes_no: list = [5,10],
p3_control_point = [18,-4.8,0],
ellipse_control_point: list = [18,-4.8,0],
comment: str = '',
params: dict = {}):

'''
Args:
no (int): Line Tag
nodes_no (list): Node Tags on Line of Ellipse
ellipse_control_point (list): Ellipse Control Point [X, Y, Z]
comment (str, optional): Comments
params (dict, optional): Parameters
'''

# Client model | Line
clientObject = Model.clientModel.factory.create('ns0:line')

Expand All @@ -215,9 +273,9 @@ def Ellipse(self,
clientObject.type = LineType.TYPE_ELLIPSE.name

# Control point
clientObject.ellipse_control_point_x = p3_control_point[0]
clientObject.ellipse_control_point_y = p3_control_point[1]
clientObject.ellipse_control_point_z = p3_control_point[2]
clientObject.ellipse_control_point_x = ellipse_control_point[0]
clientObject.ellipse_control_point_y = ellipse_control_point[1]
clientObject.ellipse_control_point_z = ellipse_control_point[2]

# Comment
clientObject.comment = comment
Expand All @@ -231,12 +289,22 @@ def Ellipse(self,

def Parabola(self,
no: int = 1,
nodes_no: list = [3, 8],
p3_control_point = [10,-3,0],
parabola_alpha = 0,
nodes_no: str = [3,8],
parabola_control_point: list = [10,-3,0],
parabola_alpha: float = 0,
comment: str = '',
params: dict = {}):

'''
Args:
no (int): Line Tag
nodes_no (list): Node Tags on Line of Parabola
parabola_control_point (list): Parabola Control Point [X, Y, Z]
parabola_alpha (float): Alpha Angle (in Radians)
comment (str, optional): Comments
params (dict, optional): Parameters
'''

# Client model | Line
clientObject = Model.clientModel.factory.create('ns0:line')

Expand All @@ -257,9 +325,9 @@ def Parabola(self,
clientObject.type = LineType.TYPE_PARABOLA.name

# Control point
clientObject.parabola_control_point_x = p3_control_point[0]
clientObject.parabola_control_point_y = p3_control_point[1]
clientObject.parabola_control_point_z = p3_control_point[2]
clientObject.parabola_control_point_x = parabola_control_point[0]
clientObject.parabola_control_point_y = parabola_control_point[1]
clientObject.parabola_control_point_z = parabola_control_point[2]

# Comment
clientObject.comment = comment
Expand All @@ -277,6 +345,14 @@ def Spline(self,
comment: str = '',
params: dict = {}):

'''
Args:
no (int): Line Tag
nodes_no (str): Node Tags on Line of Spline
comment (str, optional): Comments
params (dict, optional): Parameters
'''

# Client model | Line
clientObject = Model.clientModel.factory.create('ns0:line')

Expand Down Expand Up @@ -310,6 +386,16 @@ def NURBS(self,
comment: str = '',
params: dict = {}):

'''
Args:
no (int): Line Tag
nodes_no (str): Node Tags on Line of NURBS Curve
control_points (list): Nested List of Respective Control Point's Cartesian Co-Ordinates
weights (list): Weights of Control Points
comment (str, optional): Comments
params (dict, optional): Parameters
'''

# Client model | Line
clientObject = Model.clientModel.factory.create('ns0:line')

Expand All @@ -326,7 +412,7 @@ def NURBS(self,
clientObject.type = LineType.TYPE_NURBS.name

if len(control_points) != len(weights):
print("Number of control points must comply with number of weights!")
print("WARNING: The number of weigths prescribed must equal the number of control points defined.")

'''
TODO: bug 24721
Expand Down
25 changes: 25 additions & 0 deletions RFEM/BasicObjects/lineSet.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,15 @@ def __init__(self,
comment: str = '',
params: dict = {}):

'''
Args:
no (int): Line Set Tag
lines_no (str): Tags of Lines Contained Within Line Set
line_set_type (enum): Line Set Type Enumeration
comment (str, optional): Comments
params (dict, optional): Parameters
'''

# Client model | Line Set
clientObject = Model.clientModel.factory.create('ns0:line_set')

Expand Down Expand Up @@ -40,6 +49,14 @@ def ContinuousLines(self,
comment: str = '',
params: dict = {}):

'''
Args:
no (int): Line Set Tag
lines_no (str): Tags of Lines Contained Within Continuous Line Set
comment (str, optional): Comments
params (dict, optional): Parameters
'''

# Client model | Line Set
clientObject = Model.clientModel.factory.create('ns0:line_set')

Expand Down Expand Up @@ -71,6 +88,14 @@ def GroupOfLines(self,
comment: str = '',
params: dict = {}):

'''
Args:
no (int): Line Set Tag
lines_no (str): Tags of Lines Contained Within Group of Lines Line Set
comment (str, optional): Comments
params (dict, optional): Parameters
'''

# Client model | Line Set
clientObject = Model.clientModel.factory.create('ns0:line_set')

Expand Down
8 changes: 8 additions & 0 deletions RFEM/BasicObjects/material.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,14 @@ def __init__(self,
comment: str = '',
params: dict = {}):

'''
Args:
no (int): Material Tag
name (str): Name of Desired Material (As Named in RFEM Database)
comment (str, optional): Comments
params (dict, optional): Parameters
'''

# Client model | Material
clientObject = Model.clientModel.factory.create('ns0:material')

Expand Down
Loading