Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- """
- Performance test for BVH engines.
- """
- import argparse
- import pymesh
- import numpy as np
- import numpy.random
- from time import time
- def parse_args():
- parser = argparse.ArgumentParser(__doc__);
- parser.add_argument("-n", type=int, help="number of queries");
- parser.add_argument("input_mesh")
- return parser.parse_args();
- def main():
- args = parse_args();
- mesh = pymesh.load_mesh(args.input_mesh);
- bbox_min, bbox_max = mesh.bbox;
- pts = numpy.random.rand(args.n, mesh.dim);
- pts = bbox_min + np.multiply(pts, bbox_max-bbox_min);
- for engine in pymesh.BVH.available_engines:
- bvh = pymesh.BVH(engine, mesh.dim);
- t0 = time();
- bvh.load_mesh(mesh);
- t1 = time();
- bvh.lookup(pts);
- t2 = time();
- print("{:>10}: {:<12.6} {:<12.6}".format(engine, t1-t0, t2-t1));
- if __name__ == "__main__":
- main();
Add Comment
Please, Sign In to add comment