g = Graph()
    for i in range(len(dirddd)):
        g.addVertex(i)
    for i in range(len(dirddd) - 1):
        g.addEdge(i, i + 1, 1)

# draw_point_graph(g,dirddd,color='b')

    val = Profile_Constant(graph=g, dir=dirddd)

    lis = val.profile_To_centriod()

    thk = graph_line_thickness(g, [0, 1, 2, 3])

    pp = [-0.5, -0.5]

    cc = open_profile.Open_Profile(lis, val, thickness=thk, Qx=0, Qy=1)
    xx = open_profile.get_Shear_center_x(cc,
                                         Shear_ST=cc.Shear_ST,
                                         basic_point=pp)
    print cc.Shear_ST
    print 'xxxxxx--->\n', xx, xx - pp[0], xx + pp[0]

    cc = open_profile.Open_Profile(lis, val, thickness=thk, Qx=1, Qy=0)
    yy = -1.0 * open_profile.get_Shear_center_y(
        cc, Shear_ST=cc.Shear_ST, basic_point=pp)
    print cc.Shear_ST
    print 'yyyyyyy--->\n', yy, yy - pp[1], yy + pp[1]

    cc.report()
    cccc = [lis[i] for i in ccc]
    thk = graph_line_thickness(g, ccc)

    Pc = Profile_Constant(graph=g, dir=dirddd, thickness=thk)

    lis = Pc.profile_To_centriod()

    ccc = [0, 1, 2, 3]
    cccc = [lis[i] for i in ccc]
    thk = graph_line_thickness(g, ccc)
    print 'ccccc--', cccc

    pp = [-0.5, 0.5]

    cc = open_profile.Open_Profile(cccc, Pc, Qx=0, Qy=1, thickness=thk)
    xx = open_profile.get_Shear_center_x(cc, basic_point=pp)
    # print cc.Shear_ST
    print 'xxxxxx--->\n', xx, xx - pp[0], xx + pp[0]

    cc = open_profile.Open_Profile(cccc, Pc, Qx=1, Qy=0, thickness=thk)
    yy = open_profile.get_Shear_center_y(cc, basic_point=pp)
    # print cc.thickness
    print 'yyyyyyy--->\n', yy, yy - pp[1], yy + pp[1]

    print '\n', open_profile.get_resultant_Q(cccc,
                                             Shear_ST=cc.Shear_ST,
                                             thickness=thk)

    print '\n\n'
    cc.report()