*** TDMT_Match4d.py 2010-02-28 16:27:24.000000000 +1100 --- TDMT_Match4d_test.py 2010-03-06 20:05:11.000000000 +1100 *************** *** 199,208 **** vert = mesh2.verts[vi] dists = {} go = 0 for nvi in range(mesh1.geom.NumVertices()): if mesh1.screenT[nvi]: if no_pyd: - p2 = mesh1.verts[nvi] dist = (p2[0]-vert[0])**2 + (p2[1]-vert[1])**2 + (p2[2]-vert[2])**2 #2.48 min else: dist = vert.PointDistance(mesh1.verts[nvi]) #48 seconds --- 199,215 ---- vert = mesh2.verts[vi] dists = {} go = 0 + xmin, xmax = vert[0] - threshold, vert[0] + threshold + ymin, ymax = vert[1] - threshold, vert[1] + threshold + zmin, zmax = vert[2] - threshold, vert[2] + threshold for nvi in range(mesh1.geom.NumVertices()): if mesh1.screenT[nvi]: + p2 = mesh1.verts[nvi] + if (p2[1] < ymin or p2[1] > ymax or + p2[0] < xmin or p2[0] > xmax or + p2[2] < zmin or p2[2] > zmax): + continue if no_pyd: dist = (p2[0]-vert[0])**2 + (p2[1]-vert[1])**2 + (p2[2]-vert[2])**2 #2.48 min else: dist = vert.PointDistance(mesh1.verts[nvi]) #48 seconds