[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [2315] trunk/py/scripts/addons/modules/ extensions_framework/util.py: extensions_framework: add getSequenceTexturePath function to utils module

Doug Hammond doughammond at hamsterfight.co.uk
Wed Sep 7 16:28:37 CEST 2011


Revision: 2315
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=2315
Author:   dougal2
Date:     2011-09-07 14:28:37 +0000 (Wed, 07 Sep 2011)
Log Message:
-----------
extensions_framework: add getSequenceTexturePath function to utils module

Modified Paths:
--------------
    trunk/py/scripts/addons/modules/extensions_framework/util.py

Modified: trunk/py/scripts/addons/modules/extensions_framework/util.py
===================================================================
--- trunk/py/scripts/addons/modules/extensions_framework/util.py	2011-09-07 12:59:19 UTC (rev 2314)
+++ trunk/py/scripts/addons/modules/extensions_framework/util.py	2011-09-07 14:28:37 UTC (rev 2315)
@@ -230,3 +230,41 @@
 	hrs = td.days*24	+ td.seconds/3600.0
 	
 	return '%i:%02i:%02i' % (hrs, min%60, td.seconds%60)
+
+def getSequenceTexturePath(it, f):
+	import bpy.path
+	import os.path
+	import string
+	fd = it.image_user.frame_duration
+	fs = it.image_user.frame_start
+	fo = it.image_user.frame_offset
+	cyclic = it.image_user.use_cyclic
+	ext = os.path.splitext(it.image.filepath)[-1]
+	fb = bpy.path.display_name_from_filepath(it.image.filepath)
+	dn = os.path.dirname(it.image.filepath)
+	rf = fb[::-1]
+	nl = 0
+	for i in range (len(fb)):
+		if rf[i] in string.digits:
+			nl += 1
+		else:
+			break
+	head = fb[:len(fb)-nl]
+	fnum = f
+	if fs != 1:
+		if f != fs:
+			fnum -= (fs-1)
+		elif f == fs:
+			fnum = 1
+	if fnum <= 0:
+		if cyclic:
+			fnum = fd - abs(fnum) % fd
+		else:
+			fnum = 1
+	elif fnum > fd:
+		if cyclic:
+			fnum = fnum % fd
+		else:
+			fnum = fd
+	fnum += fo
+	return dn + "/" + head + str(fnum).rjust(nl, "0") + ext



More information about the Bf-extensions-cvs mailing list