Webots Reference Manual - chapter 9 - section 2

Webots Reference Manual


9.2 Java API

The following tables describes the Java classes and their methods.

import com.cyberbotics.webots.controller.Accelerometer;
public class Accelerometer extends Device {
   public void enable(int ms);
   public void disable();
   int getSamplingPeriod();
   public double[] getValues();
}

import com.cyberbotics.webots.controller.Camera;
public class Camera extends Device {
   public final static int COLOR, RANGE_FINDER, BOTH;
   public void enable(int ms);
   public void disable();
   public int getSamplingPeriod();
   public double getFov();
   public void setFov(double fov);
   public int getWidth();
   public int getHeight();
   public double getNear();
   public double getMaxRange();
   public int getType();
   public int[] getImage();
   public static int imageGetRed(int[] image, int width, int x, int y);
   public static int imageGetGreen(int[] image, int width, int x, int y);
   public static int imageGetBlue(int[] image, int width, int x, int y);
   public static int imageGetGrey(int[] image, int width, int x, int y);
   public static int pixelGetRed(int pixel);
   public static int pixelGetGreen(int pixel);
   public static int pixelGetBlue(int pixel);
   public static int pixelGetGrey(int pixel);
   public float[] getRangeImage();
   public static float rangeImageGetDepth(float[] image,
     int width, int x, int y);
   public int saveImage(String filename, int quality);
}

import com.cyberbotics.webots.controller.Compass;
public class Compass extends Device {
   public void enable(int ms);
   public void disable();
   public int getSamplingPeriod();
   public double[] getValues();
}

import com.cyberbotics.webots.controller.Connector;
public class Connector extends Device {
   public void enablePresence(int ms);
   public void disablePresence();
   public int getPresence();
   public void lock();
   public void unlock();
}

import com.cyberbotics.webots.controller.Device;
public class Device {
   public String getName();
   public int getType();
}

import com.cyberbotics.webots.controller.DifferentialWheels;
public class DifferentialWheels extends Robot {
   public DifferentialWheels();
   protected void finalize();
   public void setSpeed(double left, double right);
   public void enableEncoders(int ms);
   public void disableEncoders();
   public int getEncodersSamplingPeriod();
   public double getLeftEncoder();
   public double getRightEncoder();
   public void setEncoders(double left, double right);
}

import com.cyberbotics.webots.controller.Display;
public class Display extends Device {
   public final static int RGB, RGBA, ARGB, BGRA;
   public int getWidth();
   public int getHeight();
   public void setColor(int color);
   public void setAlpha(double alpha);
   public void setOpacity(double opacity);
   public void drawPixel(int x1, int y1);
   public void drawLine(int x1, int y1, int x2, int y2);
   public void drawRectangle(int x, int y, int width, int height);
   public void drawOval(int cx, int cy, int a, int b);
   public void drawPolygon(int[] x, int[] y);
   public void drawText(String txt, int x, int y);
   public void fillRectangle(int x, int y, int width, int height);
   public void fillOval(int cx, int cy, int a, int b);
   public void fillPolygon(int[] x, int[] y);
   public ImageRef imageCopy(int x, int y, int width, int height);
   public void imagePaste(ImageRef ir, int x, int y);
   public ImageRef imageLoad(String filename);
   public ImageRef imageNew(int width, int height, int[] data, int format);
   public void imageSave(ImageRef ir, String filename);
   public void imageDelete(ImageRef ir);
}

import com.cyberbotics.webots.controller.DistanceSensor;
public class DistanceSensor extends Device {
   public void enable(int ms);
   public void disable();
   public int getSamplingPeriod();
   public double getValue();
}

import com.cyberbotics.webots.controller.Emitter;
public class Emitter extends Device {
   public final static int CHANNEL_BROADCAST;
   public int send(byte[] data);
   public int getChannel();
   public void setChannel(int channel);
   public double getRange();
   public void setRange(double range);
   public int getBufferSize();
}

