serial 1 %SerialObject 0 %Float 1 %ArrayOfDataTypes %Float %Float X:%Float,Y:%Float,Z:%Float 1 1 %Status %String 1 Graden:%Float %Float 1 Radialen:%Float %Float %Boolean v2:Vector Vector v2:Vector %Float v2:Vector Vector V2:Vector Digits=5 Vector Clips the vector between 0 and the given maximum value for each coordinate MaxX:%Float,MaxY:%Float,MaxZ:%Float Vector MaxX: MaxX, 1: ..X) Set YRes = $Select(..Y<0: 0, ..Y>MaxY: MaxY, 1: ..Y) Set ZRes = $Select(..Z<0: 0, ..Z>MaxZ: MaxZ, 1: ..Z)*/ Set XRes = $Select(..X>MaxX: MaxX, 1: ..X) Set YRes = $Select(..Y>MaxY: MaxY, 1: ..Y) Set ZRes = $Select(..Z>MaxZ: MaxZ, 1: ..Z) Quit ..%New(XRes, YRes, ZRes) ]]> %Float Vector Vector v2:Vector %Float Angle:%Float Vector Angle:%Float Vector Angle:%Float Vector Rotate the vector around another vector over an angle. The other vector needs to a unit vector. Angle:%Float,Around:Vector Vector %Library.CacheSerialState VectorState ^TECH.VectorS listnode "TECH.Vector" X Y Z