コード例 #1
0
        public TransformListener()
        {
            if (buf == IntPtr.Zero)
            {
                buf = TransformListenerDelegates.native_construct_buffer();
            }

            if (listener == IntPtr.Zero)
            {
                listener = TransformListenerDelegates.native_construct_listener(buf);
            }
        }
コード例 #2
0
        /// <summary>
        /// Returns the ROS2 rotation between frames 'from' and 'to', or null
        /// if one or more of the frames do not exist.
        /// </summary>
        /// <param name="from"></param>
        /// <param name="to"></param>
        /// <returns></returns>
        public TfQuaternion?LookupRotation(string from, string to)
        {
            IntPtr transformHandle = IntPtr.Zero;

            transformHandle = TransformListenerDelegates.native_lookup_transform(buf,
                                                                                 from, to, TransformListenerDelegates.native_construct_time(0, 0));

            if (transformHandle == IntPtr.Zero)
            {
                return(null);
            }

            TfQuaternion output = new TfQuaternion();

            TransformListenerDelegates.native_retrieve_rotation(transformHandle, out output);
            return(output);
        }