Regular API function

simHandleProximitySensor / sim.handleProximitySensor

Description Handles (performs sensing, etc. of) a registered proximity sensor object. See also sim.readProximitySensor, sim.checkProximitySensor, sim.checkProximitySensorEx and sim.resetProximitySensor.
C/C++
synopsis
simInt simHandleProximitySensor(simInt sensorHandle,simFloat* detectedPoint,simInt* detectedObjectHandle,simFloat* detectedSurfaceNormalVector)
C/C++
parameters
sensorHandle: handle of a proximity sensor object or sim.handle_all or sim.handle_all_except_explicit. (sim.handle_all will handle all proximity sensor objects, while sim.handle_all_except_explicit will only handle those that are not marked as "explicit handling")
detectedPoint: coordinates of the closest detected point (x, y and z: detectedPoint[0]-detectedPoint[2]) relative to the sensor reference frame, and distance to the detected point (1 value: detectedPoint[3]). Can be nullptr
detectedObjectHandle: handle of the object that was detected. Can be nullptr
detectedSurfaceNormalVector: normal vector (normalized) of the detected surface. Relative to the sensor reference frame. Can be nullptr

When several proximity sensors are handled at the same time (e.g. with the sim.handle_all argument), then the output values are relative to the closest detection distance
C/C++
return value
0 if nothing was detected, -1 in case of an error.
Lua
synopsis
int result,float distance,float[3] detectedPoint,int detectedObjectHandle,float[3] detectedSurfaceNormalVector=sim.handleProximitySensor(int sensorHandle)
Lua
parameters
sensorHandle: handle of a proximity sensor object or sim.handle_all or sim.handle_all_except_explicit. (sim.handle_all will handle all proximity sensor objects, while sim.handle_all_except_explicit will only handle those that are not marked as "explicit handling")
Lua
return values
result: 0 if nothing was detected
distance: distance to the detected point
detectedPoint: table of 3 numbers indicating the relative coordinates of the detected point
detectedObjectHandle: handle of the object that was detected
detectedSurfaceNormalVector: normal vector (normalized) of the detected surface. Relative to the sensor reference frame.

When several proximity sensors are handled at the same time (e.g. with the sim.handle_all argument), then the return values are relative to the closest detection distance
Python
synopsis
int result,float distance,list detectedPoint,int detectedObjectHandle,list detectedSurfaceNormalVector=sim.handleProximitySensor(int sensorHandle)