On this page

MultiDOFJointStateSubscriber QML Type

Subscribes to sensor_msgs::msg::MultiDOFJointState messages — Representation of state for joints with multiple degrees of freedom, following the structure of JointState which can only represent a single degree of freedom. More...

Import Statement: import QtRos2.SensorMsgs
Inherits:

SubscriberBase

Status: Experimental Extension

Properties

Signals

Detailed Description

It is assumed that a joint in a system corresponds to a transform that gets applied along the kinematic chain. For example, a planar joint (as in URDF) is 3DOF (x, y, yaw) and those 3DOF can be expressed as a transformation matrix, and that transformation matrix can be converted back to (x, y, yaw)

Each joint is uniquely identified by its name The header specifies the time at which the joint states were recorded. All the joint states in one message have to be recorded at the same time.

This message consists of a multiple arrays, one for each part of the joint state. The goal is to make each of the fields optional. When e.g. your joints have no wrench associated with them, you can leave the wrench array empty.

All arrays in this message should have the same size, or be empty. This is the only way to uniquely associate the joint name with the correct states.

MultiDOFJointStateSubscriber receives multiDOFJointState values from a ROS 2 topic. Set the topic and node properties, then connect to the messageReceived() signal.

See also MultiDOFJointStatePublisher and multiDOFJointState.

Property Documentation

header : header

The header field of the last received message. Updated whenever a new message arrives. headerChanged is emitted on every update.

jointNames : list<string>

The jointNames field of the last received message. Updated whenever a new message arrives. jointNamesChanged is emitted on every update.

message : multiDOFJointState

The last message received on topic. Updated whenever a new message arrives.

transforms : list<transform>

The transforms field of the last received message. Updated whenever a new message arrives. transformsChanged is emitted on every update.

twist : list<twist>

The twist field of the last received message. Updated whenever a new message arrives. twistChanged is emitted on every update.

wrench : list<wrench>

The wrench field of the last received message. Updated whenever a new message arrives. wrenchChanged is emitted on every update.

Signal Documentation

messageReceived(multiDOFJointState msg)

Emitted when a new multiDOFJointState arrives on topic. msg contains the received value.

Note: The corresponding handler is onMessageReceived.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.