| 113 | return wires; |
| 114 | |
| 115 | def resolve_self_intersection(wires, logger): |
| 116 | if wires.num_vertices == 0: |
| 117 | return wires; |
| 118 | bbox_min, bbox_max = wires.bbox; |
| 119 | tol = norm(bbox_max - bbox_min) / 1000; |
| 120 | start_time = time(); |
| 121 | vertices, edges = pymesh.snap_rounding(wires.vertices, wires.edges, tol); |
| 122 | finish_time = time(); |
| 123 | t = finish_time - start_time; |
| 124 | logger.info("Snap rounding running time: {}".format(t)); |
| 125 | wires.load(vertices, edges); |
| 126 | return wires; |
| 127 | |
| 128 | def triangulate(wires, engine, stage, eps, logger, wire_file, json_file): |
| 129 | if wires.num_vertices == 0: |