reading values after time lapse
Dawson from Malaysia  [173 posts]
6 years
How do i read a variable (exp COG_X) value at Time = 1second ago and compare this with the current value (Time = current)

The chart_variables stores these values. How do i access it and what is the data capture rate?
Anonymous 6 years

You can use a bit of programming to accomplish this. Assuming that your pipeline runs at a max of 30 fps the following would give you COG values from about a second ago.

delaySize = 30

queuePos = GetVariable("cog_queue_pos")
queue = GetArrayVariable("cog_queue")
if not isArray(queue) or ubound(queue)<30 then
  ReDim queue(delaySize)
end if

delayedCog = queue(queuePos)
queue(queuePos) = GetVariable("COG_X")
queuePos = queuePos + 1
if queuePos>=delaySize then
  queuePos = 0
end if

SetArrayVariable "cog_queue", queue
SetVariable "cog_queue_pos", queuePos
SetVariable "delayed_cog", delayedCog

and your delayed value will now be in the variable delayed_cog. Note that delaySize specifies how old the variable will be. Also note that the first 30 sample will all be zero until the queue is filled ...

Dawson from Malaysia  [173 posts] 6 years
That's great thanks.

I managed to use the SetTimedVariable feature to accomplish a similar effect. It seems to work...

This forum thread has been closed due to inactivity (more than 4 months) or number of replies (more than 50 messages). Please start a New Post and enter a new forum thread with the appropriate title.

 New Post   Forum Index