Segment (class)

File generated according to Generator/ClassesRef/Geometry/Segment.csv WARNING! All changes made in this file will be lost!

class Segment(begin=0, end=0, label='', init_dict=None)[source]

Bases: pyleecan.Classes.Line.Line

A segment between two points

VERSION = 1
check()

assert that the line is correct (begin != end)

Parameters:self (Segment) – A Segment object
Returns:
Return type:None
Raises:PointSegmentError – The beginning point and the ending point of an Segment can’t be the same
comp_length()

Compute the length of the line

Parameters:self (Segment) – A Segment object
Returns:length – lenght of the line [m]
Return type:float
Raises:PointSegmentError – Call Segment.check()
discretize(nb_point=0)

Return the discretize version of the Segment. Begin and end are always returned

Parameters:
  • self (Segment) – A Segment object
  • nb_point (int) – Number of points to add to discretize the line (Default value = LINE_NPOINT_D)
Returns:

list_point – List of complex coordinate of the points

Return type:

list

Raises:

NbPointSegmentDError – nb_point must be an integer >=

draw_FEMM(nodeprop=None, propname=None, element_size=None, automesh=None, hide=False, group=None)

< Draw the segment in FEMM and assign the property

Parameters:
  • nodeprop
    Nodal property
    (Default value = None)
  • propname
    Boundary property ’propname’
    (Default value = None)
  • element_size
    Local element size along segment no greater than element_size
    (Default value = None)
  • automesh – 0 = mesher defers to the element constraint defined by element_size, 1 = mesher automatically chooses mesh size along the selected segments (Default value = None)
  • hide
    0 = not hidden in post-processor, 1 == hidden in post processorc
    (Default value = False)
  • group
    group the segment belongs
    (Default value = None)
get_begin()

Return the begin point of the segment

Parameters:self (Segment) – A Segment object
Returns:begin – Begin point of the Segment
Return type:complex
get_end()

Return the end point of the segment

Parameters:self (Segment) – A Segment object
Returns:end – End point of the Segment
Return type:complex
get_middle()

Return the point at the middle of the Segment

Parameters:self (Segment) – A Segment object
Returns:Zmid – Complex coordinates of the middle of the Segment
Return type:complex
intersect_line(Z1, Z2)

Return a list (0, 1 or 2 complex) of coordinates of the intersection of the segment with a line defined by two complex

Parameters:self (Segment) – A Segment object
Returns:Z_list – Complex coordinates of the intersection (if any, return [begin, end] if the segment is part of the line)
Return type:list
reverse()

Reverse the begin and end point of the Line

Parameters:self (Segment) – An Segment object
rotate(angle)

Rotation of the Segment of angle

Parameters:
  • self (Segment) – An Segment Object
  • angle (float) – the angle of rotation [rad]
Returns:

Return type:

None

split_half(is_begin=True)

Cut the line in half (modify the object)

Parameters:
  • self (Segment) – An Segment object
  • is_begin (bool) – True to keep the part begin=>middle, False for the part middle=>end
split_line(Z1, Z2, is_top=True, is_join=False, label_join='')

Cut the Segment according to a line defined by two complex

Parameters:
  • self (Segment) – An Segment object
  • Z1 (complex) – First point of the cutting Line
  • Z2 (complex) – Second point of the cutting Line
  • is_top (bool) – True to keep the part above the cutting line. “Above” is in the coordinate system with Z1 in 0 and Z2 on the X>0 axis
  • is_join (bool) – True to join the split_list with Segment if there is more that one remaining parts
  • label_join (str) – Label of the join line
Returns:

split_list – The selected part of the Segment (0 or 1 segment depending on cutting point)

Return type:

list(Segment)

translate(Zt)

Translate the Segment object

Parameters:
  • self (Segment) – An Segment object
  • Zt (complex) – Complex value for translation
Returns:

Return type:

None

save(save_path='')

Save the object to the save_path

Parameters:
  • self – A pyleecan object
  • save_path (str) – path to the folder to save the object
get_logger()

Get the object logger or its parent’s one

Parameters:obj – A pyleecan object
Returns:logger – Pyleecan object dedicated logger
Return type:logging.Logger
as_dict()[source]

Convert this objet in a json seriable dict (can be use in __init__)

begin

begin point of the line

end

end point of the line