c4d Noise random seed

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 11/02/2012 at 14:26, xxxxxxxx wrote:

I am following this example form the sdk :

import c4d
from c4d.utils.noise import C4DNoise
from c4d import bitmaps
  
for i in range (1) :
    width = 256
    height = 256
    noisetype = c4d.NOISE_WAVY_TURB
    bmp =  bitmaps.BaseBitmap()
    bmp.Init(width, height, 24)
  
    p = C4DNoise(int(646))
    p.InitFbm(21, 2.1, 0.5)
  
    rw = float(width-1)
    rh = float(height-1)
  
    t = float(i*0.04)
    for x in xrange(width) :
        for y in xrange(height) :
            r = p.Noise(noisetype, False, c4d.Vector(x/rw, y/rh, 0) * 7, time = t , octaves=2)
            o = 255.0*r
            if o<0: o=0
            elif o>255: o=255
  
            bmp[x, y] = (o, o, o)
  
    bitmaps.ShowBitmap(bmp)

shouldn't the int in  p = C4DNoise(int(646)) change the bitmap result ? the seed value seems
to have no influence at all. just to clarify, i want to change the seed of my noise 🙂

the compiler returns this warning after execution :

 _FILEPATH_ :26: DeprecationWarning: integer argument expected, got float
  kZE_OdÚ'_Ç®_M_%P_o_ôDqI__I__Y

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 11/02/2012 at 14:42, xxxxxxxx wrote:

I could swear I once posted this bug in the BugReports section, but I just can't find it.
Yes it does not affect the noise which seems to be a bug, unfortunately. If you do not necessarily need the different noises, you could also use the random module.

import random   
random.seed(my_seed)   
print random.random()

Just to clarify, Python isn't compiled 🙂
However, that kZE_OdÚ'_Ç®_M_%P_o_ôDqI__I__Y is strange. 😠

Cheers,
-Niklas

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 11/02/2012 at 15:10, xxxxxxxx wrote:

ah found it, should have used the search function first, mea culpa.

https://plugincafe.maxon.net/topic/5847/5909_py4d--c4dnoise-seed&KW=noise

to your suggestion - i know the python random function but i do not really understand
what you do suggest ? i want to use  the c4dNoise class to replace the standard
c4d.utils.noise in our tp_xpresso_pyhton thingie setups. so pure random won't help.

but offsetting the input vector as a seed workarround sounds like a smart solution.
at least it will let your create some vectors.

thanks for your help 🙂

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 11/02/2012 at 15:18, xxxxxxxx wrote:

Lol, why didn't I find my own post? I really searched for it 😉

Well, after using random.sees([x]) function, values returned by random.random() are not "real random" any more. If you do not need the C4DNoise class for texturing or simiar (sth. where the "physics" of the noise really care) you can use the random-module instead. (e.g. random values for clones or alike, nobody will care if that offset came from a nice noisy texture or the random-module).

Cheers,
-Niklas

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 13/02/2012 at 02:16, xxxxxxxx wrote:

Originally posted by xxxxxxxx

the compiler returns this warning after execution :

_FILEPATH_ :26: DeprecationWarning: integer argument expected, got float

To not get this warning, change this (line 22) :

o = 255.0*r

with

o = int(255.0*r)

This error will be corrected in the next update of the documentation.

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 13/02/2012 at 16:26, xxxxxxxx wrote:

ah,

thanks, did this (i  think the proterm is casting, isn't it ?) with the random seed, because
i thought it matters that the seed is specificly int, but i don't really get it why i have to
do this here. r is float and you multiply it with an int (255).  i thought the advantage of
a type free language is that you do not have to think about things like this ?

nevertheless might it be possible to get also an answer on my question regarding 
gvoperatordata iny pyhton - is it possible to write custom xpresso nodes in python ?

https://plugincafe.maxon.net/topic/6236/6586_gvoperatordata-in-python-

thanks for your help 🙂