| Code: |
|
--- __init__.py Tue Jan 20 00:26:12 1970 +++ __init__.py Tue Jan 20 00:26:12 1970 @@ -287,6 +287,12 @@ default=False, ) + use_object_coordinates = BoolProperty( + name="Use Object Coordinates", + description="", + default=False, + ) + global_scale = FloatProperty( name="Scale", description="Scale all data", --- export_obj.py Tue Jan 20 00:26:12 1970 +++ export_obj.py Tue Jan 20 00:26:12 1970 @@ -228,6 +228,7 @@ EXPORT_CURVE_AS_NURBS=True, EXPORT_GLOBAL_MATRIX=None, EXPORT_PATH_MODE='AUTO', + EXPORT_OBJECT_COORDINATES=False, ): ''' Basic write function. The context and options must be already set @@ -320,7 +321,11 @@ # Nurbs curve support if EXPORT_CURVE_AS_NURBS and test_nurbs_compat(ob): - ob_mat = EXPORT_GLOBAL_MATRIX * ob_mat + if EXPORT_OBJECT_COORDINATES: + ob_mat = EXPORT_GLOBAL_MATRIX + else: + ob_mat = EXPORT_GLOBAL_MATRIX * ob_mat + totverts += write_nurb(fw, ob, ob_mat) continue # END NURBS @@ -333,7 +338,11 @@ if me is None: continue - me.transform(EXPORT_GLOBAL_MATRIX * ob_mat) + if EXPORT_OBJECT_COORDINATES: + me.transform(EXPORT_GLOBAL_MATRIX) + else: + me.transform(EXPORT_GLOBAL_MATRIX * ob_mat) + if EXPORT_UV: faceuv = len(me.uv_textures) > 0 @@ -626,6 +635,7 @@ EXPORT_ANIMATION, EXPORT_GLOBAL_MATRIX, EXPORT_PATH_MODE, + EXPORT_OBJECT_COORDINATES, ): # Not used base_name, ext = os.path.splitext(filepath) @@ -675,6 +685,7 @@ EXPORT_CURVE_AS_NURBS, EXPORT_GLOBAL_MATRIX, EXPORT_PATH_MODE, + EXPORT_OBJECT_COORDINATES, ) scene.frame_set(orig_frame, 0.0) @@ -707,7 +718,8 @@ use_selection=True, use_animation=False, global_matrix=None, - path_mode='AUTO' + path_mode='AUTO', + use_object_coordinates=False ): _write(context, filepath, @@ -727,6 +739,7 @@ EXPORT_ANIMATION=use_animation, EXPORT_GLOBAL_MATRIX=global_matrix, EXPORT_PATH_MODE=path_mode, + EXPORT_OBJECT_COORDINATES=use_object_coordinates ) return {'FINISHED'} |