import com.cyberbotics.webots.controller.Field;
public class Field {
   public final static int SF_BOOL, SF_INT32, SF_FLOAT,
   SF_VEC2F, SF_VEC3F, SF_ROTATION, SF_COLOR, SF_STRING,
   SF_NODE, MF, MF_INT32, MF_FLOAT, MF_VEC2F, MF_VEC3F,
   MF_COLOR, MF_STRING, MF_NODE;
   public int getType();
   public String getTypeName();
   public int getCount();
   public bool getSFBool();
   public int getSFInt32();
   public double getSFFloat();
   public double[] getSFVec2f();
   public double[] getSFVec3f();
   public double[] getSFRotation();
   public double[] getSFColor();
   public String getSFString();
   public Node getSFNode();
   public int getMFInt32(int index);
   public double getMFFloat(int index);
   public double[] getMFVec2f(int index);
   public double[] getMFVec3f(int index);
   public double[] getMFColor(int index);
   public String getMFString(int index);
   public Node getMFNode(int index);
   public void setSFBool(bool value);
   public void setSFInt32(int value);
   public void setSFFloat(double value);
   public void setSFVec2f(double values[2]);
   public void setSFVec3f(double values[3]);
   public void setSFRotation(double values[4]);
   public void setSFColor(double values[3]);
   public void setSFString(String value);
   public void setMFInt32(int index, int value);
   public void setMFFloat(int index, double value);
   public void setMFVec2f(int index, double values[2]);
   public void setMFVec3f(int index, double values[3]);
   public void setMFColor(int index, double values[3]);
   public void setMFString(int index, String value);
   public void importMFNode(int position, String filename);
}

import com.cyberbotics.webots.controller.GPS;
public class GPS extends Device {
   public void enable(int ms);
   public void disable();
   public int getSamplingPeriod();
   public double[] getValues();
}

import com.cyberbotics.webots.controller.Gyro;
public class Gyro extends Device {
   public void enable(int ms);
   public void disable();
   public int getSamplingPeriod();
   public double[] getValues();
}

import com.cyberbotics.webots.controller.ImageRef;
public class ImageRef {
}

import com.cyberbotics.webots.controller.InertialUnit;
public class InertialUnit extends Device {
   public void enable(int ms);
   public void disable();
   public int getSamplingPeriod();
   public double[] getRollPitchYaw();
}
import com.cyberbotics.webots.controller.LED;
public class LED extends Device {
   public void set(int state);
}

import com.cyberbotics.webots.controller.LightSensor;
public class LightSensor extends Device {
   public void enable(int ms);
   public void disable();
   public int getSamplingPeriod();
   public double getValue();
}

import com.cyberbotics.webots.controller.Motion;
public class Motion {
   public Motion(String fileName);
   protected void finalize();
   public bool isValid();
   public void play();
   public void stop();
   public void setLoop(bool loop);
   public void setReverse(bool reverse);
   public bool isOver();
   public int getDuration();
   public int getTime();
   public void setTime(int time);
}

import com.cyberbotics.webots.controller.Node;
public class Node {
   public final static int NO_NODE, APPEARANCE, BACKGROUND,
   BOX, COLOR, CONE, COORDINATE, CYLINDER, DIRECTIONAL_LIGHT,
   ELEVATION_GRID, EXTRUSION, FOG, GROUP, IMAGE_TEXTURE,
   INDEXED_FACE_SET, INDEXED_LINE_SET, MATERIAL, POINT_LIGHT,
   SHAPE, SPHERE, SPOT_LIGHT, SWITCH, TEXTURE_COORDINATE,
   TEXTURE_TRANSFORM, TRANSFORM, VIEWPOINT, WORLD_INFO,
   CAPSULE, PLANE, ROBOT, SUPERVISOR, DIFFERENTIAL_WHEELS, SOLID,
   PHYSICS, CAMER_ZOOM, CHARGER, DAMPING,
   CONTACT_PROPERTIES, ACCELEROMETER, CAMERA, COMPASS,
   CONNECTOR, DISPLAY, DISTANCE_SENSOR, EMITTER, GPS, GYRO, LED,
   LIGHT_SENSOR, MICROPHONE, PEN, RADIO, RECEIVER, SERVO,
   SPEAKER, TOUCH_SENSOR;
   public int getType();
   public String getTypeName();
   public Field getField(String fieldName);
   public double[] getPosition();
   public double[] getOrientation();
}

