Beispiel #1
0
def profile_triangulation():
    import dilap.mesh.piecewisecomplex as pwc

    ps1 = tuple(dpr.point_ring(100, 32))
    ps2 = tuple(dpr.point_ring(20, 8))
    ps3 = tuple(dpr.point_ring(100, 64))
    ps4 = tuple([p.copy() for p in ps2])
    q = dpq.q_from_av(numpy.pi / 2.0, dpv.xhat)
    for p in ps1:
        p.rotate(q)
    for p in ps2:
        p.rotate(q)
    dpv.translate_coords(list(ps1), dpv.vector(0, 100, 0))
    dpv.translate_coords(list(ps2), dpv.vector(0, 100, 0))
    dpv.translate_coords(list(ps3), dpv.vector(0, 0, -100))
    dpv.translate_coords(list(ps4), dpv.vector(0, 0, -100))

    polygons = ((ps1, (ps2, )), (ps3, ()))
    #polygons = ((ps3,(ps4,)),)
    #polygons = ((ps3,()),)

    plc = pwc.piecewise_linear_complex()
    plc.add_polygons(*polygons)

    dprf.profile_function(plc.triangulate)
    #dprf.profile_function(plc.triangulate_xy)

    ax = plc.plot()
    plt.show()
Beispiel #2
0
def profile_triangulation():
    import dilap.mesh.piecewisecomplex as pwc

    ps1 = tuple(dpr.point_ring(100,32))
    ps2 = tuple(dpr.point_ring(20,8))
    ps3 = tuple(dpr.point_ring(100,64))
    ps4 = tuple([p.copy() for p in ps2])
    q = dpq.q_from_av(numpy.pi/2.0,dpv.xhat)
    for p in ps1:p.rotate(q)
    for p in ps2:p.rotate(q)
    dpv.translate_coords(list(ps1),dpv.vector(0,100,0))
    dpv.translate_coords(list(ps2),dpv.vector(0,100,0))
    dpv.translate_coords(list(ps3),dpv.vector(0,0,-100))
    dpv.translate_coords(list(ps4),dpv.vector(0,0,-100))

    polygons = ((ps1,(ps2,)),(ps3,()))
    #polygons = ((ps3,(ps4,)),)
    #polygons = ((ps3,()),)

    plc = pwc.piecewise_linear_complex()
    plc.add_polygons(*polygons)
    
    dprf.profile_function(plc.triangulate)
    #dprf.profile_function(plc.triangulate_xy)

    ax = plc.plot()
    plt.show()
Beispiel #3
0
    def generate(self):
        self.populate()
        self.place_lots()
        tplc = pwc.piecewise_linear_complex(refine=True, smooth=False)
        tplc.add_polygons(self.boundary)

        dprf.profile_function(tplc.triangulate)
        tpelt = tplc.pelt()
        tnode = self._node_wrap(tpelt)
        self._nodes_to_graph(tnode)

        #plantmodel = dflg.plant().model()
        #plantnode = self._node_wrap(plantmodel)
        #self._nodes_to_graph(plantnode)

        return self
Beispiel #4
0
def roof():
    import dilap.mesh.piecewisecomplex as pwc
    plc = pwc.piecewise_linear_complex()

    h = 5
    ebnd = (dpv.vector(0, 0, 0), dpv.vector(10, 0, 0), dpv.vector(10, 10, 0),
            dpv.vector(20, 10, 0), dpv.vector(20, 20, 0), dpv.vector(0, 20, 0))
    ibnd = (dpv.vector(2, 2, h), dpv.vector(8, 2, h), dpv.vector(8, 12, h),
            dpv.vector(18, 12, h), dpv.vector(18, 18, h), dpv.vector(2, 18, h))
    polygons = ((ebnd, (ibnd, )), )

    plc.add_polygons(*polygons)
    dprf.profile_function(plc.triangulate)
    ax = plc.plot()
    plt.show()
    return plc
Beispiel #5
0
    def generate(self):
        self.populate()
        self.place_lots()
        tplc = pwc.piecewise_linear_complex(refine = True,smooth = False)
        tplc.add_polygons(self.boundary)

        dprf.profile_function(tplc.triangulate)
        tpelt = tplc.pelt()
        tnode = self._node_wrap(tpelt)
        self._nodes_to_graph(tnode)

        #plantmodel = dflg.plant().model()
        #plantnode = self._node_wrap(plantmodel)
        #self._nodes_to_graph(plantnode)

        return self
Beispiel #6
0
def roof():
    import dilap.mesh.piecewisecomplex as pwc
    plc = pwc.piecewise_linear_complex()

    h = 5
    ebnd = (
        dpv.vector(0,0,0),dpv.vector(10,0,0),
        dpv.vector(10,10,0),dpv.vector(20,10,0),
        dpv.vector(20,20,0),dpv.vector(0,20,0))
    ibnd = (
        dpv.vector(2,2,h),dpv.vector(8,2,h),
        dpv.vector(8,12,h),dpv.vector(18,12,h),
        dpv.vector(18,18,h),dpv.vector(2,18,h))
    polygons = ((ebnd,(ibnd,)),)

    plc.add_polygons(*polygons)
    dprf.profile_function(plc.triangulate)
    ax = plc.plot()
    plt.show()
    return plc
Beispiel #7
0
def prf_lstest():
    prf.profile_function(pls.test)
Beispiel #8
0
def prf_street():
    prf.profile_function(street)
Beispiel #9
0
def prf_cont():
    prf.profile_function(cont)
Beispiel #10
0
def prf_houselot():
    prf.profile_function(houselot)
Beispiel #11
0
def prf_lstest():
    prf.profile_function(pls.test)
Beispiel #12
0
def prf_cont():
    prf.profile_function(cont)
Beispiel #13
0
def prf_street():
    prf.profile_function(street)
Beispiel #14
0
def prf_houselot():
    prf.profile_function(houselot)