...
As of now, there is a limitation when combining direct temporal functions and normal functions in one expression. In that case, Odysseus creates an error message and you have to split your expression in multiple consecutive map operators. This is because the temporal feature creates a TemporalRelationalExpression
for the whole expression, which then evaluates it in a non-temporal way. Unfortunately, the temporal function needs a temporal value as its input and not a non-temporal value. Splitting the expression in two parts helps here, as the following example shows with Trajectory
being a direct temporal function and SpatialLength
a normal non-temporal function:
Code Block |
---|
// Not possible calcTraj = MAP( { expressions = [[ ’ SpatialLength ( Trajectory ( tempSpatialPoint , PredictionTimes ) ) ’ , ’traj ’]], keepinput = true } , predTime ) // Possible calcTraj = MAP( { expressions = [[ ’ Trajectory ( tempSpatialPoint , PredictionTimes ) ’ , ’ traj ’]], keepinput = true } , predTime ) MAP({ expressions = [[’SpatialLength(traj)’,’len’]], keepinput = true } , calcTraj ) |
...