import com.cyberbotics.webots.controller.Pen;
public class Pen extends Device {
   public void write(bool write);
   public void setInkColor(int color, double density);
}

import com.cyberbotics.webots.controller.Receiver;
public class Receiver extends Device {
   public final static int CHANNEL_BROADCAST;
   public void enable(int ms);
   public void disable();
   public int getSamplingPeriod();
   public int getQueueLength();
   public void nextPacket();
   public byte[] getData();
   public int getDataSize();
   public double getSignalStrength();
   public double[] getEmitterDirection();
   public void setChannel(int channel);
   public int getChannel();
}

import com.cyberbotics.webots.controller.Robot;
public class Robot {
   public final static int MODE_SIMULATION,
   MODE_CROSS_COMPILATION, MODE_REMOTE_CONTROL;
   public final static int KEYBOARD_END, KEYBOARD_HOME,
   KEYBOARD_LEFT, KEYBOARD_UP, KEYBOARD_RIGHT,
   KEYBOARD_DOWN, KEYBOARD_PAGEUP, KEYBOARD_PAGEDOWN,
   KEYBOARD_NUMPAD_HOME, KEYBOARD_NUMPAD_LEFT,
   KEYBOARD_NUMPAD_UP, KEYBOARD_NUMPAD_RIGHT,
   KEYBOARD_NUMPAD_DOWN, KEYBOARD_NUMPAD_END,
   KEYBOARD_KEY, KEYBOARD_SHIFT,
   KEYBOARD_CONTROL, KEYBOARD_ALT;
   public Robot();
   protected void finalize();
   public int step(int ms);
   public Accelerometer getAccelerometer(String name);
   public Camera getCamera(String name);
   public Compass getCompass(String name);
   public Connector getConnector(String name);
   public Display getDisplay(String name);
   public DistanceSensor getDistanceSensor(String name);
   public Emitter getEmitter(String name);
   public GPS getGPS(String name);
   public Gyro getGyro(String name);
   public InertialUnit getInertialUnit(String name);
   public LED getLED(String name);
   public LightSensor getLightSensor(String name);
   public Pen getPen(String name);
   public Receiver getReceiver(String name);
   public Servo getServo(String name);
   public TouchSensor getTouchSensor(String name);
   public void batterySensorEnable(int ms);
   public void batterySensorDisable();
   public int getBatterySensorSamplingPeriod();
   public double batterySensorGetValue();
   public double getBasicTimeStep();
   public int getMode();
   public String getModel();
   public String getName();
   public String getProjectPath();
   public bool getSynchronization();
   public double getTime();
   public void keyboardEnable(int ms);
   public void keyboardDisable();
   public int keyboardGetKey();
}

import com.cyberbotics.webots.controller.Servo;
public class Servo extends Device {
   public void setPosition(double position);
   public void setVelocity(double vel);
   public void setAcceleration(double force);
   public void setMotorForce(double motor_force);
   public void setControlP(double p);
   public void enablePosition(int ms);
   public void disablePosition();
   public int getPositionSamplingPeriod();
   public double getPosition();
   public void enableMotorForceFeedback(int ms);
   public void disableMotorForceFeedback();
   public int getMotorForceFeedbackSamplingPeriod();
   public double getMotorForceFeedback();
   public void setForce(double force);
}

import com.cyberbotics.webots.controller.Supervisor;
public class Supervisor extends Robot {
   public Supervisor();
   protected void finalize();
   public void exportImage(String file, int quality);
   public Node getRoot();
   public Node getFromDef(String name);
   public void setLabel(int id, String label, double xpos, double ypos,
     double size, int color, double transparency);
   public void simulationQuit(int status);
   public void simulationRevert();
   public void simulationPhysicsReset();
   public void startMovie(String file, int width, int height, int type, int quality);
   public void stopMovie();
}

import com.cyberbotics.webots.controller.TouchSensor;
public class TouchSensor extends Device {
   public void enable(int ms);
   public void disable();
   public int getSamplingPeriod();
   public double getValue();
   public double[] getValues();
}

release 7.0.2
Copyright © 2012 Cyberbotics Ltd. All right reserved.