def renderMeshFromParts_new(parts, i): vertex_list = [] seat = None pcd = o3d.geometry.PointCloud() full = o3d.geometry.PointCloud() # getting the seat for part in parts: if part.render: if part.label == PartLabel.SEAT: seat = part_to_pcd(part) for part in parts: if part.render: if part.label == PartLabel.BACK or part.label == PartLabel.ARMREST: print("Moving back or arm") bb = part.bounding_box lab = part.label col = part.colour part = part_to_pcd(part) part = move_part(part, seat, axis=1, n=1000, dir='down') part = pcd_to_part(part, lab, bb) part.colour = col if part.label == PartLabel.LEG: print("Moving leg") bb = part.bounding_box lab = part.label col = part.colour part = part_to_pcd(part) part = move_part(part, seat, axis=1, n=1000, dir='up') part = pcd_to_part(part, lab, bb) part.colour = col vertex_list = (np.asarray(part.vertices, dtype=np.float64)) pcd.points = o3d.utility.Vector3dVector(np.asarray(vertex_list)) pcd.estimate_normals() pcd.paint_uniform_color(part.colour) full = full + pcd #pcd = None pcd = o3d.geometry.PointCloud() o3d.io.write_point_cloud("final" + str(i) + ".ply", full) #o3d.visualization.draw_geometries([full]) view(full, "final" + str(i) + ".png")
def user(request): if request.method == "GET": message = view(request) if request.method == "POST": message = add(request) if request.method == "PUT": message = modify(request) if request.method == "DELETE": message = delete(request) return HttpResponse(message)
def renderMeshFromParts(parts, filename = 'screenshot.png'): vertex_list = [] faces_list = [] current_offset = 0 if parts[0].faces!=None: mesh = o3d.geometry.TriangleMesh() full = o3d.geometry.TriangleMesh() else: pcd = o3d.geometry.PointCloud() full = o3d.geometry.PointCloud() for part in parts: if part.render: if part.faces!=None: vertex_list = (np.asarray(part.vertices, dtype=np.float64)) faces_list = (reindex_faces(part.faces, current_offset)) #current_offset += len(part.vertices) mesh.vertices = o3d.utility.Vector3dVector(vertex_list) mesh.triangles = o3d.utility.Vector3iVector(faces_list) mesh.compute_vertex_normals() mesh.paint_uniform_color(part.colour) full = full + mesh #mesh = None mesh = o3d.geometry.TriangleMesh() else: vertex_list = (np.asarray(part.vertices, dtype=np.float64)) pcd.points = o3d.utility.Vector3dVector(np.asarray(vertex_list)) pcd.estimate_normals() pcd.paint_uniform_color(part.colour) full = full + pcd #pcd = None pcd = o3d.geometry.PointCloud() #o3d.io.write_point_cloud("final.pcd", full) #o3d.visualization.draw_geometries([full]) view(full, filename)
def app(raw_request): request = make_request(raw_request) view = dispatch(request) return make_response(*view(request))
def app(env, start_response): view = routes[env['PATH_INFO']] status, headers, body = view(env) start_response(status, headers) return [body]
#encoding: utf-8 import sys from flask_bootstrap import Bootstrap from flask_moment import Moment from appCreator import app from controls import login from views import view bootstrap = Bootstrap(app) moment=Moment(app) view(app)#注册函数 if __name__ == "__main__": app.run(debug=True,host='0.0.0.0')
URL = "localhost" PORT = 8080 # response has similar format as request object def process_response(response): return ("HTTP/1.1 200 OK\r\n" f"Content-Length: {len(response)}\r\n" "Content-Type: text/html\r\n" "\r\n" f"{response}" "\r\n") with socket.socket() as s: s.bind((URL, PORT)) s.listen() while True: # conn - new socket object usable to send & receive data on the connection # address - address bound to the socket on the other side of the connection conn, addr = s.accept() print(f"Remote Address: {addr}") with conn: request = conn.recv(4096).decode("utf-8") method, path, protocol, headers, body = parser(request) response = view(path) response = process_response(response) conn.sendall(response.encode("utf-8"))