Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 15/11/2012 at 00:04, xxxxxxxx wrote:
Just tinkering - I know this isnt correct - but any feedback appreciated
Trying to get a random sort mograph clones by shuffling the clone array
I can randomise or reverse on a particular frame but not keep the randomisation
if (frame >= 70) : random.shuffle(marr) constantly shuffles - not wanted
if (frame == 70) : random.shuffle(marr) shuffles on that one frame then resets to original order on 71 - not wanted
any ideas
import c4d from c4d.modules import mograph as mo import math, random #Welcome to the world of Python def main() : md = mo.GeGetMoData(op) if md==None: return False cnt = md.GetCount() marr = md.GetArray(c4d.MODATA_MATRIX) fall = md.GetFalloffs() #marr.reverse() #just reverse #marr.append(marr.pop(0)) #another reverse frame = doc.GetTime().GetFrame(doc.GetFps()) if (frame >= 70) : random.shuffle(marr) for i in reversed(xrange(0, cnt)) : marr _.off = marr _.off__ _ _ #if (i == 4) : marr.reverse() # experimen__ _ _ md.SetArray(c4d.MODATA_MATRIX, marr, True)__ _ _ return True__ __ _ _
__
On 15/11/2012 at 12:51, xxxxxxxx wrote:
try this ---->
_import c4d from c4d.modules import mograph as mo import math, random #Welcome to the world of Python def my_shuffle(array) : random.shuffle(array) return array def main() : md = mo.GeGetMoData(op) if md==None: return False cnt = md.GetCount() marr = md.GetArray(c4d.MODATA_MATRIX) fall = md.GetFalloffs() global marr1 try: marr = marr1 except NameError: pass frame = doc.GetTime().GetFrame(doc.GetFps()) if (frame == 20) : marr1 = my_shuffle(marr) for i in reversed(xrange(0, cnt)) : marr[i].off = marr[i].off md.SetArray(c4d.MODATA_MATRIX, marr, True) return True ___ _ ___
On 15/11/2012 at 13:07, xxxxxxxx wrote:
Brilliant - thanks douwe
changed third to last line
marr (square bracket)i (square bracket).off _ = marr ._ (square bracket) _ i_ (square bracket).off
On 15/11/2012 at 16:17, xxxxxxxx wrote:
Ye, bad things happen when one forgets to use the correct BBcode. fixed.
Glad to help you out, although it feels like cheating every time i resort to the NameError trick.
On 16/11/2012 at 03:52, xxxxxxxx wrote:
Yup same post as you spotted douwe
I started with the thought about shuffling the array - but then I got stuck on the code
Will post the whole thing back there included scene file (as we can't do that here)
The only issue I've found (I guess its to do with the global setting) if you change clone numbers or setup then you have to recompile
http://www.c4dcafe.com/ipb/topic/72221-change-the-order-of-clones-in-a-grid/page__gopid__521195#entry521195
On 19/11/2012 at 04:58, xxxxxxxx wrote:
Anyone have any suggestions of how to get over having to reset the effector,
every time the clone count and or type gets changed?