()
| 411 | return pymesh.form_mesh(vertices, faces); |
| 412 | |
| 413 | def main(): |
| 414 | args = parse_args(); |
| 415 | logger = get_logger(args.log); |
| 416 | wires = pymesh.wires.WireNetwork.create_from_file(args.input_svg); |
| 417 | wires = drop_zero_dim(wires); |
| 418 | wires = drop_frame(wires); |
| 419 | wires = flip_orientation(wires); |
| 420 | wires = resolve_self_intersection(wires, logger); |
| 421 | wires = cleanup(wires, logger); |
| 422 | |
| 423 | if args.repousse: |
| 424 | mesh = conforming_triangulate(wires, logger, args.remove_holes); |
| 425 | mesh = repousse(mesh, logger); |
| 426 | elif args.bevel > 0: |
| 427 | mesh = bevel(wires, logger, args.remove_holes, args.bevel); |
| 428 | else: |
| 429 | mesh = constrained_triangulate(wires, logger, args.remove_holes); |
| 430 | |
| 431 | if args.extrude > 0: |
| 432 | mesh = extrude(mesh, args.extrude, logger); |
| 433 | |
| 434 | pymesh.save_mesh(args.output_mesh, mesh); |
| 435 | |
| 436 | if __name__ == "__main__": |
| 437 | main(); |
no test coverage detected