summaryrefslogtreecommitdiff
path: root/megapixels
diff options
context:
space:
mode:
authorJules Laplace <julescarbon@gmail.com>2019-06-06 19:58:38 +0200
committerJules Laplace <julescarbon@gmail.com>2019-06-06 19:58:38 +0200
commitb48db4cbb9d88da3c841a02c080f0a0bbcb73435 (patch)
tree6df1a22840b1f188ce50ad35281709a80a1d23dd /megapixels
parent8b4827e78a66c5f58cb52900483000896464f97f (diff)
updated faces
Diffstat (limited to 'megapixels')
-rw-r--r--megapixels/commands/misc/obj2ply.py13
1 files changed, 9 insertions, 4 deletions
diff --git a/megapixels/commands/misc/obj2ply.py b/megapixels/commands/misc/obj2ply.py
index 61fdefbd..cd956365 100644
--- a/megapixels/commands/misc/obj2ply.py
+++ b/megapixels/commands/misc/obj2ply.py
@@ -11,11 +11,12 @@ import click
@click.option('-u', '--unwind/--wind', 'unwind', default=False, help='pass to reverse winding order on faces (if surface normals are upside down)')
@click.option('-y', '--flip_y/--no_flip_y', 'flip_y', default=False, help='flip Y axis')
@click.option('-z', '--flip_z/--no_flip_z', 'flip_z', default=False, help='flip Z axis')
-@click.option('-s', '--swap_xy/--no_swap_xy', 'swap_xy', default=False, help='swap axes so things rotate correctly')
+@click.option('-s', '--swap_xy/--no_swap_xy', 'swap_xy', default=False, help='swap x/y axes so things rotate correctly')
+@click.option('-z', '--swap_xz/--no_swap_xz', 'swap_xz', default=False, help='swap x/z axes so things rotate correctly')
@click.option('-i', '--input_fn', required=True, help='input OBJ filename')
@click.option('-o', '--output_fn', help='output PLY filename')
@click.pass_context
-def cli(ctx, float_colors, unwind, flip_y, flip_z, swap_xy, input_fn, output_fn):
+def cli(ctx, float_colors, unwind, flip_y, flip_z, swap_xy, swap_xz, input_fn, output_fn):
"""
click command for converting OBJ to PLY
"""
@@ -44,12 +45,16 @@ def cli(ctx, float_colors, unwind, flip_y, flip_z, swap_xy, input_fn, output_fn)
for line in f.readlines():
N = line.strip().split(' ')
if N[0] == 'v':
- if flip_y:
- N[2] = str(float(N[2]) * -1)
if swap_xy:
tmp = N[2]
N[2] = N[1]
N[1] = tmp
+ if flip_y:
+ N[2] = str(float(N[2]) * -1)
+ if swap_xz:
+ tmp = N[3]
+ N[3] = N[1]
+ N[1] = tmp
if flip_z:
N[2] = str(float(N[2]) * -1)
if float_colors: