Titania X3D Editor

Bring Colours to Your Life.

Titania v4.6.10

Bring Colours to Your Life.

X3D Reference



CylinderSensor converts pointer motion (for example, a mouse or wand) into rotation values using an invisible cylinder aligned with local Y-axis.

The CylinderSensor node belongs to the PointingDeviceSensor component and its container field is children. It is available since X3D version 3.0 or later.



SFNode [in, out] metadata NULL [X3DMetadataObject]

Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.

SFBool [in, out] enabled TRUE

Enables/disables node operation.

SFString [in, out] description ""

Author-provided text tooltip that tells users the expected action of this node.


Use spaces, make descriptions clear and readable. Many XML tools substitute XML character references automatically if needed (such as & for & ampersand, or " for " quotation mark).

SFRotation [in, out] axisRotation 0 0 1 0

AxisRotation determines local sensor coordinate system by rotating the local coordinate system.

SFFloat [in, out] diskAngle 0.261792 [0,π/2]

Help decide rotation behavior from initial relative bearing of pointer drag: acute angle whether cylinder sides or end-cap disks of virtual-geometry sensor are used for manipulation.


DiskAngle 0 forces disk-like behavior, diskAngle 1.570796 (90 degrees) forces cylinder-like behavior.

SFFloat [in, out] minAngle [-2π,2π]

Clamps rotation_changed events within range of min/max values


If minAngle > maxAngle, rotation is not clamped.

SFFloat [in, out] maxAngle -1 [-2π,2π]

Clamps rotation_changed events within range of min/max values


If minAngle > maxAngle, rotation is not clamped.

SFFloat [in, out] offset (-∞,∞)

Sends event and remembers last value sensed.


ROUTE connecting rotation_changed to set_offset creates a self-reinforcing positive feedback loop and results in unmanageable response.

SFBool [in, out] autoOffset TRUE

Determines whether previous offset values are remembered/accumulated.

SFVec3f [out] trackPoint_changed

TrackPoint_changed events give intersection point of bearing with sensor's virtual geometry.

SFRotation [out] rotation_changed

Rotation_changed events equal sum of relative bearing changes plus offset value about Y-axis in local coordinate system.

SFBool [out] isOver

Hover over geometry by aiming the mouse (or pointing device) to generate isOver events. Sensor sends output event isOver=true event when pointing device moves over sensor's geometry, and later sends output event isOver=false event when pointing device moves off.

SFBool [out] isActive

Select geometry by activating the pointing device (e.g. clicking the mouse) to generate isActive events. Output event isActive=true is sent when geometry is selected (e.g. when primary mouse button is pressed), output event isActive=false is sent when geometry is deselected (e.g. when primary mouse button is released).



  • This sensor detects user interactions affecting peer nodes and their child geometry.
  • Add semi-transparent surrounding geometry to see the effect of the sensor.
  • Initial relative bearing of pointer drag determines whether cylinder sides or end-cap disks are used for manipulation.


screenshot CylinderSensor

XML Encoding

Classic Encoding

JSON Encoding

Browser Compatibility

Titania X_ITE
yes yes

Cookies and other Technologies

By clicking »Accept« or continuing to use the site, you agree to the use of CREATE3000 and third-party cookies and other similar technologies to enhance your browsing experience, analyze and measure your engagement with our content, and provide more relevant ads on CREATE3000 websites and others. Learn more about cookies. You can withdraw your consent at any time.

create3000.de is going to be shut down next year, but we have a new clean and slick web site for you, go to new X_ITE web site, consider updating your X_ITE URL's, or go to new Titania web site or continue reading.