From f554b2a392214d1c00ac4c0b361d7ca5ef97d2e4 Mon Sep 17 00:00:00 2001 From: Stefania Pedrazzi Date: Fri, 24 Jun 2016 11:58:25 +0200 Subject: [PATCH 01/15] Port new node and api documentation from old doc format --- reference/bvh-functions.md | 13 ++ reference/bvh.md | 212 +++++++++++++++++++++++++++ reference/menu.md | 3 + reference/nodes-and-api-functions.md | 1 + reference/skin.md | 97 ++++++++++++ 5 files changed, 326 insertions(+) create mode 100644 reference/bvh-functions.md create mode 100644 reference/bvh.md create mode 100644 reference/skin.md diff --git a/reference/bvh-functions.md b/reference/bvh-functions.md new file mode 100644 index 000000000..af181e7b9 --- /dev/null +++ b/reference/bvh-functions.md @@ -0,0 +1,13 @@ +# BVH Functions + +The Biovision Hierarchy animation file format (.bvh) was developed to capture and distribute motion capture data, typically of humans performing actions such as walking, running, etc. +This file format was developed by the Biovision company (now defunct). +There are several freely available human motion capture data resources in BVH format, which can be used for making animations. +This BVH utility is provided to enable reading BVH files and animate human models defined as [Skin](#skin) node in Webots. + +The BVH files define a skeleton in the form of hierarchy of bones, and a time series of joint angles for each joint in the skeleton. Note that this skeleton is not necessarily the same as the skeleton associated with a Webots [Skin](#skin) node, since they come from different sources. +This library provides functions to adapt and re-target BVH motion data to Webots [Skin](#skin). + + +## Sections +- [BVH Utility Functions](bvh.md) diff --git a/reference/bvh.md b/reference/bvh.md new file mode 100644 index 000000000..74775126e --- /dev/null +++ b/reference/bvh.md @@ -0,0 +1,212 @@ +## BVH Utility Functions + +**Name** + +**wbu\_bvh\_read\_file**, **wbu\_bvh\_cleanup** - *obtaining and releasing a BVH file handle.* + +{[C++](cpp-api.md#cpp_bvh)}, {[Java](java-api.md#java_bvh)}, {[Python](python-api.md#python_bvh)}, {[Matlab](matlab-api.md#matlab_bvh)}, {[ROS](ros-api.md)} + +``` c +#include + +WbBvhDataRef wbu_bvh_read_file(const char *filename) +void wbu_bvh_cleanup(WbBvhDataRef motion) +``` + +**Description** + +The function `wbu_bvh_read_file` parses the hierarchical skeleton data and motion data in the specified BVH file. +The `filename` can be specified either with an absolute path or a path relative to the controller directory. +The function returns a `WbBvhDataRef` object, which is a reference to the data read from the BVH file. +This object is null if there is an error in reading the BVH file, for example when the file is corrupt or the path is incorrect. + +The `wbu_bvh_cleanup` function frees all the memory associated with the `WbBvhDataRef` object. +After this function is called the corresponding `WbBvhDataRef` object can no longer be used. + + > **note** [C++, Java, Python]: + In object-oriented languages there is no `wbu_bvh_cleanup()` function because it is automatically called by the destructor. + +--- + +**Name** + +**wbu\_bvh\_get\_joint\_count**, **wbu\_bvh\_get\_joint\_name**, **wbu\_bvh\_get\_frame\_count**, **wbu\_bvh\_set\_scale** - *query number of joints, joint names, and number of frames in the BVH file, and set scale for translation data.* + +{[C++](cpp-api.md#cpp_bvh)}, {[Java](java-api.md#java_bvh)}, {[Python](python-api.md#python_bvh)}, {[Matlab](matlab-api.md#matlab_bvh)} + +``` c +#include + +int wbu_bvh_get_joint_count(WbBvhDataRef ref) +const char* wbu_bvh_get_joint_name(WbBvhDataRef ref, int joint_index) +int wbu_bvh_get_frame_count(WbBvhDataRef ref) +void wbu_bvh_set_scale(WbBvhDataRef ref, double scale) +``` + +**Description** + +The function `wbu_bvh_get_joint_count` returns the number of joints defined in the loaded BVH file. + + +The function `wbu_bvh_get_joint_name` returns the name of the joint indexed by the number `joint_index` in the loaded BVH file. + +The function `wbu_bvh_get_frame_count` returns the number of frames of motion data in the loaded BVH file. Each frame corresponds to one entry of time-series data. + + +The function `wbu_bvh_set_scale()` sets the scale factor, which is used to scale the translation data form the BVH animation file. The scale factor is 1.0 by default. Note that this value does not affect the rotation data. + +--- + +**Name** + +**wbu\_bvh\_step**, **wbu\_bvh\_goto\_frame**, **wbu\_bvh\_reset** - +*read next frame, read a specific frame, or jump to first frame.* + +{[C++](cpp-api.md#cpp_bvh)}, {[Java](java-api.md#java_bvh)}, {[Python](python-api.md#python_bvh)}, {[Matlab](matlab-api.md#matlab_bvh)} + +``` c +#include + +bool wbu_bvh_step(WbBvhDataRef ref) +bool wbu_bvh_goto_frame(WbBvhDataRef ref, int frame_number) +bool wbu_bvh_reset(WbBvhDataRef ref) +void wbu_bvh_set_scale(WbBvhDataRef ref, double scale) +``` + +**Description** + +The function `wbu_bvh_step` reads the joint angles and translation data in the next frame. +This function is typically called at the beginning of the main loop. +If the current frame is the last frame in the BVH file, calling this function reads the first frame again. +Returns true on success. + +The function `wbu_bvh_goto_frame` reads a specific frame, whose index is the argument `frame_number`. Returns true on success. +Note that if the argument `frame_number` is greater than the number of frames in the file, it leads to an error, and the function returns false. + + +The function `wbu_bvh_reset` jumps to the first frame. +Returns true on success. + +``` c +void main() { + WbBvhDataRef ref = wbu_bvh_read_file(filename); + do { + wbu_bvh_step(ref); + + // Read the joint angles and do something + } while (condition); +} + +``` + +--- + +**Name** + +**wbu\_bvh\_get\_joint\_rotation**, **wbu\_bvh\_get\_root\_translation** - +*get the joint rotation for a specific joint and the BVH object translation.* + +{[C++](cpp-api.md#cpp_bvh)}, {[Java](java-api.md#java_bvh)}, {[Python](python-api.md#python_bvh)}, {[Matlab](matlab-api.md#matlab_bvh)} + +``` c +#include + +double *wbu_bvh_get_joint_rotation(WbBvhDataRef ref, int joint_index) +double *wbu_bvh_get_root_translation(WbBvhDataRef ref) +``` + +**Description** + +The function `wbu_bvh_get_joint_rotation` returns the rotation of the joint specified by `joint_index`. +The rotation is returned as an array of double. +The function `wbu_bvh_get_root_translation` returns the translation of the BVH object. +The translation is returned as an array of double. +This is typically used to set the translation of the [Skin](#skin) node that is being animated by this BVH file. +The values can wither be used directly, or scaled using the `wbu_bvh_set_scale` function. + +``` c +void main() { + WbBvhDataRef ref = wbu_bvh_read_file(filename); + int i = 0; + do { + wbu_bvh_step(ref); + for(i=0; i < joint_count; ++i){ + double *rotation = wbu_bvh_get_joint_rotation(ref, i); + double axis_x = rotation[0]; + double axis_y = rotation[1]; + double axis_z = rotation[2]; + double angle = rotation[3]; + // Do something with the joint angles + } + double *position = wbu_bvh_get_root_translation(ref); + double x = position[0]; + double y = position[1]; + double z = position[2]; + // Do something with the translation + } while (condition); +} +``` + +--- + +**Name** + +**wbu\_bvh\_set\_rest\_pose** - +*specify the rest pose of the skeleton for which this BVH file is being used.* + +{[C++](cpp-api.md#cpp_bvh)}, {[Java](java-api.md#java_bvh)}, {[Python](python-api.md#python_bvh)}, {[Matlab](matlab-api.md#matlab_bvh)} + +``` c +#include + +bool *wbu_bvh_set_rest_pose(WbBvhDataRef ref, const char* rest_pose_filename) +``` + +**Description** + +The function `wbu_bvh_set_rest_pose` sets the rest pose of the skeleton, i.e. the pose the skeleton should have if all the rotations are set to zero. +In other words, this is the initial reference pose relative to which all rotations are specified. +It is necessary to set the rest pose in some cases, because while the BVH file may record joint rotations relative to a certain pose, the object model which is being animated might have a different reference pose, and this difference needs to be taken into account. + +The rest pose is specified in a text file in the format shown below. +The first string is the joint name. +The next four numbers represent a quaternion, with its elements in the order [w, x, y, z]. +It is not necessary to specify rest pose for all joints. +No rest pose is set for those joints which are not present in the rest pose file. + +``` +lThigh: 0.98477, 0.173642, 0.00151535, -0.00859396 +rThigh: 0.98477, 0.173642, -0.00151535, 0.00859396 +abdomen: 0.976296, 0.21644, 0, 0 +``` + +This function must be called before calling wbu_bvh_adapt_skeleton(). + +--- + +**Name** + +**wbu\_bvh\_adapt\_skeleton** - +*adapt the skeleton specified in the BVH file to be able to re-target the BVH motion data for animating of a [Skin](#skin) node.* + +{[C++](cpp-api.md#cpp_bvh)}, {[Java](java-api.md#java_bvh)}, {[Python](python-api.md#python_bvh)}, {[Matlab](matlab-api.md#matlab_bvh)} + +``` c +#include + +bool *wbu_bvh_adapt_skeleton(WbBvhDataRef ref, int num_joints, const char** joint_name_list) +``` + +**Description** + +The `wbu_bvh_adapt_skeleton` adapts the skeleton defined in the BVH file to be able to re-target the BVH motion data to the [Skin](#skin) Node. +This is necessary because the skeleton of the [Skin](#skin) node will generally be different from the skeleton defined in the BVH file. +The difference can be in the joint hierarchy and in the number of joints. +Therefore, firstly, the extra joints in the BVH file must be removed. +Further, since the joint rotations are specified as relative to parent joints, they must be recomputed in case a joint is removed. +This computation is done by this function. + +The arguments to this function are the number of joints and the list of joints names in the [Skin](#skin) node. +They can be obtained by calling the functions `wb_skin_get_joint_count` and `wb_character_get_joint_name`. +Note that if the nomenclature of the joints in the [Skin](#skin) node is different from that of the BVH file, the names have to be manually translated. +Please refer to the advanced sample project in "WEBOTS\_HOME/projects/humans/skin_animation/" directory for an example of how this is done. diff --git a/reference/menu.md b/reference/menu.md index 034666ed3..e6e74a011 100644 --- a/reference/menu.md +++ b/reference/menu.md @@ -71,6 +71,7 @@ - [RotationalMotor](rotationalmotor.md) - [Servo](servo.md) - [Shape](shape.md) + - [Skin](skin.md) - [SliderJoint](sliderjoint.md) - [Slot](slot.md) - [Solid](solid.md) @@ -90,6 +91,8 @@ - [Zoom](zoom.md) - [Motion Functions](motion-functions.md) - [Motion](motion.md) +- [BVH Functions](bvh-functions.md) + - [BVH Utility Library](bvh.md) - [PROTO](proto.md) - [PROTO Definition](proto-definition.md) - [PROTO Instantiation](proto-instantiation.md) diff --git a/reference/nodes-and-api-functions.md b/reference/nodes-and-api-functions.md index cb364752e..5691a14e6 100644 --- a/reference/nodes-and-api-functions.md +++ b/reference/nodes-and-api-functions.md @@ -65,6 +65,7 @@ - [RotationalMotor](rotationalmotor.md) - [Servo](servo.md) - [Shape](shape.md) +- [Skin](skin.md) - [SliderJoint](sliderjoint.md) - [Slot](slot.md) - [Solid](solid.md) diff --git a/reference/skin.md b/reference/skin.md new file mode 100644 index 000000000..b92d53532 --- /dev/null +++ b/reference/skin.md @@ -0,0 +1,97 @@ +## Skin + +Derived from [Device](device.md). + +``` +Skin { + SFVec3f translation 0 0 0 + SFRotation rotation 0 1 0 0 + SFString name "skin" + SFString model "" +} +``` + +### Description + +The [Skin](#skin) node can be used to model an animated character in the simulation world, for example, a human, or an animal. +There are two aspects of the node: a skin mesh and a skeleton. +The skin mesh is attached to the skeleton, and the rotation of the skeleton joints results in appropriate deformation of the skin mesh. +The [Skin](#skin) node imports skin mesh and its associated skeleton from XML files, placed inside a folder with the same name as the XML file names, within the "skins" subdirectory of the current project directory. +Such XML files of models of characters (skin mesh and skeleton) can be generated using a 3D modeling software like Blender (TM). +Makehuman (TM) is a tool for generating models of humans. The human characters in the provided samples are generated using Makehuman (TM). +The [Skin](#skin) can be animated by changing the rotation of its joints as a function of time. + +### Field Summary + +- The `translation` field defines the translation from the parent coordinate system to the children's coordinate system. + +- The `rotation` field defines an arbitrary rotation of the children's coordinate system with respect to the parent coordinate system. +Please refer to [Tranfsorm](#transform) `rotation` field description for more information. + +- `name`: name of the model to be imported. +For example, if the model name is "test_model", it imports the XML files "test_model.skeleton.xml", "test_model.mesh.xml" and "test_model.material" placed in the "skins/test_model/" subdirectory, inside the current project directory. + +- `restPosePath`: path to a file containing the rest pose of the skin model. +Rest pose is the pose the object should have if all the rotations are set to zero. +In other words, this is the initial reference pose relative to which all rotations are specified. +This is needed when we want to re-target pose data from another source and animate the character. +For example, this source could be a motion file. +In that case, the rest pose of this character node and the rest pose defined in the motion file must be similar. +This field may be an absolute path, or a path relative to current project directory. +The rest pose is specified in a text file in the format shown below. +Thefirst number is the joint id, as specified in the .skeleton file. +The next four numbers represent a quaternion, with its elements in the order [w, x, y, z]. +It is not necessary to specify rest pose for all joints. +No rest pose is set for those joints which are not present in the rest pose file. +``` +2: 0.98477, 0.173642, 0.00151535, -0.00859396 +3: 0.98477, 0.173642, -0.00151535, 0.00859396 +5: 0.976296, 0.21644, 0, 0 +``` + +### Skin Functions + +**Name** + +**wb\_skin\_get\_joint\_count**, **wb\_skin\_get\_joint\_name** - *get the number and the names of joints in the skeleton of loaded skin model.* + +{[C++](cpp-api.md#cpp_skin)}, {[Java](java-api.md#java_skin)}, {[Python](python-api.md#python_skin)}, {[Matlab](matlab-api.md#matlab_skin)}, {[ROS](ros-api.md)} + +``` c +#include + +int wb_skin_get_joint_count(WbDeviceTag tag) +const char *wb_skin_get_joint_name(WbDeviceTag tag, int index) +``` + +**Description** + +The function `wb_skin_get_joint_count` returns the total number of joints in the skeleton loaded by the [Skin](#skin) node. +The joints are indexed starting from 0. + +--- + +**Name** + +**wb\_skin\_set\_joint\_angle\_relative**, **wb\_skin\_set\_joint\_angle\_absolute** - +*set the joint angle, either relative to parent joint or in the absolute world coordinate frame.* + +{[C++](cpp-api.md#cpp_skin)}, {[Java](java-api.md#java_skin)}, {[Python](python-api.md#python_skin)}, {[Matlab](matlab-api.md#matlab_skin)}, {[ROS](ros-api.md)} + +``` c +#include + +void wb_character_set_joint_angle_relative(WbDeviceTag tag, const double rotation[4]) +void wb_character_set_joint_angle_absolute(WbDeviceTag tag, const double rotation[4]) +``` + +**Description** + +These functions set the rotation of the joint to the specified axis-angle value. +The rotation is specified as a double array, similar to `wb_supervisor_field_set_sf_rotation` [Supervisor](#supervisor) node. + +The function `wb_character_set_joint_angle_relative` sets the joint angle relative to the parent joint. +The function `wb_character_set_joint_angle_absolute` sets the joint angle with respect to the absolute world frame. + +> **note**: +Please look at the example in "WEBOTS\_HOME/projects/humans/skin_animation/" directory for further information. From 4fab4832e1ab1c4b6f02a1b5144f75123cc96c90 Mon Sep 17 00:00:00 2001 From: Stefania Pedrazzi Date: Tue, 28 Jun 2016 08:51:35 +0200 Subject: [PATCH 02/15] Define a single function for setting the relative or absolute joint angle --- reference/skin.md | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/reference/skin.md b/reference/skin.md index b92d53532..12654188e 100644 --- a/reference/skin.md +++ b/reference/skin.md @@ -73,25 +73,22 @@ The joints are indexed starting from 0. **Name** -**wb\_skin\_set\_joint\_angle\_relative**, **wb\_skin\_set\_joint\_angle\_absolute** - -*set the joint angle, either relative to parent joint or in the absolute world coordinate frame.* +**wb\_skin\_set\_joint\_angle** - *set the joint angle.* {[C++](cpp-api.md#cpp_skin)}, {[Java](java-api.md#java_skin)}, {[Python](python-api.md#python_skin)}, {[Matlab](matlab-api.md#matlab_skin)}, {[ROS](ros-api.md)} ``` c #include -void wb_character_set_joint_angle_relative(WbDeviceTag tag, const double rotation[4]) -void wb_character_set_joint_angle_absolute(WbDeviceTag tag, const double rotation[4]) +void wb_character_set_joint_angle(WbDeviceTag tag, int index, const double rotation[4], bool absolute) ``` **Description** -These functions set the rotation of the joint to the specified axis-angle value. +This function sets the rotation of the joint to the specified axis-angle value. The rotation is specified as a double array, similar to `wb_supervisor_field_set_sf_rotation` [Supervisor](#supervisor) node. - -The function `wb_character_set_joint_angle_relative` sets the joint angle relative to the parent joint. -The function `wb_character_set_joint_angle_absolute` sets the joint angle with respect to the absolute world frame. +If the `absolute` argument is false the joint angle is set relative to the parent joint, otherwise the joint angle is set with respect to the absolute world frame. +The joints are indexed starting from 0. > **note**: Please look at the example in "WEBOTS\_HOME/projects/humans/skin_animation/" directory for further information. From f4099b80b07d4136128c2affd2d0f18f3d1828cd Mon Sep 17 00:00:00 2001 From: Stefania Pedrazzi Date: Thu, 7 Jul 2016 16:55:25 +0200 Subject: [PATCH 03/15] Update Skin node --- reference/skin.md | 54 +++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 45 insertions(+), 9 deletions(-) diff --git a/reference/skin.md b/reference/skin.md index 12654188e..934e0ad56 100644 --- a/reference/skin.md +++ b/reference/skin.md @@ -6,20 +6,40 @@ Derived from [Device](device.md). Skin { SFVec3f translation 0 0 0 SFRotation rotation 0 1 0 0 + SFVec3f scale 1 1 1 SFString name "skin" SFString model "" + SFString restPosePath "" + MFNode bones [] + SFBool castShadows TRUE } ``` ### Description The [Skin](#skin) node can be used to model an animated character in the simulation world, for example, a human, or an animal. -There are two aspects of the node: a skin mesh and a skeleton. -The skin mesh is attached to the skeleton, and the rotation of the skeleton joints results in appropriate deformation of the skin mesh. -The [Skin](#skin) node imports skin mesh and its associated skeleton from XML files, placed inside a folder with the same name as the XML file names, within the "skins" subdirectory of the current project directory. -Such XML files of models of characters (skin mesh and skeleton) can be generated using a 3D modeling software like Blender (TM). +The skin mesh is imported from Ogre XML files specified by the `model` name. +But in order to be animated it has to be attached to a skeleton so that the rotation of the skeleton joints results in appropriate deformation of the skin mesh. +This nodes provides two alternative ways to define a skeleton. +The first method consists in providing an Ogre XML Skeleton file that will having the same file name as the Ogre XML Mesh file. +Otherwise it is possible to list [Solid](#solid) noded corresponding to the mesh bones using the `bones` field. +If in the first case the resulting object animation will be purely graphical, when linking the [Skin](#skin) to an existing Webots skeleton made of [Solid](#solid) and [Joint](#joint) nodes it is possible to animate an dynamic object. + +The XML files containing the skin mesh and skeleton model files can be generated using a 3D modeling software like Blender (TM) and using the plugin to export to Ogre. Makehuman (TM) is a tool for generating models of humans. The human characters in the provided samples are generated using Makehuman (TM). -The [Skin](#skin) can be animated by changing the rotation of its joints as a function of time. + +#### Physically driven skin animation + +If you want that the skin is animated based on the movements of a dynamic object then you have to specify skeleton by listing the [Solid](#solid) nodes corresponding to the skeleton bones in the `bones` field. +Each [Solid](#solid) bone have to be a child node of a [Joint](#joint). +Moreover mesh bone structure and the [Solid](#solid)/[Joint](#joint) have to match. +In particular this means that the number of mesh bones have to match with the number of joints. + + +#### Pure graphical skin animation + +For a purely graphical skin animation the `bones` field doesn't have to be specified. +In this case the skeleton needed to animate the skin is expected to be loaded from a file named ".skeleton.xml", where corresponds to the `model` field value, and located in the same folder as the mesh and material files. ### Field Summary @@ -28,8 +48,12 @@ The [Skin](#skin) can be animated by changing the rotation of its joints as a fu - The `rotation` field defines an arbitrary rotation of the children's coordinate system with respect to the parent coordinate system. Please refer to [Tranfsorm](#transform) `rotation` field description for more information. -- `name`: name of the model to be imported. -For example, if the model name is "test_model", it imports the XML files "test_model.skeleton.xml", "test_model.mesh.xml" and "test_model.material" placed in the "skins/test_model/" subdirectory, inside the current project directory. +- The `scale` field specifies a possibly non-uniform scale of the mesh. Only positive values are permitted; non-positive values scale are automatically reset to 1. + +- `name`: name of the skin device and used by wb_robot_get_device(). + +- `model`: name of the model to be imported. +For example, if the model name is "test_model", it import the XML file "test_model.mesh.xml" and "test_model.material" placed in the "skins/test_model/" subdirectory, inside the current project directory. If the `bones` field is not defined it will also import "test_model.skeleton.xml". - `restPosePath`: path to a file containing the rest pose of the skin model. Rest pose is the pose the object should have if all the rotations are set to zero. @@ -49,6 +73,12 @@ No rest pose is set for those joints which are not present in the rest pose file 5: 0.976296, 0.21644, 0, 0 ``` +- The `bones` fields contains a list of [SolidReference](#solid_reference) nodes that provide the information to attach a Webots skeleton made of [Solid](#solid) and [Joint](#joint) nodes. +In order to setup correctly the skeleton, the solid have to be listed in the same order as specified in the mesh file. +This means that if in the mesh file the thigh bone is referenced using the index number 3, then the [SolidReference](#solid_reference) linking to the tigh [Solid](#solid) has to inserted in the `bones` field at index 3 as well. + +- The `castShadows` field allows the user to turn on (TRUE) or off (FALSE) shadows casted by this shape. Note that if the mesh triangle count is very big, the casted shadows will be automatically disabled. + ### Skin Functions **Name** @@ -60,15 +90,19 @@ No rest pose is set for those joints which are not present in the rest pose file ``` c #include -int wb_skin_get_joint_count(WbDeviceTag tag) -const char *wb_skin_get_joint_name(WbDeviceTag tag, int index) +int wb_skin_get_joint_count(WbDeviceTag tag); +const char *wb_skin_get_joint_name(WbDeviceTag tag, int index); ``` **Description** The function `wb_skin_get_joint_count` returns the total number of joints in the skeleton loaded by the [Skin](#skin) node. +The function `wb_skin_get_joint_name` returns the name of the joint at the specified index. The joints are indexed starting from 0. +This two functions are available both if using a Webots skeleton or a skeleton specified in an Ogre XML file. +But if a Webots skeleton is used, then the joint count will correspond to the valid nodes specified in the `bones` field and the joint names will correspond to the referenced [Solid](#solid) names. + --- **Name** @@ -90,5 +124,7 @@ The rotation is specified as a double array, similar to `wb_supervisor_field_set If the `absolute` argument is false the joint angle is set relative to the parent joint, otherwise the joint angle is set with respect to the absolute world frame. The joints are indexed starting from 0. +This function is only available if the `bones` field is not specified, i.e. if the object is purely graphical and the skin is not already animated using the [Joint](#joint) node rotation. + > **note**: Please look at the example in "WEBOTS\_HOME/projects/humans/skin_animation/" directory for further information. From 3179c47344fc89ff30a724bb88d9551a8a9be9df Mon Sep 17 00:00:00 2001 From: Stefania Pedrazzi Date: Thu, 7 Jul 2016 16:56:57 +0200 Subject: [PATCH 04/15] Fix SolidReference link --- reference/skin.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/reference/skin.md b/reference/skin.md index 934e0ad56..03521d03f 100644 --- a/reference/skin.md +++ b/reference/skin.md @@ -73,9 +73,9 @@ No rest pose is set for those joints which are not present in the rest pose file 5: 0.976296, 0.21644, 0, 0 ``` -- The `bones` fields contains a list of [SolidReference](#solid_reference) nodes that provide the information to attach a Webots skeleton made of [Solid](#solid) and [Joint](#joint) nodes. +- The `bones` fields contains a list of [SolidReference](#solidreference) nodes that provide the information to attach a Webots skeleton made of [Solid](#solid) and [Joint](#joint) nodes. In order to setup correctly the skeleton, the solid have to be listed in the same order as specified in the mesh file. -This means that if in the mesh file the thigh bone is referenced using the index number 3, then the [SolidReference](#solid_reference) linking to the tigh [Solid](#solid) has to inserted in the `bones` field at index 3 as well. +This means that if in the mesh file the thigh bone is referenced using the index number 3, then the [SolidReference](#solidreference) linking to the tigh [Solid](#solid) has to inserted in the `bones` field at index 3 as well. - The `castShadows` field allows the user to turn on (TRUE) or off (FALSE) shadows casted by this shape. Note that if the mesh triangle count is very big, the casted shadows will be automatically disabled. @@ -114,7 +114,7 @@ But if a Webots skeleton is used, then the joint count will correspond to the va ``` c #include -void wb_character_set_joint_angle(WbDeviceTag tag, int index, const double rotation[4], bool absolute) +void wb_character_set_joint_angle(WbDeviceTag tag, int index, const double rotation[4], bool absolute); ``` **Description** From 021791fd6b7196e3638e7fae6c63fe046461b8db Mon Sep 17 00:00:00 2001 From: Stefania Pedrazzi Date: Mon, 11 Jul 2016 10:44:37 +0200 Subject: [PATCH 05/15] Add Skin node in node chart --- reference/images/node_hierarchy.png | Bin 60516 -> 64772 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/reference/images/node_hierarchy.png b/reference/images/node_hierarchy.png index 74015527a1b6966194f25959d0a306368cc0c8ac..a18c93829d7eb06e6e3b492c9bdd55be7545c15f 100644 GIT binary patch literal 64772 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 From e112830f4c7b12437edab8a60d9fdfa6631bf1f3 Mon Sep 17 00:00:00 2001 From: Stefania Pedrazzi Date: Tue, 12 Jul 2016 15:54:43 +0200 Subject: [PATCH 06/15] update other API reference --- reference/bvh.md | 60 +++++++++-------------------------------- reference/cpp-api.md | 42 +++++++++++++++++++++++++++-- reference/java-api.md | 40 +++++++++++++++++++++++++-- reference/matlab-api.md | 32 +++++++++++++++++++++- reference/python-api.md | 37 ++++++++++++++++++++++++- reference/ros-api.md | 8 ++++++ reference/skin.md | 6 ++--- 7 files changed, 168 insertions(+), 57 deletions(-) diff --git a/reference/bvh.md b/reference/bvh.md index 74775126e..38e3fe191 100644 --- a/reference/bvh.md +++ b/reference/bvh.md @@ -9,8 +9,8 @@ ``` c #include -WbBvhDataRef wbu_bvh_read_file(const char *filename) -void wbu_bvh_cleanup(WbBvhDataRef motion) +WbBvhDataRef wbu_bvh_read_file(const char *filename); +void wbu_bvh_cleanup(WbBvhDataRef motion); ``` **Description** @@ -37,10 +37,10 @@ After this function is called the corresponding `WbBvhDataRef` object can no lon ``` c #include -int wbu_bvh_get_joint_count(WbBvhDataRef ref) -const char* wbu_bvh_get_joint_name(WbBvhDataRef ref, int joint_index) -int wbu_bvh_get_frame_count(WbBvhDataRef ref) -void wbu_bvh_set_scale(WbBvhDataRef ref, double scale) +int wbu_bvh_get_joint_count(WbBvhDataRef ref); +const char* wbu_bvh_get_joint_name(WbBvhDataRef ref, int joint_index); +int wbu_bvh_get_frame_count(WbBvhDataRef ref); +void wbu_bvh_set_scale(WbBvhDataRef ref, double scale); ``` **Description** @@ -67,10 +67,9 @@ The function `wbu_bvh_set_scale()` sets the scale factor, which is used to scale ``` c #include -bool wbu_bvh_step(WbBvhDataRef ref) -bool wbu_bvh_goto_frame(WbBvhDataRef ref, int frame_number) -bool wbu_bvh_reset(WbBvhDataRef ref) -void wbu_bvh_set_scale(WbBvhDataRef ref, double scale) +bool wbu_bvh_step(WbBvhDataRef ref); +bool wbu_bvh_goto_frame(WbBvhDataRef ref, int frame_number); +bool wbu_bvh_reset(WbBvhDataRef ref); ``` **Description** @@ -111,8 +110,8 @@ void main() { ``` c #include -double *wbu_bvh_get_joint_rotation(WbBvhDataRef ref, int joint_index) -double *wbu_bvh_get_root_translation(WbBvhDataRef ref) +double *wbu_bvh_get_joint_rotation(WbBvhDataRef ref, int joint_index); +double *wbu_bvh_get_root_translation(WbBvhDataRef ref); ``` **Description** @@ -151,41 +150,6 @@ void main() { **Name** -**wbu\_bvh\_set\_rest\_pose** - -*specify the rest pose of the skeleton for which this BVH file is being used.* - -{[C++](cpp-api.md#cpp_bvh)}, {[Java](java-api.md#java_bvh)}, {[Python](python-api.md#python_bvh)}, {[Matlab](matlab-api.md#matlab_bvh)} - -``` c -#include - -bool *wbu_bvh_set_rest_pose(WbBvhDataRef ref, const char* rest_pose_filename) -``` - -**Description** - -The function `wbu_bvh_set_rest_pose` sets the rest pose of the skeleton, i.e. the pose the skeleton should have if all the rotations are set to zero. -In other words, this is the initial reference pose relative to which all rotations are specified. -It is necessary to set the rest pose in some cases, because while the BVH file may record joint rotations relative to a certain pose, the object model which is being animated might have a different reference pose, and this difference needs to be taken into account. - -The rest pose is specified in a text file in the format shown below. -The first string is the joint name. -The next four numbers represent a quaternion, with its elements in the order [w, x, y, z]. -It is not necessary to specify rest pose for all joints. -No rest pose is set for those joints which are not present in the rest pose file. - -``` -lThigh: 0.98477, 0.173642, 0.00151535, -0.00859396 -rThigh: 0.98477, 0.173642, -0.00151535, 0.00859396 -abdomen: 0.976296, 0.21644, 0, 0 -``` - -This function must be called before calling wbu_bvh_adapt_skeleton(). - ---- - -**Name** - **wbu\_bvh\_adapt\_skeleton** - *adapt the skeleton specified in the BVH file to be able to re-target the BVH motion data for animating of a [Skin](#skin) node.* @@ -194,7 +158,7 @@ This function must be called before calling wbu_bvh_adapt_skeleton(). ``` c #include -bool *wbu_bvh_adapt_skeleton(WbBvhDataRef ref, int num_joints, const char** joint_name_list) +void wbu_bvh_adapt_skeleton(WbBvhDataRef ref, int num_joints, const char** joint_name_list); ``` **Description** diff --git a/reference/cpp-api.md b/reference/cpp-api.md index 1c5a6306f..aee3b3c5f 100644 --- a/reference/cpp-api.md +++ b/reference/cpp-api.md @@ -28,6 +28,29 @@ The following tables describe the C++ classes and their methods. %end + +%api "cpp_bvh" + +| | +| ------------------------------------------------------------------------------------------------------------------- | +| #include `<`webots/utils/BvhReader.hpp`>` | +| class [BvhReader](bvh.md) { | +|    [BvhReader](bvh.md#wbu_bvh_read_file)(const std::string &fileName); | +|    virtual [~BvhReader](bvh.md#wbu_bvh_cleanup)(); | +|    int [getJointCount](bvh.md#wbu_bvh_get_joint_count)() const; | +|    const std::string &[getJointName](bvh.md#wbu_bvh_get_joint_name)(int jointId) const; | +|    int [getFrameCount](bvh.md#wbu_bvh_get_frame_count)() const; | +|    void [setScale](bvh.md#wbu_bvh_set_scale)(double scale); | +|    bool [step](bvh.md#wbu_bvh_step)(); | +|    bool [gotoFrame](bvh.md#wbu_bvh_goto_frame)(int frameNumber); | +|    bool [reset](bvh.md#wbu_bvh_reset)(); | +|    const double *[getRootTranslation](bvh.md#wbu_bvh_get_root_translation)() const; | +|    const double *[getJointRotation](bvh.md#wbu_bvh_get_joint_rotation)(int jointId) const; | +|    void [adaptSkeleton](bvh.md#wbu_bvh_adapt_skeleton)(nnt jointCount, const char **jointNameList) const; | +| }; | + +%end + %api "cpp_camera" | | @@ -465,7 +488,7 @@ The following tables describe the C++ classes and their methods. | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | #include `<`webots/Node.hpp`>` | | class Node { | -|    enum { NO\_NODE, ACCELEROMETER, APPEARANCE, BACKGROUND, BALL\_JOINT, BALL\_JOINT\_PARAMETERS, BOX, BRAKE, CAMERA, CAPSULE, CHARGER, COLOR, COMPASS, CONE, CONNECTOR, CONTACT\_PROPERTIES, COORDINATE, CYLINDER, DAMPING, DIFFERENTIAL\_WHEELS, DIRECTIONAL\_LIGHT, DISPLAY, DISTANCE\_SENSOR, ELEVATION\_GRID, EMITTER, EXTRUSION, FOCUS, FLUID, FOG, GPS, GROUP, GYRO, HINGE\_2\_JOINT, HINGE\_2\_JOINT\_PARAMETERS, HINGE\_JOINT, HINGE\_JOINT\_PARAMETERS, IMAGE\_TEXTURE, IMMERSION\_PROPERTIES, INDEXED\_FACE\_SET, INDEXED\_LINE\_SET, INERTIAL\_UNIT, JOINT\_PARAMETERS, LED, LENS\_DISTORTION, LIDAR, LIGHT\_SENSOR, LINEAR\_MOTOR, MATERIAL, MICROPHONE, PEN, PHYSICS, PLANE, POINT\_LIGHT, POSITION\_SENSOR, PROPELLER, RADAR, RADIO, RANGE\_FINDER, RECEIVER, ROBOT, ROTATIONAL\_MOTOR, SERVO, SHAPE, SLIDER\_JOINT, SLOT, SOLID, SOLID\_REFERENCE, SPEAKER, SPHERE, SPOT\_LIGHT, SUPERVISOR, SWITCH, TEXTURE\_COORDINATE, TEXTURE\_TRANSFORM, TOUCH\_SENSOR, TRACK, TRACK\_WHEEL, TRANSFORM, VIEWPOINT, WORLD\_INFO, ZOOM }; | +|    enum { NO\_NODE, ACCELEROMETER, APPEARANCE, BACKGROUND, BALL\_JOINT, BALL\_JOINT\_PARAMETERS, BOX, BRAKE, CAMERA, CAPSULE, CHARGER, COLOR, COMPASS, CONE, CONNECTOR, CONTACT\_PROPERTIES, COORDINATE, CYLINDER, DAMPING, DIFFERENTIAL\_WHEELS, DIRECTIONAL\_LIGHT, DISPLAY, DISTANCE\_SENSOR, ELEVATION\_GRID, EMITTER, EXTRUSION, FOCUS, FLUID, FOG, GPS, GROUP, GYRO, HINGE\_2\_JOINT, HINGE\_2\_JOINT\_PARAMETERS, HINGE\_JOINT, HINGE\_JOINT\_PARAMETERS, IMAGE\_TEXTURE, IMMERSION\_PROPERTIES, INDEXED\_FACE\_SET, INDEXED\_LINE\_SET, INERTIAL\_UNIT, JOINT\_PARAMETERS, LED, LENS\_DISTORTION, LIDAR, LIGHT\_SENSOR, LINEAR\_MOTOR, MATERIAL, MICROPHONE, PEN, PHYSICS, PLANE, POINT\_LIGHT, POSITION\_SENSOR, PROPELLER, RADAR, RADIO, RANGE\_FINDER, RECEIVER, ROBOT, ROTATIONAL\_MOTOR, SERVO, SHAPE, SKIN, SLIDER\_JOINT, SLOT, SOLID, SOLID\_REFERENCE, SPEAKER, SPHERE, SPOT\_LIGHT, SUPERVISOR, SWITCH, TEXTURE\_COORDINATE, TEXTURE\_TRANSFORM, TOUCH\_SENSOR, TRACK, TRACK\_WHEEL, TRANSFORM, VIEWPOINT, WORLD\_INFO, ZOOM }; | |    virtual void [remove](supervisor.md#wb_supervisor_node_remove)(); | |    int [getId](supervisor.md#wb_supervisor_node_get_from_def)() const; | |    int [getType](supervisor.md#wb_supervisor_node_get_type)() const; | @@ -609,7 +632,8 @@ The following tables describe the C++ classes and their methods. |    [PositionSensor](#cpp_position_sensor) *[getPositionSensor](robot.md#wb_robot_get_device)(const std::string &name); | |    [RangeFinder](#cpp_range_finder) *[getRangeFinder](robot.md#wb_robot_get_device)(const std::string &name); | |    [Receiver](#cpp_receiver) *[getReceiver](robot.md#wb_robot_get_device)(const std::string &name); | -|    [Speaker](#cpp_speaker) *[getSpeaker](robot.md#wb_robot_get_device)(const std::string &name); | +|    [Speaker](#cpp_speaker) *[getSpeaker](robot.md#wb_robot_get_device)(const std::string &name); | | +|    [Skin](#cpp_skin) *[getSkin](robot.md#wb_robot_get_device)(const std::string &name); | |    [Servo](#cpp_servo) *[getServo](robot.md#wb_robot_get_device)(const std::string &name); | |    [TouchSensor](#cpp_touch_sensor) *[getTouchSensor](robot.md#wb_robot_get_device)(const std::string &name); | |    int [getNumberOfDevices](robot.md#wb_robot_get_device_by_index)(); | @@ -665,6 +689,20 @@ The following tables describe the C++ classes and their methods. %end + +%api "cpp_skin" + +| | +| --------------------------------------------------------------------------------------------------------------------- | +| #include `<`webots/Skin.hpp`>` | +| class [Skin](skin.md) : public [Device](#cpp_device) { | +|    int [getJointCount](skin.md#wb_skin_get_joint_count)() const; | +|    const std::string &[getJointName](skin.md#wb_skin_get_joint_name)(int index) const; | +|    void [setJointAngle](skin.md#wb_skin_set_joint_angle)(int index, const double *rotation, bool absolute); | +| }; | + +%end + %api "cpp_speaker" | | diff --git a/reference/java-api.md b/reference/java-api.md index fdaf6ce0f..63c0454be 100644 --- a/reference/java-api.md +++ b/reference/java-api.md @@ -28,6 +28,27 @@ The following tables describe the Java classes and their methods. %end +%api "java_bvh" + +| | +| --------------------------------------------------------------------------------------------------------------- | +| import com.cyberbotics.webots.controller.BvhReader; | +| public class [BvhReader](bvh.md) { | +|    public [BvhReader](bvh.md#wbu_bvh_read_file)(String fileName); | +|    public int [getJointCount](bvh.md#wbu_bvh_get_joint_count)(); | +|    public String [getJointName](bvh.md#wbu_bvh_get_joint_name)(int jointId); | +|    public int [getFrameCount](bvh.md#wbu_bvh_get_frame_count)(); | +|    public void [setScale](bvh.md#wbu_bvh_set_scale)(double scale); | +|    public bool [step](bvh.md#wbu_bvh_step)(); | +|    public bool [gotoFrame](bvh.md#wbu_bvh_goto_frame)(int frameNumber); | +|    public bool [reset](bvh.md#wbu_bvh_reset)(); | +|    public double[] [getRootTranslation](bvh.md#wbu_bvh_get_root_translation)(); | +|    public double[] [getJointRotation](bvh.md#wbu_bvh_get_joint_rotation)(int jointId); | +|    public void [adaptSkeleton](bvh.md#wbu_bvh_adapt_skeleton)(int jointCount, String[] jointNameList) | +| } | + +%end + %api "java_camera" | | @@ -482,7 +503,7 @@ The following tables describe the Java classes and their methods. | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | import com.cyberbotics.webots.controller.Node; | | public class Node { | -|    public final static int NO\_NODE, ACCELEROMETER, APPEARANCE, BACKGROUND, BALL\_JOINT, BALL\_JOINT\_PARAMETERS, BOX, BRAKE, CAMERA, CAPSULE, CHARGER, COLOR, COMPASS, CONE, CONNECTOR, CONTACT\_PROPERTIES, COORDINATE, CYLINDER, DAMPING, DIFFERENTIAL\_WHEELS, DIRECTIONAL\_LIGHT, DISPLAY, DISTANCE\_SENSOR, ELEVATION\_GRID, EMITTER, EXTRUSION, FOCUS, FLUID, FOG, GPS, GROUP, GYRO, HINGE\_2\_JOINT, HINGE\_2\_JOINT\_PARAMETERS, HINGE\_JOINT, HINGE\_JOINT\_PARAMETERS, IMAGE\_TEXTURE, IMMERSION\_PROPERTIES, INDEXED\_FACE\_SET, INDEXED\_LINE\_SET, INERTIAL\_UNIT, JOINT\_PARAMETERS, LED, LENS\_DISTORTION, LIDAR, LIGHT\_SENSOR, LINEAR\_MOTOR, MATERIAL, MICROPHONE, PEN, PHYSICS, PLANE, POINT\_LIGHT, POSITION\_SENSOR, PROPELLER, RADAR, RADIO, RANGE\_FINDER, RECEIVER, ROBOT, ROTATIONAL\_MOTOR, SERVO, SHAPE, SLIDER\_JOINT, SLOT, SOLID, SOLID\_REFERENCE, SPEAKER, SPHERE, SPOT\_LIGHT, SUPERVISOR, SWITCH, TEXTURE\_COORDINATE, TEXTURE\_TRANSFORM, TOUCH\_SENSOR, TRACK, TRACK\_WHEEL, TRANSFORM, VIEWPOINT, WORLD\_INFO, ZOOM; | +|    public final static int NO\_NODE, ACCELEROMETER, APPEARANCE, BACKGROUND, BALL\_JOINT, BALL\_JOINT\_PARAMETERS, BOX, BRAKE, CAMERA, CAPSULE, CHARGER, COLOR, COMPASS, CONE, CONNECTOR, CONTACT\_PROPERTIES, COORDINATE, CYLINDER, DAMPING, DIFFERENTIAL\_WHEELS, DIRECTIONAL\_LIGHT, DISPLAY, DISTANCE\_SENSOR, ELEVATION\_GRID, EMITTER, EXTRUSION, FOCUS, FLUID, FOG, GPS, GROUP, GYRO, HINGE\_2\_JOINT, HINGE\_2\_JOINT\_PARAMETERS, HINGE\_JOINT, HINGE\_JOINT\_PARAMETERS, IMAGE\_TEXTURE, IMMERSION\_PROPERTIES, INDEXED\_FACE\_SET, INDEXED\_LINE\_SET, INERTIAL\_UNIT, JOINT\_PARAMETERS, LED, LENS\_DISTORTION, LIDAR, LIGHT\_SENSOR, LINEAR\_MOTOR, MATERIAL, MICROPHONE, PEN, PHYSICS, PLANE, POINT\_LIGHT, POSITION\_SENSOR, PROPELLER, RADAR, RADIO, RANGE\_FINDER, RECEIVER, ROBOT, ROTATIONAL\_MOTOR, SERVO, SHAPE, SKIN, SLIDER\_JOINT, SLOT, SOLID, SOLID\_REFERENCE, SPEAKER, SPHERE, SPOT\_LIGHT, SUPERVISOR, SWITCH, TEXTURE\_COORDINATE, TEXTURE\_TRANSFORM, TOUCH\_SENSOR, TRACK, TRACK\_WHEEL, TRANSFORM, VIEWPOINT, WORLD\_INFO, ZOOM; | |    public void [remove](supervisor.md#wb_supervisor_node_remove)(); | |    public int [getId](supervisor.md#wb_supervisor_node_get_from_def)(); | |    public int [getType](supervisor.md#wb_supervisor_node_get_type)(); | @@ -639,6 +660,7 @@ The following tables describe the Java classes and their methods. |    public [RangeFinder](#java_range_finder) [getRangeFinder](robot.md#wb_robot_get_device)(String name); | |    public [Receiver](#java_receiver) [getReceiver](robot.md#wb_robot_get_device)(String name); | |    public [Servo](#java_servo) [getServo](robot.md#wb_robot_get_device)(String name); | +|    public [Skin](#java_skin) [getSkin](robot.md#wb_robot_get_device)(String name); | |    public [Speaker](#java_speaker) [getSpeaker](robot.md#wb_robot_get_device)(String name); | |    public [TouchSensor](#java_touch_sensor) [getTouchSensor](robot.md#wb_robot_get_device)(String name); | |    public int [getNumberOfDevices](robot.md#wb_robot_get_device_by_index)(); | @@ -693,6 +715,20 @@ The following tables describe the Java classes and their methods. %end + +%api "java_skin" + +| | +| -------------------------------------------------------------------------------------------------------------------------- | +| #include `<`webots/Skin.hpp`>` | +| class [Skin](skin.md) : public [Device](#java_device) { | +|    public int [getJointCount](skin.md#wb_skin_get_joint_count)(); | +|    public String [getJointName](skin.md#wb_skin_get_joint_name)(int index); | +|    public void [setJointAngle](skin.md#wb_skin_set_joint_angle)(int index, double[] rotation, boolean absolute); | +| } | + +%end + %api "java_speaker" | | @@ -703,7 +739,7 @@ The following tables describe the Java classes and their methods. |    public static void [playSound](speaker.md#wb_speaker_play_sound)(Speaker left, Speaker right, String sound, double volume, double pitch, double balance, bool loop); | |    public void [stop](speaker.md#wb_speaker_stop)(const std::string &sound); | |    public void [setLanguage](speaker.md#wb_speaker_set_language)(const std::string &language); | -|    public std::string [getLanguage](speaker.md#wb_speaker_set_language)(); | +|    public String [getLanguage](speaker.md#wb_speaker_set_language)(); | |    public void [speak](speaker.md#wb_speaker_set_language)(const std::string &text, double volume); | | }; | diff --git a/reference/matlab-api.md b/reference/matlab-api.md index 10e5e2d48..167a1642a 100644 --- a/reference/matlab-api.md +++ b/reference/matlab-api.md @@ -22,6 +22,26 @@ The following tables describe the Matlab functions. %end +%api "python_bvh" + +| % [BvhReader](bvh.md) : | +| ------------------------------------------------------------------------------------------------------- | +| class [BvhReader](bvh.md) : | +| bvh_reader = [wbu\_bvh\_read\_file](bvh.md#wbu_bvh_read_file)('filename') | +| [wbu\_bvh\_cleanup](bvh.md#wbu_bvh_cleanup)(bvh_reader) | +| count = [wbu\_bvh\_get\_joint\_count](bvh.md#wbu_bvh_get_joint_count)(bvh_reader) | +| name = [wbu\_bvh\_get\_joint\_name](bvh.md#wbu_bvh_get_joint_name)(bvh_reader, jonit_id) | +| count = [wbu\_bvh\_get\_frame\_count](bvh.md#wbu_bvh_get_frame_count)(bvh_reader) | +| [wbu\_bvh\_set\_scale](bvh.md#wbu_bvh_set_scale)(bvh_reader, scale) | +| success = [wbu\_bvh\_step](bvh.md#wbu_bvh_step)(bvh_reader) | +| success = [wbu\_bvh\_goto\_frame](bvh.md#wbu_bvh_goto_frame)(bvh_reader, frame_number) | +| success = [wbu\_bvh\_reset](bvh.md#wbu_bvh_reset)(bvh_reader) | +| translation = [wbu\_bvh\_get\_root\_translation](bvh.md#wbu_bvh_get_root_translation)(bvh_reader) | +| rotation = [wbu\_bvh\_get\_joint\_rotation](bvh.md#wbu_bvh_get_joint_rotation)(bvh_reader, joint_id) | +| [wbu\_bvh\adapt\_skeleton](bvh.md#wbu_bvh_get_joint_rotation)(bvh_reader, joint_count, joint_name_list) | + +%end + %api "matlab_camera" | % [Camera](camera.md) : | @@ -348,7 +368,7 @@ The following tables describe the Matlab functions. | Node: | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| WB\_NODE\_NO\_NODE, WB\_NODE\_ACCELEROMETER, WB\_NODE\_APPEARANCE, WB\_NODE\_BACKGROUND, WB\_NODE\_BALL\_JOINT, WB\_NODE\_BALL\_JOINT\_PARAMETERS, WB\_NODE\_BOX, WB\_NODE\_BRAKE, WB\_NODE\_CAMERA, WB\_NODE\_CAPSULE, WB\_NODE\_CHARGER, WB\_NODE\_COLOR, WB\_NODE\_COMPASS, WB\_NODE\_CONE, WB\_NODE\_CONNECTOR, WB\_NODE\_CONTACT\_PROPERTIES, WB\_NODE\_COORDINATE, WB\_NODE\_CYLINDER, WB\_NODE\_DAMPING, WB\_NODE\_DIFFERENTIAL\_WHEELS, WB\_NODE\_DIRECTIONAL\_LIGHT, WB\_NODE\_DISPLAY, WB\_NODE\_DISTANCE\_SENSOR, WB\_NODE\_ELEVATION\_GRID, WB\_NODE\_EMITTER, WB\_NODE\_EXTRUSION, WB\_NODE\_FLUID, WB\_NODE\_FOCUS, WB\_NODE\_FOG, WB\_NODE\_GPS, WB\_NODE\_GROUP, WB\_NODE\_GYRO, WB\_NODE\_HINGE\_2\_JOINT, WB\_NODE\_HINGE\_2\_JOINT\_PARAMETERS, WB\_NODE\_HINGE\_JOINT, WB\_NODE\_HINGE\_JOINT\_PARAMETERS, WB\_NODE\_IMAGE\_TEXTURE, WB\_NODE\_IMMERSION\_PROPERTIES, WB\_NODE\_INDEXED\_FACE\_SET, WB\_NODE\_INDEXED\_LINE\_SET, WB\_NODE\_INERTIAL\_UNIT, WB\_NODE\_JOINT\_PARAMETERS, WB\_NODE\_LED, WB\_NODE\_LIDAR, WB\_NODE\_LIGHT\_SENSOR, WB\_NODE\_LINEAR\_MOTOR, WB\_NODE\_LENS\_DISTORTION, WB\_NODE\_MATERIAL, WB\_NODE\_MICROPHONE, WB\_NODE\_PEN, WB\_NODE\_PHYSICS, WB\_NODE\_PLANE, WB\_NODE\_POINT\_LIGHT, WB\_NODE\_POSITION\_SENSOR, WB\_NODE\_PROPELLER, WB\_NODE\_RADAR, WB\_NODE\_RADIO, WB\_NODE\_RANGE\_FINDER, WB\_NODE\_RECEIVER, WB\_NODE\_ROBOT, WB\_NODE\_ROTATIONAL\_MOTOR, WB\_NODE\_SERVO, WB\_NODE\_SHAPE, WB\_NODE\_SLIDER\_JOINT, WB\_NODE\_SLOT, WB\_NODE\_SOLID, WB\_NODE\_SOLID\_REFERENCE, WB\_NODE\_SPEAKER, WB\_NODE\_SPHERE, WB\_NODE\_SPOT\_LIGHT, WB\_NODE\_SUPERVISOR, WB\_NODE\_SWITCH, WB\_NODE\_TEXTURE\_COORDINATE, WB\_NODE\_TEXTURE\_TRANSFORM, WB\_NODE\_TOUCH\_SENSOR, WB\_NODE\_TRACK, WB\_NODE\_TRACK\_WHEEL, WB\_NODE\_TRANSFORM, WB\_NODE\_VIEWPOINT, WB\_NODE\_WORLD\_INFO, WB\_NODE\_ZOOM | +| WB\_NODE\_NO\_NODE, WB\_NODE\_ACCELEROMETER, WB\_NODE\_APPEARANCE, WB\_NODE\_BACKGROUND, WB\_NODE\_BALL\_JOINT, WB\_NODE\_BALL\_JOINT\_PARAMETERS, WB\_NODE\_BOX, WB\_NODE\_BRAKE, WB\_NODE\_CAMERA, WB\_NODE\_CAPSULE, WB\_NODE\_CHARGER, WB\_NODE\_COLOR, WB\_NODE\_COMPASS, WB\_NODE\_CONE, WB\_NODE\_CONNECTOR, WB\_NODE\_CONTACT\_PROPERTIES, WB\_NODE\_COORDINATE, WB\_NODE\_CYLINDER, WB\_NODE\_DAMPING, WB\_NODE\_DIFFERENTIAL\_WHEELS, WB\_NODE\_DIRECTIONAL\_LIGHT, WB\_NODE\_DISPLAY, WB\_NODE\_DISTANCE\_SENSOR, WB\_NODE\_ELEVATION\_GRID, WB\_NODE\_EMITTER, WB\_NODE\_EXTRUSION, WB\_NODE\_FLUID, WB\_NODE\_FOCUS, WB\_NODE\_FOG, WB\_NODE\_GPS, WB\_NODE\_GROUP, WB\_NODE\_GYRO, WB\_NODE\_HINGE\_2\_JOINT, WB\_NODE\_HINGE\_2\_JOINT\_PARAMETERS, WB\_NODE\_HINGE\_JOINT, WB\_NODE\_HINGE\_JOINT\_PARAMETERS, WB\_NODE\_IMAGE\_TEXTURE, WB\_NODE\_IMMERSION\_PROPERTIES, WB\_NODE\_INDEXED\_FACE\_SET, WB\_NODE\_INDEXED\_LINE\_SET, WB\_NODE\_INERTIAL\_UNIT, WB\_NODE\_JOINT\_PARAMETERS, WB\_NODE\_LED, WB\_NODE\_LIDAR, WB\_NODE\_LIGHT\_SENSOR, WB\_NODE\_LINEAR\_MOTOR, WB\_NODE\_LENS\_DISTORTION, WB\_NODE\_MATERIAL, WB\_NODE\_MICROPHONE, WB\_NODE\_PEN, WB\_NODE\_PHYSICS, WB\_NODE\_PLANE, WB\_NODE\_POINT\_LIGHT, WB\_NODE\_POSITION\_SENSOR, WB\_NODE\_PROPELLER, WB\_NODE\_RADAR, WB\_NODE\_RADIO, WB\_NODE\_RANGE\_FINDER, WB\_NODE\_RECEIVER, WB\_NODE\_ROBOT, WB\_NODE\_ROTATIONAL\_MOTOR, WB\_NODE\_SERVO, WB\_NODE\_SHAPE, WB\_NODE\_SKIN, WB\_NODE\_SLIDER\_JOINT, WB\_NODE\_SLOT, WB\_NODE\_SOLID, WB\_NODE\_SOLID\_REFERENCE, WB\_NODE\_SPEAKER, WB\_NODE\_SPHERE, WB\_NODE\_SPOT\_LIGHT, WB\_NODE\_SUPERVISOR, WB\_NODE\_SWITCH, WB\_NODE\_TEXTURE\_COORDINATE, WB\_NODE\_TEXTURE\_TRANSFORM, WB\_NODE\_TOUCH\_SENSOR, WB\_NODE\_TRACK, WB\_NODE\_TRACK\_WHEEL, WB\_NODE\_TRANSFORM, WB\_NODE\_VIEWPOINT, WB\_NODE\_WORLD\_INFO, WB\_NODE\_ZOOM | %end @@ -573,6 +593,16 @@ The following tables describe the Matlab functions. %end +%api "matlab_skin" + +| % [Skin](skin.md) : | +| -----------------------------------------------------------------------------------------| +| count = [wb\_skin\_get\_joint\_count](skin.md#wb_skin_get_joint_count)(tag) | +| name = [wb\_skin\_get\_joint\_name](skin.md#wb_skin_get_joint_name)(tag, index) | +| [wb\_skin\_set\_joint\_angle](skin.md#wb_skin_set_joint_angle)(tag, index, values, absolute) | + +%end + %api "matlab_speaker" | % [Speaker](speaker.md) : | diff --git a/reference/python-api.md b/reference/python-api.md index f3441ec69..9269d9646 100644 --- a/reference/python-api.md +++ b/reference/python-api.md @@ -24,6 +24,27 @@ The following tables describe the Python classes and their methods. |    def [setDampingConstant](brake.md#wb_brake_set_damping_constant)(self, dampingConstant) | |    def [getType](brake.md#wb_brake_set_damping_constant)(self) | +%end + +%api "python_bvh" + +| ------------------------------------------------------------------------------------------ | +| from controller import BvhReader | +| class [BvhReader](bvh.md) : | +|    def [\_\_init\_\_](bvh.md#wbu_bvh_read_file)(self, fileName) | +|    def [\_\_del\_\_](bvh.md#wbu_bvh_cleanup)(self) | +|    def int [getJointCount](bvh.md#wbu_bvh_get_joint_count)(self) | +|    def String [getJointName](bvh.md#wbu_bvh_get_joint_name)(self, jointId) | +|    def int [getFrameCount](bvh.md#wbu_bvh_get_frame_count)(self) | +|    def void [setScale](bvh.md#wbu_bvh_set_scale)(self, scale) | +|    def [step](bvh.md#wbu_bvh_step)(self) | +|    def [gotoFrame](bvh.md#wbu_bvh_goto_frame)(self, frameNumber) | +|    def [reset](bvh.md#wbu_bvh_reset)(self) | +|    def [getRootTranslation](bvh.md#wbu_bvh_get_root_translation)(self) | +|    def [getJointRotation](bvh.md#wbu_bvh_get_joint_rotation)(self, jointId) | +|    def [adaptSkeleton](bvh.md#wbu_bvh_adapt_skeleton)(jointCount, jointNameList) | + + %end %api "python_camera" @@ -460,7 +481,7 @@ The following tables describe the Python classes and their methods. | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | from controller import Node | | class Node : | -|    NO\_NODE, ACCELEROMETER, APPEARANCE, BACKGROUND, BALL\_JOINT, BALL\_JOINT\_PARAMETERS, BOX, BRAKE, CAMERA, CAPSULE, CHARGER, COLOR, COMPASS, CONE, CONNECTOR, CONTACT\_PROPERTIES, COORDINATE, CYLINDER, DAMPING, DIFFERENTIAL\_WHEELS, DIRECTIONAL\_LIGHT, DISPLAY, DISTANCE\_SENSOR, ELEVATION\_GRID, EMITTER, EXTRUSION, FOCUS, FLUID, FOG, GPS, GROUP, GYRO, HINGE\_2\_JOINT, HINGE\_2\_JOINT\_PARAMETERS, HINGE\_JOINT, HINGE\_JOINT\_PARAMETERS, IMAGE\_TEXTURE, IMMERSION\_PROPERTIES, INDEXED\_FACE\_SET, INDEXED\_LINE\_SET, INERTIAL\_UNIT, JOINT\_PARAMETERS, LED, LENS\_DISTORTION, LIDAR, LIGHT\_SENSOR, LINEAR\_MOTOR, MATERIAL, MICROPHONE, PEN, PHYSICS, PLANE, POINT\_LIGHT, POSITION\_SENSOR, PROPELLER, RADAR, RADIO, RANGE\_FINDER, RECEIVER, ROBOT, ROTATIONAL\_MOTOR, SERVO, SHAPE, SLIDER\_JOINT, SLOT, SOLID, SOLID\_REFERENCE, SPEAKER, SPHERE, SPOT\_LIGHT, SUPERVISOR, SWITCH, TEXTURE\_COORDINATE, TEXTURE\_TRANSFORM, TOUCH\_SENSOR, TRACK, TRACK\_WHEEL, TRANSFORM, VIEWPOINT, WORLD\_INFO, ZOOM | +|    NO\_NODE, ACCELEROMETER, APPEARANCE, BACKGROUND, BALL\_JOINT, BALL\_JOINT\_PARAMETERS, BOX, BRAKE, CAMERA, CAPSULE, CHARGER, COLOR, COMPASS, CONE, CONNECTOR, CONTACT\_PROPERTIES, COORDINATE, CYLINDER, DAMPING, DIFFERENTIAL\_WHEELS, DIRECTIONAL\_LIGHT, DISPLAY, DISTANCE\_SENSOR, ELEVATION\_GRID, EMITTER, EXTRUSION, FOCUS, FLUID, FOG, GPS, GROUP, GYRO, HINGE\_2\_JOINT, HINGE\_2\_JOINT\_PARAMETERS, HINGE\_JOINT, HINGE\_JOINT\_PARAMETERS, IMAGE\_TEXTURE, IMMERSION\_PROPERTIES, INDEXED\_FACE\_SET, INDEXED\_LINE\_SET, INERTIAL\_UNIT, JOINT\_PARAMETERS, LED, LENS\_DISTORTION, LIDAR, LIGHT\_SENSOR, LINEAR\_MOTOR, MATERIAL, MICROPHONE, PEN, PHYSICS, PLANE, POINT\_LIGHT, POSITION\_SENSOR, PROPELLER, RADAR, RADIO, RANGE\_FINDER, RECEIVER, ROBOT, ROTATIONAL\_MOTOR, SERVO, SHAPE, SKIN, SLIDER\_JOINT, SLOT, SOLID, SOLID\_REFERENCE, SPEAKER, SPHERE, SPOT\_LIGHT, SUPERVISOR, SWITCH, TEXTURE\_COORDINATE, TEXTURE\_TRANSFORM, TOUCH\_SENSOR, TRACK, TRACK\_WHEEL, TRANSFORM, VIEWPOINT, WORLD\_INFO, ZOOM | |    def [remove](supervisor.md#wb_supervisor_node_remove)(self) | |    def [getType](supervisor.md#wb_supervisor_node_get_type)(self) | |    def [getId](supervisor.md#wb_supervisor_node_get_from_def)(self) | @@ -612,6 +633,7 @@ The following tables describe the Python classes and their methods. |    def [getRangeFinder](robot.md#wb_robot_get_device)(self, name) | |    def [getReceiver](robot.md#wb_robot_get_device)(self, name) | |    def [getServo](robot.md#wb_robot_get_device)(self, name) | +|    def [getSkin](robot.md#wb_robot_get_device)(self, name) | |    def [getSpeaker](robot.md#wb_robot_get_device)(self, name) | |    def [getTouchSensor](robot.md#wb_robot_get_device)(self, name) | |    def [getNumberOfDevices](robot.md#wb_robot_get_device_by_index)(self) | @@ -664,6 +686,19 @@ The following tables describe the Python classes and their methods. %end + +%api "python_skin" + +| | +| ------------------------------------------------------------------------------------------------- | +| #include `<`webots/Skin.hpp`>` | +| class [Skin](skin.md) : public [Device](#python_device) { | +|    def [getJointCount](skin.md#wb_skin_get_joint_count)(self) | +|    def [getJointName](skin.md#wb_skin_get_joint_name)(self, index) | +|    def [setJointAngle](skin.md#wb_skin_set_joint_angle)(self, index, rotation, absolute) | + +%end + %api "python_speaker" | | diff --git a/reference/ros-api.md b/reference/ros-api.md index 43b620446..6ffd9a695 100644 --- a/reference/ros-api.md +++ b/reference/ros-api.md @@ -309,6 +309,14 @@ for more information about the value of `robot_unique_name`). | [/robot/set\_mode](robot.md#wb_robot_get_mode) | service | webots\_ros::robot\_set\_mode | char[] arg
int32 mode
---
int8 success | | /robot/get\_device\_list | service | webots\_ros::robot\_get\_device\_list | uint8 ask
---
string[] list | +### Skin + +| name | service/topic | data type | data type definition | +| ----------------------------------------------------------------------- | ------------- | ----------------------------- | - ----------------------------------------- | +| [/`<`device\_name`>`/get\_joint\_count](skin.md#wb_skin_get_joint_count) | service | webots\_ros::get\_joint\_count | uint8 ask
---
int32 jointCount
| +| [/`<`device\_name`>`/get\_joint\_name](skin.md#wb_skin_get_joint_name) | service | webots\_ros::get\_joint\_name | int32 index
---
string name
| +| [/`<`device\_name`>`/set\_joint\_angle](skin.md#wb_skin_set_joint_angle) | service | webots\_ros::set\_joint\_angle | int32 index
float64[] value
bool absolute
---
int32 success
+ ### Speaker | name | service/topic | data type | data type definition | diff --git a/reference/skin.md b/reference/skin.md index 03521d03f..c91a0b70c 100644 --- a/reference/skin.md +++ b/reference/skin.md @@ -17,7 +17,7 @@ Skin { ### Description -The [Skin](#skin) node can be used to model an animated character in the simulation world, for example, a human, or an animal. +The [Skin](#skin) node can be used to simulate soft mesh animation for example of a human or an animal. The skin mesh is imported from Ogre XML files specified by the `model` name. But in order to be animated it has to be attached to a skeleton so that the rotation of the skeleton joints results in appropriate deformation of the skin mesh. This nodes provides two alternative ways to define a skeleton. @@ -25,7 +25,7 @@ The first method consists in providing an Ogre XML Skeleton file that will havin Otherwise it is possible to list [Solid](#solid) noded corresponding to the mesh bones using the `bones` field. If in the first case the resulting object animation will be purely graphical, when linking the [Skin](#skin) to an existing Webots skeleton made of [Solid](#solid) and [Joint](#joint) nodes it is possible to animate an dynamic object. -The XML files containing the skin mesh and skeleton model files can be generated using a 3D modeling software like Blender (TM) and using the plugin to export to Ogre. +The XML files containing the skin mesh and skeleton model files can be generated using a 3D modeling software like Blender (TM) and using the plugin to export to Ogre. Makehuman (TM) is a tool for generating models of humans. The human characters in the provided samples are generated using Makehuman (TM). #### Physically driven skin animation @@ -46,7 +46,7 @@ In this case the skeleton needed to animate the skin is expected to be loaded fr - The `translation` field defines the translation from the parent coordinate system to the children's coordinate system. - The `rotation` field defines an arbitrary rotation of the children's coordinate system with respect to the parent coordinate system. -Please refer to [Tranfsorm](#transform) `rotation` field description for more information. +Please refer to [Transform](#transform) `rotation` field description for more information. - The `scale` field specifies a possibly non-uniform scale of the mesh. Only positive values are permitted; non-positive values scale are automatically reset to 1. From a71c19a430de740dc0c78e6c4b0a176eb02bf845 Mon Sep 17 00:00:00 2001 From: Stefania Pedrazzi Date: Tue, 12 Jul 2016 17:48:03 +0200 Subject: [PATCH 07/15] Improve skin API function names --- reference/bvh.md | 4 ++-- reference/cpp-api.md | 16 ++++++++-------- reference/java-api.md | 16 ++++++++-------- reference/matlab-api.md | 10 +++++----- reference/python-api.md | 14 +++++++------- reference/ros-api.md | 10 +++++----- reference/skin.md | 24 ++++++++++++------------ 7 files changed, 47 insertions(+), 47 deletions(-) diff --git a/reference/bvh.md b/reference/bvh.md index 38e3fe191..6e4a783b0 100644 --- a/reference/bvh.md +++ b/reference/bvh.md @@ -170,7 +170,7 @@ Therefore, firstly, the extra joints in the BVH file must be removed. Further, since the joint rotations are specified as relative to parent joints, they must be recomputed in case a joint is removed. This computation is done by this function. -The arguments to this function are the number of joints and the list of joints names in the [Skin](#skin) node. -They can be obtained by calling the functions `wb_skin_get_joint_count` and `wb_character_get_joint_name`. +The arguments to this function are the number of bones and the list of bones names in the [Skin](#skin) node. +They can be obtained by calling the functions `wb_skin_get_bone_count` and `wb_skin_get_bone_name`. Note that if the nomenclature of the joints in the [Skin](#skin) node is different from that of the BVH file, the names have to be manually translated. Please refer to the advanced sample project in "WEBOTS\_HOME/projects/humans/skin_animation/" directory for an example of how this is done. diff --git a/reference/cpp-api.md b/reference/cpp-api.md index aee3b3c5f..bd4f0aa65 100644 --- a/reference/cpp-api.md +++ b/reference/cpp-api.md @@ -692,14 +692,14 @@ The following tables describe the C++ classes and their methods. %api "cpp_skin" -| | -| --------------------------------------------------------------------------------------------------------------------- | -| #include `<`webots/Skin.hpp`>` | -| class [Skin](skin.md) : public [Device](#cpp_device) { | -|    int [getJointCount](skin.md#wb_skin_get_joint_count)() const; | -|    const std::string &[getJointName](skin.md#wb_skin_get_joint_name)(int index) const; | -|    void [setJointAngle](skin.md#wb_skin_set_joint_angle)(int index, const double *rotation, bool absolute); | -| }; | +| | +| ------------------------------------------------------------------------------------------------------------------------------- | +| #include `<`webots/Skin.hpp`>` | +| class [Skin](skin.md) : public [Device](#cpp_device) { | +|    int [getBoneCount](skin.md#wb_skin_get_bone_count)() const; | +|    const std::string &[getBoneName](skin.md#wb_skin_get_bone_name)(int index) const; | +|    void [setBoneOrientation](skin.md#wb_skin_set_bone_orientation)(int index, const double *rotation, bool absolute); | +| }; | %end diff --git a/reference/java-api.md b/reference/java-api.md index 63c0454be..6d44bfdce 100644 --- a/reference/java-api.md +++ b/reference/java-api.md @@ -718,14 +718,14 @@ The following tables describe the Java classes and their methods. %api "java_skin" -| | -| -------------------------------------------------------------------------------------------------------------------------- | -| #include `<`webots/Skin.hpp`>` | -| class [Skin](skin.md) : public [Device](#java_device) { | -|    public int [getJointCount](skin.md#wb_skin_get_joint_count)(); | -|    public String [getJointName](skin.md#wb_skin_get_joint_name)(int index); | -|    public void [setJointAngle](skin.md#wb_skin_set_joint_angle)(int index, double[] rotation, boolean absolute); | -| } | +| | +| ------------------------------------------------------------------------------------------------------------------------------------ | +| #include `<`webots/Skin.hpp`>` | +| class [Skin](skin.md) : public [Device](#java_device) { | +|    public int [getBonetCount](skin.md#wb_skin_get_bone_count)(); | +|    public String [getBoneName](skin.md#wb_skin_get_bone_name)(int index); | +|    public void [setBoneOrientation](skin.md#wb_skin_set_bone_orientation)(int index, double[] rotation, boolean absolute); | +| } | %end diff --git a/reference/matlab-api.md b/reference/matlab-api.md index 167a1642a..7f867d236 100644 --- a/reference/matlab-api.md +++ b/reference/matlab-api.md @@ -595,11 +595,11 @@ The following tables describe the Matlab functions. %api "matlab_skin" -| % [Skin](skin.md) : | -| -----------------------------------------------------------------------------------------| -| count = [wb\_skin\_get\_joint\_count](skin.md#wb_skin_get_joint_count)(tag) | -| name = [wb\_skin\_get\_joint\_name](skin.md#wb_skin_get_joint_name)(tag, index) | -| [wb\_skin\_set\_joint\_angle](skin.md#wb_skin_set_joint_angle)(tag, index, values, absolute) | +| % [Skin](skin.md) : | +| -------------------------------------------------------------------------------------------------------| +| count = [wb\_skin\_get\_bone\_count](skin.md#wb_skin_get_bone_count)(tag) | +| name = [wb\_skin\_get\_bone\_name](skin.md#wb_skin_get_bone_name)(tag, index) | +| [wb\_skin\_set\_bone\_orientation](skin.md#wb_skin_set_bone_orientation)(tag, index, values, absolute) | %end diff --git a/reference/python-api.md b/reference/python-api.md index 9269d9646..7b0d5a1bd 100644 --- a/reference/python-api.md +++ b/reference/python-api.md @@ -689,13 +689,13 @@ The following tables describe the Python classes and their methods. %api "python_skin" -| | -| ------------------------------------------------------------------------------------------------- | -| #include `<`webots/Skin.hpp`>` | -| class [Skin](skin.md) : public [Device](#python_device) { | -|    def [getJointCount](skin.md#wb_skin_get_joint_count)(self) | -|    def [getJointName](skin.md#wb_skin_get_joint_name)(self, index) | -|    def [setJointAngle](skin.md#wb_skin_set_joint_angle)(self, index, rotation, absolute) | +| | +| ----------------------------------------------------------------------------------------------------------- | +| #include `<`webots/Skin.hpp`>` | +| class [Skin](skin.md) : public [Device](#python_device) { | +|    def [getBoneCount](skin.md#wb_skin_get_bone_count)(self) | +|    def [getBoneName](skin.md#wb_skin_get_bone_name)(self, index) | +|    def [setBoneOrientation](skin.md#wb_skin_set_bone_orientation)(self, index, rotation, absolute) | %end diff --git a/reference/ros-api.md b/reference/ros-api.md index 6ffd9a695..c40d93728 100644 --- a/reference/ros-api.md +++ b/reference/ros-api.md @@ -311,11 +311,11 @@ for more information about the value of `robot_unique_name`). ### Skin -| name | service/topic | data type | data type definition | -| ----------------------------------------------------------------------- | ------------- | ----------------------------- | - ----------------------------------------- | -| [/`<`device\_name`>`/get\_joint\_count](skin.md#wb_skin_get_joint_count) | service | webots\_ros::get\_joint\_count | uint8 ask
---
int32 jointCount
| -| [/`<`device\_name`>`/get\_joint\_name](skin.md#wb_skin_get_joint_name) | service | webots\_ros::get\_joint\_name | int32 index
---
string name
| -| [/`<`device\_name`>`/set\_joint\_angle](skin.md#wb_skin_set_joint_angle) | service | webots\_ros::set\_joint\_angle | int32 index
float64[] value
bool absolute
---
int32 success
+| name | service/topic | data type | data type definition | +| ---------------------------------------------------------------------------------- | ------------- | ----------------------------- | - ----------------------------------------- | +| [/`<`device\_name`>`/get\_bone\_count](skin.md#wb_skin_get_bone_count) | service | webots\_ros::get\_bone\_count | uint8 ask
---
int32 count
| +| [/`<`device\_name`>`/get\_bone\_name](skin.md#wb_skin_get_bone_name) | service | webots\_ros::get\_bone\_name | int32 index
---
string name
| +| [/`<`device\_name`>`/set\_bone\_orientation](skin.md#wb_skin_set_bone_orientation) | service | webots\_ros::set\_bone\_orientation | int32 index
float64[] value
bool absolute
---
int32 success
| ### Speaker diff --git a/reference/skin.md b/reference/skin.md index c91a0b70c..8011335e3 100644 --- a/reference/skin.md +++ b/reference/skin.md @@ -83,46 +83,46 @@ This means that if in the mesh file the thigh bone is referenced using the index **Name** -**wb\_skin\_get\_joint\_count**, **wb\_skin\_get\_joint\_name** - *get the number and the names of joints in the skeleton of loaded skin model.* +**wb\_skin\_get\_bone\_count**, **wb\_skin\_get\_bone\_name** - *get the number and the names of bones in the skeleton of loaded skin model.* {[C++](cpp-api.md#cpp_skin)}, {[Java](java-api.md#java_skin)}, {[Python](python-api.md#python_skin)}, {[Matlab](matlab-api.md#matlab_skin)}, {[ROS](ros-api.md)} ``` c #include -int wb_skin_get_joint_count(WbDeviceTag tag); -const char *wb_skin_get_joint_name(WbDeviceTag tag, int index); +int wb_skin_get_bone_count(WbDeviceTag tag); +const char *wb_skin_get_bone_name(WbDeviceTag tag, int index); ``` **Description** -The function `wb_skin_get_joint_count` returns the total number of joints in the skeleton loaded by the [Skin](#skin) node. -The function `wb_skin_get_joint_name` returns the name of the joint at the specified index. -The joints are indexed starting from 0. +The function `wb_skin_get_bone_count` returns the total number of bones in the skeleton loaded by the [Skin](#skin) node. +The function `wb_skin_get_bone_name` returns the name of the bone at the specified index. +The bones are indexed starting from 0. This two functions are available both if using a Webots skeleton or a skeleton specified in an Ogre XML file. -But if a Webots skeleton is used, then the joint count will correspond to the valid nodes specified in the `bones` field and the joint names will correspond to the referenced [Solid](#solid) names. +But if a Webots skeleton is used, then the bone count will correspond to the valid nodes specified in the `bones` field and the bone names will correspond to the referenced [Solid](#solid) names. --- **Name** -**wb\_skin\_set\_joint\_angle** - *set the joint angle.* +**wb\_skin\_set\_bone\_angle** - *set the bone orientation.* {[C++](cpp-api.md#cpp_skin)}, {[Java](java-api.md#java_skin)}, {[Python](python-api.md#python_skin)}, {[Matlab](matlab-api.md#matlab_skin)}, {[ROS](ros-api.md)} ``` c #include -void wb_character_set_joint_angle(WbDeviceTag tag, int index, const double rotation[4], bool absolute); +void wb_character_set_bone_orientation(WbDeviceTag tag, int index, const double rotation[4], bool absolute); ``` **Description** -This function sets the rotation of the joint to the specified axis-angle value. +This function sets the rotation of the skin's internal skeleton bone to the specified axis-angle rotation value. The rotation is specified as a double array, similar to `wb_supervisor_field_set_sf_rotation` [Supervisor](#supervisor) node. -If the `absolute` argument is false the joint angle is set relative to the parent joint, otherwise the joint angle is set with respect to the absolute world frame. -The joints are indexed starting from 0. +If the `absolute` argument is false the bone orientation is set relative to the parent bone, otherwise the bone orientation is set with respect to the absolute world frame. +The bones are indexed starting from 0. This function is only available if the `bones` field is not specified, i.e. if the object is purely graphical and the skin is not already animated using the [Joint](#joint) node rotation. From 339756a4324948d3e2177f177bbe5a7608abe630 Mon Sep 17 00:00:00 2001 From: Stefania Pedrazzi Date: Tue, 19 Jul 2016 10:52:38 +0200 Subject: [PATCH 08/15] Add documentation of wb_skin_set_bone_position --- reference/cpp-api.md | 1 + reference/java-api.md | 1 + reference/matlab-api.md | 1 + reference/python-api.md | 3 ++- reference/ros-api.md | 3 ++- reference/skin.md | 12 +++++++----- 6 files changed, 14 insertions(+), 7 deletions(-) diff --git a/reference/cpp-api.md b/reference/cpp-api.md index bd4f0aa65..7e7affc54 100644 --- a/reference/cpp-api.md +++ b/reference/cpp-api.md @@ -699,6 +699,7 @@ The following tables describe the C++ classes and their methods. |    int [getBoneCount](skin.md#wb_skin_get_bone_count)() const; | |    const std::string &[getBoneName](skin.md#wb_skin_get_bone_name)(int index) const; | |    void [setBoneOrientation](skin.md#wb_skin_set_bone_orientation)(int index, const double *rotation, bool absolute); | +|    void [setBonePosition](skin.md#wb_skin_set_bone_position)(int index, const double *position, bool absolute); | | }; | %end diff --git a/reference/java-api.md b/reference/java-api.md index 6d44bfdce..87cf7a9dc 100644 --- a/reference/java-api.md +++ b/reference/java-api.md @@ -725,6 +725,7 @@ The following tables describe the Java classes and their methods. |    public int [getBonetCount](skin.md#wb_skin_get_bone_count)(); | |    public String [getBoneName](skin.md#wb_skin_get_bone_name)(int index); | |    public void [setBoneOrientation](skin.md#wb_skin_set_bone_orientation)(int index, double[] rotation, boolean absolute); | +|    public void [setBonePosition](skin.md#wb_skin_set_bone_position)(int index, double[] position, boolean absolute); | | } | %end diff --git a/reference/matlab-api.md b/reference/matlab-api.md index 7f867d236..84c629360 100644 --- a/reference/matlab-api.md +++ b/reference/matlab-api.md @@ -600,6 +600,7 @@ The following tables describe the Matlab functions. | count = [wb\_skin\_get\_bone\_count](skin.md#wb_skin_get_bone_count)(tag) | | name = [wb\_skin\_get\_bone\_name](skin.md#wb_skin_get_bone_name)(tag, index) | | [wb\_skin\_set\_bone\_orientation](skin.md#wb_skin_set_bone_orientation)(tag, index, values, absolute) | +| [wb\_skin\_set\_bone\_position](skin.md#wb_skin_set_bone_position)(tag, index, values, absolute) | %end diff --git a/reference/python-api.md b/reference/python-api.md index 7b0d5a1bd..1a4dbcf19 100644 --- a/reference/python-api.md +++ b/reference/python-api.md @@ -695,7 +695,8 @@ The following tables describe the Python classes and their methods. | class [Skin](skin.md) : public [Device](#python_device) { | |    def [getBoneCount](skin.md#wb_skin_get_bone_count)(self) | |    def [getBoneName](skin.md#wb_skin_get_bone_name)(self, index) | -|    def [setBoneOrientation](skin.md#wb_skin_set_bone_orientation)(self, index, rotation, absolute) | +|    def [setBoneOrientation](skin.md#wb_skin_set_bone_orientation)(self, index, rotation, absolute) | +|    def [setBonePosition](skin.md#wb_skin_set_bone_position)(self, index, position, absolute) | %end diff --git a/reference/ros-api.md b/reference/ros-api.md index c40d93728..1f7acde02 100644 --- a/reference/ros-api.md +++ b/reference/ros-api.md @@ -315,7 +315,8 @@ for more information about the value of `robot_unique_name`). | ---------------------------------------------------------------------------------- | ------------- | ----------------------------- | - ----------------------------------------- | | [/`<`device\_name`>`/get\_bone\_count](skin.md#wb_skin_get_bone_count) | service | webots\_ros::get\_bone\_count | uint8 ask
---
int32 count
| | [/`<`device\_name`>`/get\_bone\_name](skin.md#wb_skin_get_bone_name) | service | webots\_ros::get\_bone\_name | int32 index
---
string name
| -| [/`<`device\_name`>`/set\_bone\_orientation](skin.md#wb_skin_set_bone_orientation) | service | webots\_ros::set\_bone\_orientation | int32 index
float64[] value
bool absolute
---
int32 success
| +| [/`<`device\_name`>`/set\_bone\_orientation](skin.md#wb_skin_set_bone_orientation) | service | webots\_ros::set\_bone\_pose | int32 index
float64[] value
bool absolute
---
int32 success
| +| [/`<`device\_name`>`/set\_bone\_position](skin.md#wb_skin_set_bone_position) | service | webots\_ros::set\_bone\_pose | int32 index
float64[] value
bool absolute
---
int32 success
| ### Speaker diff --git a/reference/skin.md b/reference/skin.md index 8011335e3..ec3e6eac0 100644 --- a/reference/skin.md +++ b/reference/skin.md @@ -107,24 +107,26 @@ But if a Webots skeleton is used, then the bone count will correspond to the val **Name** -**wb\_skin\_set\_bone\_angle** - *set the bone orientation.* +**wb\_skin\_set\_bone\_orientation**, **wb\_skin\_set\_bone\_position** - *set the bone orientation and position.* {[C++](cpp-api.md#cpp_skin)}, {[Java](java-api.md#java_skin)}, {[Python](python-api.md#python_skin)}, {[Matlab](matlab-api.md#matlab_skin)}, {[ROS](ros-api.md)} ``` c #include -void wb_character_set_bone_orientation(WbDeviceTag tag, int index, const double rotation[4], bool absolute); +void wb_skin_set_bone_orientation(WbDeviceTag tag, int index, const double rotation[4], bool absolute); +void wb_skin_set_bone_position(WbDeviceTag tag, int index, const double position[3], bool absolute); ``` **Description** -This function sets the rotation of the skin's internal skeleton bone to the specified axis-angle rotation value. +`wb_skin_set_bone_orientation` function sets the rotation of the skin's internal skeleton bone to the specified axis-angle rotation value. The rotation is specified as a double array, similar to `wb_supervisor_field_set_sf_rotation` [Supervisor](#supervisor) node. -If the `absolute` argument is false the bone orientation is set relative to the parent bone, otherwise the bone orientation is set with respect to the absolute world frame. +`wb_skin_set_bone_position` function sets the position of the skin's internal skeleton bone. +If the `absolute` argument is false the bone orientation is set relatively to the parent bone, otherwise the bone orientation is set with respect to the absolute world frame. The bones are indexed starting from 0. -This function is only available if the `bones` field is not specified, i.e. if the object is purely graphical and the skin is not already animated using the [Joint](#joint) node rotation. +These functions are only available if the `bones` field is not specified, i.e. if the object is purely graphical and the skin is not already animated using the [Joint](#joint) node rotation. > **note**: Please look at the example in "WEBOTS\_HOME/projects/humans/skin_animation/" directory for further information. From 42ef925accda74dc4b914cde1fde7f82bca6eabc Mon Sep 17 00:00:00 2001 From: Stefania Pedrazzi Date: Thu, 21 Jul 2016 15:05:59 +0200 Subject: [PATCH 09/15] Update description and add appearance field in Skin description --- reference/appearance.md | 5 +++++ reference/skin.md | 40 ++++++++++++++++++++++++---------------- 2 files changed, 29 insertions(+), 16 deletions(-) diff --git a/reference/appearance.md b/reference/appearance.md index a204a3f75..aaec0220e 100644 --- a/reference/appearance.md +++ b/reference/appearance.md @@ -5,6 +5,7 @@ Appearance { SFNode material NULL SFNode texture NULL SFNode textureTransform NULL + SFString name "appearance" } ``` @@ -30,3 +31,7 @@ lights are ignored during rendering of the object that references this - The `textureTransform` field, if specified, shall contain a [TextureTransform](texturetransform.md) node. If the `textureTransform` is NULL or unspecified, the `textureTransform` field has no effect. + +- The `name` field specifies appearance name. +This is especially needed to uniquely identify the appearance definition in MFNode fields supporting multiple Appearance nodes, as for example the `appearance` field in [Skin](skin.md) node. +In case of SFNode fields containing a single Appearance node it is not necessary to define a unique name. diff --git a/reference/skin.md b/reference/skin.md index ec3e6eac0..d6da1bae3 100644 --- a/reference/skin.md +++ b/reference/skin.md @@ -9,6 +9,7 @@ Skin { SFVec3f scale 1 1 1 SFString name "skin" SFString model "" + MFNode appearance [] SFString restPosePath "" MFNode bones [] SFBool castShadows TRUE @@ -18,21 +19,23 @@ Skin { ### Description The [Skin](#skin) node can be used to simulate soft mesh animation for example of a human or an animal. -The skin mesh is imported from Ogre XML files specified by the `model` name. +The skin mesh is imported from an Ogre mesh files specified by the `model` name. But in order to be animated it has to be attached to a skeleton so that the rotation of the skeleton joints results in appropriate deformation of the skin mesh. This nodes provides two alternative ways to define a skeleton. -The first method consists in providing an Ogre XML Skeleton file that will having the same file name as the Ogre XML Mesh file. -Otherwise it is possible to list [Solid](#solid) noded corresponding to the mesh bones using the `bones` field. -If in the first case the resulting object animation will be purely graphical, when linking the [Skin](#skin) to an existing Webots skeleton made of [Solid](#solid) and [Joint](#joint) nodes it is possible to animate an dynamic object. +The first method consists in providing an Ogre XML skeleton file having the same file name as the Ogre Mesh file. +Otherwise it is possible to list [Solid](#solid.md) noded corresponding to the mesh bones using the `bones` field. +If in the first case the resulting object animation will be purely graphical, when linking the [Skin](#skin) to an existing Webots skeleton made of [Solid](#solid.md) and [Joint](#joint.md) nodes it is possible to animate an dynamic object. + +The XML files containing the skin mesh and skeleton model files can be generated using a 3D modeling software like Blender (TM) and using the plugin to export to Ogre. Then the mesh.xml XML file has to be converted to a .mesh binary file in order to use it in Webots. +The converter executable is available at "$(WEBOTS\_HOME)/bin/ogre/OgreXMLConverter". -The XML files containing the skin mesh and skeleton model files can be generated using a 3D modeling software like Blender (TM) and using the plugin to export to Ogre. Makehuman (TM) is a tool for generating models of humans. The human characters in the provided samples are generated using Makehuman (TM). #### Physically driven skin animation -If you want that the skin is animated based on the movements of a dynamic object then you have to specify skeleton by listing the [Solid](#solid) nodes corresponding to the skeleton bones in the `bones` field. -Each [Solid](#solid) bone have to be a child node of a [Joint](#joint). -Moreover mesh bone structure and the [Solid](#solid)/[Joint](#joint) have to match. +If you want that the skin is animated based on the movements of a dynamic object then you have to specify skeleton by listing the [Solid](#solid.md) nodes corresponding to the skeleton bones in the `bones` field. +Each [Solid](#solid.md) bone have to be a child node of a [Joint](#joint.md). +Moreover mesh bone structure and the [Solid](#solid.md)/[Joint](#joint.md) have to match. In particular this means that the number of mesh bones have to match with the number of joints. @@ -46,14 +49,19 @@ In this case the skeleton needed to animate the skin is expected to be loaded fr - The `translation` field defines the translation from the parent coordinate system to the children's coordinate system. - The `rotation` field defines an arbitrary rotation of the children's coordinate system with respect to the parent coordinate system. -Please refer to [Transform](#transform) `rotation` field description for more information. +Please refer to [Transform](#transform.md) `rotation` field description for more information. - The `scale` field specifies a possibly non-uniform scale of the mesh. Only positive values are permitted; non-positive values scale are automatically reset to 1. - `name`: name of the skin device and used by wb_robot_get_device(). - `model`: name of the model to be imported. -For example, if the model name is "test_model", it import the XML file "test_model.mesh.xml" and "test_model.material" placed in the "skins/test_model/" subdirectory, inside the current project directory. If the `bones` field is not defined it will also import "test_model.skeleton.xml". +For example, if the model name is "test_model", it import the binary mesh file "test_model.mesh" placed in the "skins/test_model/" subdirectory, inside the current project directory. If the `bones` field is not defined it will also import "test_model.skeleton.xml". +The materials used by the imported mesh have to be defined in the `appearance` field. + +- `appearance`: list of [Appearance](#appearance.md) nodes defining the materials used by the mesh defined in the `model` field. +In order to be correctly used, the `name` field of the child [Appearance](#appearance.md) node has to match the material name used in the mesh definition. +If multiple [Appearance](#appearance.md) nodes have the same `name` field value, the first one is used. - `restPosePath`: path to a file containing the rest pose of the skin model. Rest pose is the pose the object should have if all the rotations are set to zero. @@ -73,9 +81,9 @@ No rest pose is set for those joints which are not present in the rest pose file 5: 0.976296, 0.21644, 0, 0 ``` -- The `bones` fields contains a list of [SolidReference](#solidreference) nodes that provide the information to attach a Webots skeleton made of [Solid](#solid) and [Joint](#joint) nodes. +- The `bones` fields contains a list of [SolidReference](#solidreference.md) nodes that provide the information to attach a Webots skeleton made of [Solid](#solid.md) and [Joint](#joint.md) nodes. In order to setup correctly the skeleton, the solid have to be listed in the same order as specified in the mesh file. -This means that if in the mesh file the thigh bone is referenced using the index number 3, then the [SolidReference](#solidreference) linking to the tigh [Solid](#solid) has to inserted in the `bones` field at index 3 as well. +This means that if in the mesh file the thigh bone is referenced using the index number 3, then the [SolidReference](#solidreference.md) linking to the tigh [Solid](#solid.md) has to inserted in the `bones` field at index 3 as well. - The `castShadows` field allows the user to turn on (TRUE) or off (FALSE) shadows casted by this shape. Note that if the mesh triangle count is very big, the casted shadows will be automatically disabled. @@ -100,8 +108,8 @@ The function `wb_skin_get_bone_count` returns the total number of bones in the s The function `wb_skin_get_bone_name` returns the name of the bone at the specified index. The bones are indexed starting from 0. -This two functions are available both if using a Webots skeleton or a skeleton specified in an Ogre XML file. -But if a Webots skeleton is used, then the bone count will correspond to the valid nodes specified in the `bones` field and the bone names will correspond to the referenced [Solid](#solid) names. +This two functions are available both if using a Webots skeleton or if the the skeleton is loaded from an Ogre XML file. +But if a Webots skeleton is used, then the bone count will correspond to the valid nodes specified in the `bones` field and the bone names will correspond to the referenced [Solid](#solid.md) names. --- @@ -121,12 +129,12 @@ void wb_skin_set_bone_position(WbDeviceTag tag, int index, const double position **Description** `wb_skin_set_bone_orientation` function sets the rotation of the skin's internal skeleton bone to the specified axis-angle rotation value. -The rotation is specified as a double array, similar to `wb_supervisor_field_set_sf_rotation` [Supervisor](#supervisor) node. +The rotation is specified as a double array, similar to `wb_supervisor_field_set_sf_rotation` [Supervisor](#supervisor.md) node. `wb_skin_set_bone_position` function sets the position of the skin's internal skeleton bone. If the `absolute` argument is false the bone orientation is set relatively to the parent bone, otherwise the bone orientation is set with respect to the absolute world frame. The bones are indexed starting from 0. -These functions are only available if the `bones` field is not specified, i.e. if the object is purely graphical and the skin is not already animated using the [Joint](#joint) node rotation. +These functions are only available if the `bones` field is not specified, i.e. if the object is purely graphical and the skin is not already animated using the [Joint](#joint.md) node rotation. > **note**: Please look at the example in "WEBOTS\_HOME/projects/humans/skin_animation/" directory for further information. From a87ca86815e2604a382ed5735d9f2b4809312986 Mon Sep 17 00:00:00 2001 From: Stefania Pedrazzi Date: Thu, 22 Sep 2016 17:11:24 +0200 Subject: [PATCH 10/15] Update and merge with origin/develop --- .travis.yml | 8 + README.md | 25 +- ...enstreetmap-importer-configuration-file.md | 268 +++--- automobile/ackermannvehicle.md | 64 +- automobile/appendix.md | 1 + automobile/automobilewheel.md | 40 +- automobile/billboard.md | 57 ++ automobile/buildings.md | 45 +- automobile/car-and-driver-libraries.md | 13 +- automobile/car-library.md | 64 +- automobile/car.md | 88 +- automobile/ch-morges.md | 2 +- automobile/city-night.md | 2 +- automobile/city-traffic.md | 2 +- ...va-wrappers-of-the-automobile-libraries.md | 29 - ...on-wrappers-of-the-automobile-libraries.md | 58 ++ automobile/driver-library.md | 82 +- automobile/images/HighwayPole1.png | Bin 0 -> 43550 bytes automobile/images/HighwayPole2.png | Bin 0 -> 61881 bytes automobile/images/advertising-board.png | Bin 0 -> 97371 bytes automobile/images/caution_sign.png | Bin 17258 -> 17298 bytes automobile/images/engine_sound.png | Bin 0 -> 8832 bytes automobile/images/fastfood-restaurant.png | Bin 0 -> 484235 bytes automobile/images/order_sign.png | Bin 11735 -> 11419 bytes automobile/images/public-toilet.png | Bin 0 -> 67523 bytes automobile/images/sign_pole.png | Bin 0 -> 18089 bytes automobile/images/speed_sign.png | Bin 16094 -> 8124 bytes automobile/images/yield_sign.png | Bin 12177 -> 12552 bytes automobile/introduction.md | 14 +- automobile/lidar-sensors.md | 56 +- automobile/menu.md | 6 +- automobile/nature.md | 46 +- automobile/objects.md | 3 +- automobile/openstreetmap-importer.md | 18 +- automobile/overview-tab.md | 10 +- automobile/proto-nodes.md | 9 + automobile/protos.md | 9 - automobile/python-libraries.md | 75 ++ automobile/radar-sensors.md | 18 +- automobile/road-segments.md | 511 +++++------ automobile/robot-window.md | 2 +- automobile/scenario-creation-tutorial.md | 23 +- automobile/sensors.md | 2 +- automobile/sumo-interface-example.md | 6 +- automobile/sumo-interface.md | 32 +- automobile/tools.md | 3 +- automobile/traffic-signs-and-lights.md | 29 +- automobile/village-winter.md | 8 +- automobile/village.md | 2 +- css/main.css | 818 +----------------- css/webots-doc.css | 255 ++++++ darwin-op/gait-manager.md | 32 +- darwin-op/motion-manager.md | 23 +- darwin-op/text-to-speech-warning-message.md | 2 +- darwin-op/vision-manager.md | 12 +- doc.php | 89 +- guide/citing-webots.md | 19 +- guide/classroom-license-setup.md | 9 +- guide/compiling-controllers-in-a-terminal.md | 12 +- guide/controller-plugin.md | 93 +- guide/controller-programming.md | 80 +- guide/controller-start-up.md | 6 +- guide/cpp-java-python.md | 4 +- guide/debugging-c-cpp-controllers.md | 18 +- guide/foreword.md | 6 +- guide/general-bugs.md | 8 +- guide/general-faq.md | 4 +- guide/geometries.md | 2 +- guide/getting-started-with-webots.md | 2 +- guide/going-further.md | 6 +- guide/how-to.md | 4 +- guide/images/hinge_joint.png | Bin 0 -> 55706 bytes .../mac-security-and-privacy-settings.png | Bin 0 -> 59985 bytes .../mac-unidentified-developper-dialog.png | Bin 0 -> 32397 bytes guide/images/screenshot-web-animation.png | Bin 0 -> 520463 bytes guide/images/screenshot-web-scene.png | Bin 0 -> 615212 bytes guide/images/streaming-server-screenshot.png | Bin 0 -> 2062470 bytes guide/index.md | 10 +- guide/installation-procedure.md | 81 +- ...ots-to-third-party-software-with-tcp-ip.md | 2 +- guide/introduction-to-webots.md | 2 +- guide/introduction.md | 6 +- guide/linux.md | 4 +- guide/mac-os-x.md | 2 +- guide/matlab.md | 4 +- guide/menu.md | 4 + guide/modeling.md | 14 +- guide/preferences.md | 4 +- guide/prerequisites.md | 26 +- guide/programming-fundamentals.md | 2 +- guide/programming.md | 116 +-- guide/real-robots.md | 14 +- guide/sample-webots-applications.md | 4 +- guide/speed-performance.md | 4 +- guide/starting-webots-remotely-ssh.md | 6 +- guide/starting-webots.md | 11 +- guide/supervisor-programming.md | 6 +- guide/system-requirements.md | 14 +- guide/thanks.md | 2 +- guide/the-3d-window.md | 31 +- guide/the-scene-tree.md | 10 +- ...he-standard-file-hierarchy-of-a-project.md | 7 +- guide/the-user-interface.md | 41 +- guide/transfer-to-your-own-robot.md | 18 +- ...r-first-simulation-in-webots-20-minutes.md | 179 ++-- ...ification-of-the-environment-20-minutes.md | 60 +- guide/tutorial-3-appearance-15-minutes.md | 24 +- ...ial-4-more-about-controllers-20-minutes.md | 188 ++-- ...solid-and-physics-attributes-15-minutes.md | 28 +- guide/tutorial-6-4-wheels-robot.md | 86 +- guide/tutorial-7-using-ros.md | 34 +- guide/tutorials.md | 4 +- guide/using-c.md | 2 +- guide/using-cpp.md | 6 +- guide/using-java.md | 28 +- guide/using-matlab.md | 15 +- guide/using-numerical-optimization-methods.md | 4 +- guide/using-python.md | 15 +- guide/using-ros.md | 20 +- guide/using-the-e-puck-robot.md | 62 +- guide/using-the-nao-robot.md | 11 +- ...he-pioneer-3-at-and-pioneer-3-dx-robots.md | 2 +- guide/using-the-thymio-ii-robot.md | 4 +- guide/using-visual-cpp-with-webots.md | 62 +- guide/using-webots-makefiles.md | 14 +- ...fying-your-graphics-driver-installation.md | 38 +- guide/web-animation.md | 55 ++ guide/web-interface.md | 10 + guide/web-scene.md | 76 ++ guide/web-streaming.md | 65 ++ guide/webots-built-in-editor.md | 4 +- guide/webots-devices.md | 21 +- guide/webots-license-system.md | 17 +- guide/webots-licenses.md | 10 +- guide/webots-plugin.md | 4 +- index.html | 45 +- js/viewer.js | 118 ++- local_exporter.py | 33 +- reference/accelerometer.md | 12 +- reference/appearance.md | 34 +- reference/brake.md | 6 +- reference/callback-functions.md | 18 +- reference/camera.md | 147 ++-- reference/compass.md | 17 +- reference/composedshader.md | 105 +++ reference/connector.md | 35 +- reference/cpp-api.md | 385 ++++----- reference/damping.md | 4 +- reference/device.md | 12 +- reference/differentialwheels.md | 33 +- reference/display.md | 108 ++- reference/distancesensor.md | 27 +- reference/emitter.md | 46 +- reference/glossary.md | 47 + reference/gps.md | 25 +- reference/gyro.md | 15 +- reference/images/lens_flare.png | Bin 0 -> 763347 bytes reference/images/node_hierarchy.png | Bin 64772 -> 0 bytes reference/imagetexture.md | 1 - reference/index.md | 17 +- reference/inertialunit.md | 15 +- reference/java-api.md | 358 ++++---- reference/jointparameters.md | 15 +- reference/joystick.md | 28 +- reference/keyboard.md | 29 +- reference/led.md | 6 +- reference/lensflare.md | 30 + reference/lidar.md | 65 +- reference/light.md | 6 + reference/lightsensor.md | 15 +- reference/matlab-api.md | 112 ++- reference/menu.md | 10 +- reference/motion.md | 34 +- reference/motor.md | 136 +-- reference/multitexture.md | 16 + reference/nodes-and-api-functions.md | 5 + reference/ode-improvments.md | 6 +- reference/pen.md | 10 +- reference/positionsensor.md | 17 +- reference/procedural-proto-nodes.md | 88 +- reference/proto-definition.md | 4 +- reference/{example.md => proto-example.md} | 4 +- reference/proto-hidden-fields.md | 72 +- reference/proto.md | 2 +- reference/python-api.md | 431 +++++---- reference/radar.md | 33 +- reference/rangefinder.md | 39 +- reference/receiver.md | 90 +- reference/robot.md | 199 +++-- reference/ros-api.md | 84 +- reference/servo.md | 54 +- reference/shaderpart.md | 85 ++ reference/skin.md | 73 +- reference/slot.md | 6 +- reference/speaker.md | 90 +- reference/spotlight.md | 13 +- reference/supervisor.md | 279 +++--- reference/touchsensor.md | 21 +- reference/troubleshooting.md | 6 +- reference/uniform.md | 33 + .../using-proto-nodes-with-the-scene-tree.md | 2 +- reference/utility-functions.md | 52 +- reference/viewpoint.md | 4 + reference/zoom.md | 2 +- tests/requirements.txt | 1 + tests/test_md_files.py | 9 + 206 files changed, 4700 insertions(+), 4106 deletions(-) create mode 100644 .travis.yml create mode 100644 automobile/billboard.md delete mode 100644 automobile/cpp-and-java-wrappers-of-the-automobile-libraries.md create mode 100644 automobile/cpp-java-and-python-wrappers-of-the-automobile-libraries.md create mode 100644 automobile/images/HighwayPole1.png create mode 100644 automobile/images/HighwayPole2.png create mode 100644 automobile/images/advertising-board.png create mode 100644 automobile/images/engine_sound.png create mode 100644 automobile/images/fastfood-restaurant.png create mode 100644 automobile/images/public-toilet.png create mode 100644 automobile/images/sign_pole.png create mode 100644 automobile/proto-nodes.md delete mode 100644 automobile/protos.md create mode 100644 automobile/python-libraries.md create mode 100644 css/webots-doc.css create mode 100644 guide/images/hinge_joint.png create mode 100644 guide/images/mac-security-and-privacy-settings.png create mode 100644 guide/images/mac-unidentified-developper-dialog.png create mode 100644 guide/images/screenshot-web-animation.png create mode 100644 guide/images/screenshot-web-scene.png create mode 100644 guide/images/streaming-server-screenshot.png create mode 100644 guide/web-animation.md create mode 100644 guide/web-interface.md create mode 100644 guide/web-scene.md create mode 100644 guide/web-streaming.md create mode 100644 reference/composedshader.md create mode 100644 reference/glossary.md create mode 100644 reference/images/lens_flare.png create mode 100644 reference/lensflare.md create mode 100644 reference/multitexture.md rename reference/{example.md => proto-example.md} (98%) create mode 100644 reference/shaderpart.md create mode 100644 reference/uniform.md create mode 100644 tests/requirements.txt diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 000000000..d1b4c2f3b --- /dev/null +++ b/.travis.yml @@ -0,0 +1,8 @@ +language: python +python: + - "2.7" +install: + - pip install -r tests/requirements.txt +script: + - python local_exporter.py + - python -m unittest discover -s tests diff --git a/README.md b/README.md index 313d8df77..ebf8fa8a5 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,9 @@ +[![Build Status](https://travis-ci.org/omichel/webots-doc.svg?branch=master)](https://travis-ci.org/omichel/webots-doc) + + # webots-doc -This repository holds the documentation for the Cyberbotics' Webots software. +This repository contains the documentation of the Webots software. You are very welcome to contribute to make this documentation better! In order to proceed, simply fork this repository, make your modifications and open a pull request that we will review and merge. @@ -10,26 +13,30 @@ open a pull request that we will review and merge. You can display the documentation corresponding to a specific version of Webots by using the version argument in the URL, for example: -- https://www.cyberbotics.com/doc/guide/guide?version=8.5 +- https://www.cyberbotics.com/doc/guide/index?version=8.5 This version argument corresponds to a git tag on this repository. Alternatively, it is possible to display the documentation corresponding to a github branch of this repository: -- https://www.cyberbotics.com/doc/guide/guide?version=master +- https://www.cyberbotics.com/doc/guide/index?version=master + +Or to a github branch (e.g. `reference_proto`) of any public github repository (e.g. `remidhum`): + +- https://www.cyberbotics.com/doc/guide/index?version=remidhum:reference_proto ## Run the doc offline Create or update the local_index.html page: -``` shell +```sh python local_exporter.py ``` Run a simple HTTP server: -``` shell +```sh python -m SimpleHTTPServer ``` @@ -43,6 +50,12 @@ In a browser, open: ## Run the unit tests -``` python +Requires module pep8: +```sh +sudo apt-get install python-pip +pip install pep8 +``` + +```sh python -m unittest discover ``` diff --git a/automobile/a-typical-openstreetmap-importer-configuration-file.md b/automobile/a-typical-openstreetmap-importer-configuration-file.md index 8c30f099b..36c746772 100644 --- a/automobile/a-typical-openstreetmap-importer-configuration-file.md +++ b/automobile/a-typical-openstreetmap-importer-configuration-file.md @@ -1,139 +1,139 @@ ## A typical OpenstreetMap importer configuration file -``` +```ini # BUILDINGS DEFAULTS SETTINGS # - [building] - ignore: FALSE - floorHeight: 3 - floorNumber: 3 - - [building_house] - ignore: FALSE - floorHeight: 3 - floorNumber: 2 - - [building_apartments] - ignore: FALSE - floorHeight: 3 - floorNumber: 4 - - [building_residential] - ignore: FALSE - floorHeight: 3.2 - floorNumber: 6 - - # WATERWAY DEFAULTS SETTINGS # - - [waterway] - ignore: TRUE - - [waterway_river] - ignore: FALSE - width: 2 - - [waterway_stream] - ignore: FALSE - width: 2 - - # ROUNDABOUT DEFAULTS SETTINGS # - - [roundabout] - ignore: FALSE - laneWidth: 4 - laneNumber: 1 - - [roundabout_primary] - ignore: FALSE - laneWidth: 3.5 - laneNumber: 2 - - # AREA DEFAULTS SETTINGS # - - [area] - ignore: TRUE - - [area_farmland] - ignore: FALSE - texture: textures/dry_grass.jpg - - [area_farm] - ignore: FALSE - texture: textures/dry_grass.jpg - - [area_water] - ignore: FALSE - blueComponent: 1 - - [area_forest] - ignore: FALSE - greenComponent: 1 - transparency: 0.7 - density: 0.1 - - # ROAD DEFAULTS SETTINGS # - - [road] - ignore: TRUE - - [road_motorway] - ignore: FALSE - border: FALSE - # this is for oneway - laneNumber: 3 - laneWidth: 3.5 - - [road_motorway_link] - ignore: FALSE - border: FALSE - laneNumber: 1 - laneWidth: 4 - - [road_trunk] - ignore: FALSE - border: FALSE - # this is for oneway - laneNumber: 2 - laneWidth: 3 - - [road_trunk_link] - ignore: FALSE - border: FALSE - laneNumber: 1 - laneWidth: 4 - - [road_primary] - ignore: FALSE - border: FALSE - laneNumber: 2 - laneWidth: 3.5 - - [road_secondary] - ignore: FALSE - laneNumber: 2 - laneWidth: 3.5 - - [road_tertiary] - ignore: FALSE - laneNumber: 1 - laneWidth: 4 - - [road_residential] - ignore: FALSE - laneNumber: 1 - laneWidth: 4 - texture: "textures/road_no_border_line.jpg" - - [road_unclassified] - ignore: FALSE - laneNumber: 1 - laneWidth: 4 - texture: "textures/road_no_border_line.jpg" - - [road_service] - ignore: FALSE - border: FALSE - laneNumber: 1 - laneWidth: 4 - texture: "textures/road_no_border_line.jpg" +[building] +ignore: FALSE +floorHeight: 3 +floorNumber: 3 + +[building_house] +ignore: FALSE +floorHeight: 3 +floorNumber: 2 + +[building_apartments] +ignore: FALSE +floorHeight: 3 +floorNumber: 4 + +[building_residential] +ignore: FALSE +floorHeight: 3.2 +floorNumber: 6 + +# WATERWAY DEFAULTS SETTINGS # + +[waterway] +ignore: TRUE + +[waterway_river] +ignore: FALSE +width: 2 + +[waterway_stream] +ignore: FALSE +width: 2 + +# ROUNDABOUT DEFAULTS SETTINGS # + +[roundabout] +ignore: FALSE +laneWidth: 4 +laneNumber: 1 + +[roundabout_primary] +ignore: FALSE +laneWidth: 3.5 +laneNumber: 2 + +# AREA DEFAULTS SETTINGS # + +[area] +ignore: TRUE + +[area_farmland] +ignore: FALSE +texture: textures/dry_grass.jpg + +[area_farm] +ignore: FALSE +texture: textures/dry_grass.jpg + +[area_water] +ignore: FALSE +blueComponent: 1 + +[area_forest] +ignore: FALSE +greenComponent: 1 +transparency: 0.7 +density: 0.1 + +# ROAD DEFAULTS SETTINGS # + +[road] +ignore: TRUE + +[road_motorway] +ignore: FALSE +border: FALSE +# this is for 3 lanes oneway +laneNumber: 3 +laneWidth: 3.5 + +[road_motorway_link] +ignore: FALSE +border: FALSE +laneNumber: 1 +laneWidth: 4 + +[road_trunk] +ignore: FALSE +border: FALSE +# this is for 2 lanes oneway +laneNumber: 2 +laneWidth: 3 + +[road_trunk_link] +ignore: FALSE +border: FALSE +laneNumber: 1 +laneWidth: 4 + +[road_primary] +ignore: FALSE +border: FALSE +laneNumber: 2 +laneWidth: 3.5 + +[road_secondary] +ignore: FALSE +laneNumber: 2 +laneWidth: 3.5 + +[road_tertiary] +ignore: FALSE +laneNumber: 1 +laneWidth: 4 + +[road_residential] +ignore: FALSE +laneNumber: 1 +laneWidth: 4 +texture: "textures/road_no_border_line.jpg" + +[road_unclassified] +ignore: FALSE +laneNumber: 1 +laneWidth: 4 +texture: "textures/road_no_border_line.jpg" + +[road_service] +ignore: FALSE +border: FALSE +laneNumber: 1 +laneWidth: 4 +texture: "textures/road_no_border_line.jpg" ``` diff --git a/automobile/ackermannvehicle.md b/automobile/ackermannvehicle.md index a37b75b92..6f4e39d24 100644 --- a/automobile/ackermannvehicle.md +++ b/automobile/ackermannvehicle.md @@ -13,35 +13,35 @@ actuators) can be added using the `extensionSlot` field. ``` AckermannVehicle { - SFVec3f translation 0 0.4 0 - SFRotation rotation 0 1 0 0.0 - SFString name "vehicle" - SFString model "AckermannVehicle" - SFString controller "void" - SFString controllerArgs "" - SFBool synchronization TRUE - SFFloat trackFront 1.7 - SFFloat trackRear 1.7 - SFFloat wheelbase 4.0 - SFFloat minSteeringAngle -1 - SFFloat maxSteeringAngle 1 - SFFloat suspensionFrontSpringConstant 100000 - SFFloat suspensionFrontDampingConstant 4000 - SFFloat suspensionRearSpringConstant 100000 - SFFloat suspensionRearDampingConstant 4000 - SFFloat wheelsDampingConstant 5 - MFNode extensionSlot NULL - SFNode boundingObject NULL - SFNode physics NULL - SFNode wheelFrontRight AutomobileWheel { } - SFNode wheelFrontLeft AutomobileWheel { } - SFNode wheelRearRight AutomobileWheel { } - SFNode wheelRearLeft AutomobileWheel { } - MFNode axisDevicesFrontRight [ ] - MFNode axisDevicesFrontLeft [ ] - MFNode axisDevicesRearRight [ ] - MFNode axisDevicesRearLeft [ ] - SFString data "" + SFVec3f translation 0 0.4 0 + SFRotation rotation 0 1 0 0.0 + SFString name "vehicle" + SFString model "AckermannVehicle" + SFString controller "void" + SFString controllerArgs "" + SFBool synchronization TRUE + SFFloat trackFront 1.7 + SFFloat trackRear 1.7 + SFFloat wheelbase 4.0 + SFFloat minSteeringAngle -1 + SFFloat maxSteeringAngle 1 + SFFloat suspensionFrontSpringConstant 100000 + SFFloat suspensionFrontDampingConstant 4000 + SFFloat suspensionRearSpringConstant 100000 + SFFloat suspensionRearDampingConstant 4000 + SFFloat wheelsDampingConstant 5 + MFNode extensionSlot NULL + SFNode boundingObject NULL + SFNode physics NULL + SFNode wheelFrontRight AutomobileWheel { } + SFNode wheelFrontLeft AutomobileWheel { } + SFNode wheelRearRight AutomobileWheel { } + SFNode wheelRearLeft AutomobileWheel { } + MFNode axisDevicesFrontRight [ ] + MFNode axisDevicesFrontLeft [ ] + MFNode axisDevicesRearRight [ ] + MFNode axisDevicesRearLeft [ ] + SFString data "" } ``` @@ -61,12 +61,12 @@ sensors, shape of the vehicle, etc.). - `physics`: `Physics` node of the vehicle defining the physical parameters of the vehicle. - `wheelX`: Slot to insert an `AutomobileWheel` (or any `AutomobileWheel` -descendant PROTOs). +descendant PROTO nodes). - `axisDevicesX`: Slot to add devices in the wheels joints (such as `Brake`, `PositionSensor` and `Motor`). -- `data`: Defines an user `data` string of the `Robot` node. +- `data`: Defines a user `data` string of the `Robot` node. -The center of the vehicle (position 0 0 0) is in the center of the rear wheels +The center of the vehicle (position 0 0 0) is at the center of the rear wheels axis. Any node added in the `extensionSlot` is added relatively to this position. A `Transform` node should be used to move an extension node away from this center. diff --git a/automobile/appendix.md b/automobile/appendix.md index 5f0bc1229..2db568f83 100644 --- a/automobile/appendix.md +++ b/automobile/appendix.md @@ -3,5 +3,6 @@ ## Sections - [C++ libraries](cpp-libraries.md) - [Java libraries](java-libraries.md) +- [Python libraries](python-libraries.md) - [ros_automobile controller](ros_automobile-controller.md) - [A typical OpenstreetMap importer configuration file](a-typical-openstreetmap-importer-configuration-file.md) diff --git a/automobile/automobilewheel.md b/automobile/automobilewheel.md index bc1ce3149..067820c90 100644 --- a/automobile/automobilewheel.md +++ b/automobile/automobilewheel.md @@ -14,23 +14,23 @@ PROTO featuring the corresponding `automobileWheel` slots. ``` AutomobileWheel { - SFFloat thickness 0.3 - SFFloat tireRadius 0.4 - SFInt32 subdivision 24 - SFFloat curvatureFactor 0.35 - SFInt32 edgeSubdivision 1 - SFFloat rimRadius 0.28 - SFInt32 rimBeamNumber 5 - SFFloat rimBeamWidth 0.1 - SFFloat centralInnerRadius 0.09 - SFFloat centralOuterRadius 0.13 - SFFloat rimBeamThickness 0.2 - SFFloat rimBeamOffset 0.03 - SFString contactMaterial "default" - SFNode tireAppearance Appearance { material Material {} } - SFNode rimAppearance Appearance { material Material {} } - SFNode physics Physics {} - MFNode logoSlot [] + SFFloat thickness 0.3 + SFFloat tireRadius 0.4 + SFInt32 subdivision 24 + SFFloat curvatureFactor 0.35 + SFInt32 edgeSubdivision 1 + SFFloat rimRadius 0.28 + SFInt32 rimBeamNumber 5 + SFFloat rimBeamWidth 0.1 + SFFloat centralInnerRadius 0.09 + SFFloat centralOuterRadius 0.13 + SFFloat rimBeamThickness 0.2 + SFFloat rimBeamOffset 0.03 + SFString contactMaterial "default" + SFNode tireAppearance Appearance { material Material {} } + SFNode rimAppearance Appearance { material Material {} } + SFNode physics Physics {} + MFNode logoSlot [] } ``` @@ -52,11 +52,11 @@ part of the wheel. - `rimBeamThickness`: Defines the lateral thickness of the beams. - `rimBeamOffset`: Defines the lateral offset of the beams. - `contactMaterial`: Defines the `contactMaterial` used for the wheel. -- `tireAppearance`: Specifies the appearance of the tire part of the wheel. -- `rimAppearance`: Specifies the appearance of the rim part of the wheel. +- `tireAppearance`: Specifies the appearance of the tire. +- `rimAppearance`: Specifies the appearance of the rim. - `physics`: `Physics` node of the wheel defining all the physical characteristics. -- `logoSlot`: xtension slot allowing the user to add a `Shape` node for a brand +- `logoSlot`: extension slot allowing the user to add a `Shape` node for a brand logo. Some sample instances of wheels are provided (see for example diff --git a/automobile/billboard.md b/automobile/billboard.md new file mode 100644 index 000000000..ac7fd1856 --- /dev/null +++ b/automobile/billboard.md @@ -0,0 +1,57 @@ +## Billboard + +Billboards can be defined thanks to the AdvertisingBoard PROTO which allows the presentation of up to two backlit displays +on up to four equally spaced stands. + +### AdvertisingBoard + +The board display is fully resizable on the three axes allowing any image format +to be displayed. Please note that increasing the thickness of the frame (using the `frameThickness` field) +will also spread the displays. If a texture field is null, the frame is extended +and the side flattened. + +%figure "A few examples of different advertising boards" + +![advertising-board.png](images/advertising-board.png) + +%end + +``` +AdvertisingBoard { + SFVec3f translation 0 0 0 + SFRotation rotation 0 1 0 0 + MFString frontTexture "textures/webots_billboard.jpg" + MFString backTexture "textures/webots_billboard.jpg" + SFBool displayBackLight FALSE + SFFloat displayWidth 4 + SFFloat displayHeight 3 + SFFloat frameThickness 0.6 + SFColor frameColor 0.886275 0.886275 0.886275 + SFColor poleColor 0.886275 0.886275 0.886275 + SFInt32 poleNumber 0 + SFString poleType "cylinder" + SFFloat poleHeight 5 + SFFloat poleThickness 0.4 + SFFloat baseRatio 3.2 +} +``` + +#### AdvertisingBoard Field Summary + +- `frontTexture`: Defines the front display texture. +- `backTexture`: Defines the back display texture. +- `displayBackLight`: Defines wether the displays are backlit or not. +- `displayWidth`: Defines the width of the displays. +- `displayHeight`: Defines the height of the displays. +- `frameThickness`: Defines the thickness of the frame. +- `frameColor`: Defines the color of the outer frame of the board. +- `poleColor`: Defines the color of the pole if present. +- `poleNumber`: Defines the number of poles. Their position is defined by the +number of poles. There can be up to 4 equally spaced poles per board. +- `poleType`: Defines the shape and behavious of the pole(s). `box` and `cylinder` +pole types are placed at the center of the board and `H-shape` is placed behind. +In the case of `H-shape`, backTexture is null and a base is not defined. +- `poleHeight`: Defines the height of the pole. +- `poleThickness`: Defines the thickness of the pole (radius of the cylinder for "cylinder"). +- `baseRatio`: Defines the size of the base for `box` and `cylinder` poles. +This field is based on a ratio of `poleThickness`. diff --git a/automobile/buildings.md b/automobile/buildings.md index 0f46b06c7..799b3f104 100644 --- a/automobile/buildings.md +++ b/automobile/buildings.md @@ -6,7 +6,7 @@ %end -The following PROTOs of buildings are available to add in your worlds: +The following PROTO nodes of buildings are available to add in your worlds: - Auditorium - BigGlassTower @@ -22,10 +22,17 @@ The following PROTOs of buildings are available to add in your worlds: - SimpleTwoFloorsHouse - TheThreeTowers - UBuilding +- FastFoodRestaurant + +%figure "An example of FastFoodRestaurant with two sides" + +![fastfood-restaurant.png](images/fastfood-restaurant.png) + +%end ### Generic building -In addition to those PROTOs of buildings, the `GenericBuilding` PROTO represent +In addition to those building PROTO nodes, the `GenericBuilding` PROTO represents a highly customizable building and can be used to model a large variety of buildings. @@ -37,17 +44,17 @@ buildings. ``` GenericBuilding { - SFFloat floorHeight 3 - SFInt32 floorNumber 3 - MFVec2f corners [10 10, 10 -10, -10 -10, -10 10 ] - SFString wallType "building2" - SFString roofType "tiled" - SFString roofShape "pyramidal roof" - SFBool snowOnRoof FALSE - SFFloat roofHeight 3 - SFBool enableBoundingObject TRUE - SFBool bottom FALSE - } + SFFloat floorHeight 3 + SFInt32 floorNumber 3 + MFVec2f corners [10 10, 10 -10, -10 -10, -10 10 ] + SFString wallType "windowed building" + SFString roofType "tiled" + SFString roofShape "pyramidal roof" + SFBool snowOnRoof FALSE + SFFloat roofHeight 3 + SFBool enableBoundingObject TRUE + SFBool bottom FALSE +} ``` #### GenericBuilding Field Summary @@ -61,23 +68,25 @@ building). `tiled`, `gravel` and `slate`. - `roofShape`: Defines the geometry of the roof. Supported geometry are `flat roof` and `pyramidal roof`. -- `snowOnRoof`: Defines if snow should be added on top of the roof. +- `snowOnRoof`: Defines whether snow should be added on top of the roof. - `roofHeight`: Defines the height of the roof (used only in the case of pyramidal roof). -- `enableBoundingObject`: Defines if the building should have a bounding object. -- `bottom`: Defines if the bottom face of the building should be displayed. +- `enableBoundingObject`: Defines whether the building should have a bounding object. +- `bottom`: Defines whether the bottom face of the building should be displayed. ### Other city objects In addition to buildings, other PROTO nodes are available representing objects -normally found in a city environment: +usually found in a city environment: - BusStop - Fence - Fountain +- PublicToilet -%figure "The BusStop PROTO" +%figure "The BusStop and PublicToilet PROTO models" ![bus_stop.png](images/bus_stop.png) +![public-toilet.png](images/public-toilet.png) %end diff --git a/automobile/car-and-driver-libraries.md b/automobile/car-and-driver-libraries.md index a299c26fa..9a2355bec 100644 --- a/automobile/car-and-driver-libraries.md +++ b/automobile/car-and-driver-libraries.md @@ -1,13 +1,14 @@ # Car and Driver libraries -To ease the creation of controllers for any [Car](car.md) PROTOs (or any PROTOs -inherited from [Car](car.md)), two libraries are provided. These two libraries -are easy to use, provide high-level functionalities and save the user from -knowing the name of the internal devices nodes (`Motors`, `Brakes`, etc.) of the -car. This section presents and explains how to use these two libraries. +To ease the creation of controllers for any [Car](car.md) PROTO models (or any +PROTO node inherited from [Car](car.md)), two libraries are provided. +These two libraries are easy to use, provide high-level functionalities and save +the user from knowing the name of the internal devices nodes (`Motors`, +`Brakes`, etc.) of the car. +This section presents and explains how to use these two libraries. ## Sections - [Driver library](driver-library.md) - [Car library](car-library.md) -- [C++ and Java wrappers of the automobile libraries](cpp-and-java-wrappers-of-the-automobile-libraries.md) +- [C++, Java and Python wrappers of the automobile libraries](cpp-java-and-python-wrappers-of-the-automobile-libraries.md) - [ROS support](ros-support.md) diff --git a/automobile/car-library.md b/automobile/car-library.md index fd124399e..18503210c 100644 --- a/automobile/car-library.md +++ b/automobile/car-library.md @@ -10,11 +10,11 @@ encoders). All the functions included in this library are explained below. **wbu\_car\_init**, **wbu\_car\_cleanup** - *Initialise and clean* -``` c +```c #include -void wbu_car_init() -void wbu_car_cleanup() +void wbu_car_init(); +void wbu_car_cleanup(); ``` **Description** @@ -32,11 +32,11 @@ functions since they are already called from the corresponding functions of the **wbu\_car\_get\_type**, **wbu\_car\_get\_engine\_type** - *Get the car and engine type* -``` c +```c #include -wbu_car_type wbu_car_get_type() -wbu_car_engine_type wbu_car_get_type() +wbu_car_type wbu_car_get_type(); +wbu_car_engine_type wbu_car_get_type(); ``` **Description** @@ -71,11 +71,11 @@ of the car. **wbu\_car\_set\_indicator\_period**, **wbu\_car\_get\_indicator\_period** - *Set and get the indicator period* -``` c +```c #include -void wbu_car_set_indicator_period(double period) -double wbu_car_get_indicator_period() +void wbu_car_set_indicator_period(double period); +double wbu_car_get_indicator_period(); ``` **Description** @@ -92,16 +92,16 @@ of the indicators. **wbu\_car\_get\_backwards\_lights**, **wbu\_car\_get\_brake\_lights** - *Get the state of the backwards/brake lights* -``` c +```c #include -bool wbu_car_get_backwards_lights() -bool wbu_car_get_brake_lights() +bool wbu_car_get_backwards_lights(); +bool wbu_car_get_brake_lights(); ``` **Description** -This two functions return respectively the state of the backwards and brake +These two functions return respectively the state of the backwards and brake lights (these two lights are switched on automatically by the library when appropriated). @@ -111,19 +111,19 @@ appropriated). **wbu\_car\_get\_track\_front**, **wbu\_car\_get\_track\_rear**, **wbu\_car\_get\_wheelbase**, **wbu\_car\_get\_front\_wheel\_radius**, **wbu\_car\_get\_rear\_wheel\_radius** - *Get car caracteristics* -``` c +```c #include -double wbu_car_get_track_front() -double wbu_car_get_track_rear() -double wbu_car_get_wheelbase() -double wbu_car_get_front_wheel_radius() -double wbu_car_get_rear_wheel_radius() +double wbu_car_get_track_front(); +double wbu_car_get_track_rear(); +double wbu_car_get_wheelbase(); +double wbu_car_get_front_wheel_radius(); +double wbu_car_get_rear_wheel_radius(); ``` **Description** -All these functions provide important physical characteristics of the car. +All these functions provide important physical characteristics from the car. --- @@ -131,11 +131,11 @@ All these functions provide important physical characteristics of the car. **wbu\_car\_get\_wheel\_encoder**, **wbu\_car\_get\_wheel\_speed** - *Get the wheels speed/encoder* -``` c +```c #include -double wbu_car_get_wheel_encoder(int wheel_index) -double wbu_car_get_wheel_speed(int wheel_index) +double wbu_car_get_wheel_encoder(int wheel_index); +double wbu_car_get_wheel_speed(int wheel_index); ``` **Description** @@ -163,16 +163,16 @@ enum. **wbu\_car\_get\_right\_steering\_angle**, **wbu\_car\_get\_left\_steering\_angle** - *Get the right/left steering angle* -``` c +```c #include -double wbu_car_get_right_steering_angle() -double wbu_car_get_left_steering_angle() +double wbu_car_get_right_steering_angle(); +double wbu_car_get_left_steering_angle(); ``` **Description** -These two functions return respectively the right and left steering angle +These two functions return respectively the right and left steering angles (because of the Ackermann steering geometry, the two angles are slightly different). @@ -182,10 +182,10 @@ different). **wbu\_car\_enable\_limited\_slip\_differential** - *Enable/disable the limited slip differential mechanism* -``` c +```c #include -void wbu_car_enable_limited_slip_differential(bool enable) +void wbu_car_enable_limited_slip_differential(bool enable); ``` **Description** @@ -193,7 +193,7 @@ void wbu_car_enable_limited_slip_differential(bool enable) This function allows the user to enable or disable the limited differential slip (it is enabled by default). When the limited differential slip is enabled, at each time step, the torque (when control in torque is enabled) is redistributed -among all the actuated wheels so that they rotate at the same speed (except the +amongst all the actuated wheels so that they rotate at the same speed (except the difference due to the geometric differential constraint). If the limited differential slip is disabled, when a wheel starts to slip, it will rotate faster than the others. @@ -204,10 +204,10 @@ faster than the others. **wbu\_car\_enable\_indicator\_auto\_disabling** - *Enable/disable the auto-disabling mechanism of the indicator* -``` c +```c #include -void wbu_car_enable_indicator_auto_disabling(bool enable) +void wbu_car_enable_indicator_auto_disabling(bool enable); ``` **Description** diff --git a/automobile/car.md b/automobile/car.md index da8edc268..f11f724de 100644 --- a/automobile/car.md +++ b/automobile/car.md @@ -3,24 +3,26 @@ The `Car` PROTO inherits from the [AckermannVehicle](ackermannvehicle.md) PROTO and extends it. It should be used with the [driver](driver-library.md) library in order to add a model of the engine, transmission, lights, gearbox and brake. -The joint devices are automatically filled in with the appropriate devices in -function of the transmission type set in the parameters. +The joint devices are automatically filled in with the appropriate devices depending +on the transmission type set in the parameters. ``` Car { - #fields specific to Car - SFString type "traction" - SFString engineType "combustion" - SFFloat brakeCoefficient 500 - SFFloat time0To100 10 - SFFloat engineMaxTorque 250 - SFFloat engineMaxPower 50000 - SFFloat engineMinRPM 1000 - SFFloat engineMaxRPM 4500 - SFVec3f engineFunctionCoefficients 150 0.1 0 - MFFloat gearRatio [-12 10 7 5 2.5 1] - SFFloat hybridPowerSplitRatio 0.25 - SFFloat hybridPowerSplitRPM 3000 + #fields specific to Car + SFString type "traction" + SFString engineType "combustion" + SFString engineSound "sounds/engine.wav" + SFFloat engineSoundRpmReference 1000 + SFFloat brakeCoefficient 500 + SFFloat time0To100 10 + SFFloat engineMaxTorque 250 + SFFloat engineMaxPower 50000 + SFFloat engineMinRPM 1000 + SFFloat engineMaxRPM 4500 + SFVec3f engineFunctionCoefficients 150 0.1 0 + MFFloat gearRatio [-12 10 7 5 2.5 1] + SFFloat hybridPowerSplitRatio 0.25 + SFFloat hybridPowerSplitRPM 3000 } ``` @@ -32,6 +34,8 @@ Car { `electric`, `parallel hybrid` and `power-split hybrid` (for a serial hybrid please use electric instead). See section [Engine models](driver-library.md#engine-models) for more information. +- `engineSound`: Defines the sound used to simulate the engine sound, if the string is empty the engine sound is not simulated. +- `engineSoundRpmReference`: Defines the reference rotation per minutes of the engine sound. See the [Engine sound](#engine-sound) paragraph for more information about the engine sound simulation. - `brakeCoefficient`: Defines the maximum `dampingConstant` applied by the brake on the wheels joint. - `time0To100`: Defines the time to accelerate from 0 to 100 km/h in seconds, this @@ -44,14 +48,14 @@ the electric engine torque. - `engineMinRPM and engineMaxRPM`: Defines the working range of the engine (`engineMinRPM` not used in case of `electric` `engineType`). - `engineFunctionCoefficients`: Define the coefficients of the second order -function used to approximate the output torque in function of the rotational +function used to approximate the output torque as a function of the rotational speed of the motor. - `gearRatio`: Defines the total (not only the gearbox ratio) ratio between the rotational speed of the engine and the wheels, the number of elements defines the number of gears, the first element should be negative and is the reverse gear. - `hybridPowerSplitRatio`: Defines the ratio of the output power of the combustion -engine that is used for charging the battery in case of `power-split hybrid` +engine that is used to charge the battery in case of `power-split hybrid` `engineType`. - `hybridPowerSplitRPM`: Defines the fixed rotational speed of the combustion engine in case of `power-split hybrid` `engineType`. @@ -59,6 +63,14 @@ engine in case of `power-split hybrid` `engineType`. The `extensionSlot` field is filled in by default with the `AutomobileLights` PROTO. +#### Engine sound + +If the `engineSound` field of the `Car` PROTO is not empty, the sound file defined in this field is used to simulate the engine sound. The amplitude and frequency of the sound is modulated in function of the rpm and throttle values: + +%figure "Engine sound simulation" +![engine_sound.png](images/engine_sound.png) +%end + ### AutomobileLights The `AutomobileLights` PROTO is used to add all the models of the regular lights @@ -69,25 +81,25 @@ from `extensionSlot`. ``` AutomobileLights { - MFNode front NULL - MFColor frontColor [ 0.8 0.8 0.8 ] - MFNode rightIndicator NULL - MFNode leftIndicator NULL - MFColor indicatorColor [ 1 0.7 0.1 ] - MFNode antifog NULL - MFColor antifogColor [ 0.8 0.8 0.8 ] - MFNode braking NULL - MFColor brakingColor [ 0.7 0.12 0.12 ] - MFNode rear NULL - MFColor rearColor [ 0.8 0.8 0.8 ] - MFNode backwards NULL - MFColor backwardsColor [ 0.7 0.12 0.12 ] - } + MFNode front NULL + MFColor frontColor [ 0.8 0.8 0.8 ] + MFNode rightIndicator NULL + MFNode leftIndicator NULL + MFColor indicatorColor [ 1 0.7 0.1 ] + MFNode antifog NULL + MFColor antifogColor [ 0.8 0.8 0.8 ] + MFNode braking NULL + MFColor brakingColor [ 0.7 0.12 0.12 ] + MFNode rear NULL + MFColor rearColor [ 0.8 0.8 0.8 ] + MFNode backwards NULL + MFColor backwardsColor [ 0.7 0.12 0.12 ] +} ``` Here again, you can easily create your own PROTO that inherits from the [Car](#car) PROTO to define your own custom and complete model of car. Three -PROTOs that inherit from the [Car](#car) PROTO are provided. These PROTOs +PROTO models that inherit from the [Car](#car) PROTO are provided. They represent three different models of car: the X5 from BMW, the C-Zero from Citroen and the Prius from Toyota. @@ -97,7 +109,7 @@ Citroen and the Prius from Toyota. %end -An interesting aspect of these three PROTOs is that the `extensionSlot` is +An interesting aspect of these three PROTO nodes is that the `extensionSlot` is divided into four `sensorsSlot` in order to provide smart predefined positions where to put sensors (or actuators if needed), which are in the front, top, rear and center of the car. The position of the central sensors slot is always at 0 0 @@ -115,8 +127,8 @@ differs), see the [following table](#slotpositions) for the exact positions. %end -For each model of car, a `simple` PROTO is present too. This simplified -kinematic PROTOs is not based on a `Robot` node but on a `Solid` node, it is -therefore not possible to add sensors or control it. This simplified versions -are made for representing non-moving parked cars or to be moved using a -Supervisor, they are much faster to simulate than the normal PROTOs. +For each model of car, a `simple` PROTO is present too. These simplified +kinematic PROTO models are not based on a `Robot` node but on a `Solid` node, it is +therefore not possible to add sensors or control them. But they are made +to represent non-moving parked cars or to be moved using a +Supervisor because they are much faster to simulate than the normal PROTO models. diff --git a/automobile/ch-morges.md b/automobile/ch-morges.md index 67a7e978c..b9b81fb37 100644 --- a/automobile/ch-morges.md +++ b/automobile/ch-morges.md @@ -6,7 +6,7 @@ %end -The city of Morges is a medium size city on the banks of Lake Geneva in +The city of Morges is a medium sized city on the banks of Lake Geneva in Switzerland. The entire city center was modeled using the [OpenStreetMap importer](openstreetmap-importer.md) tools. The world includes around 400 roads, more than 1000 buildings, a few small forests, rivers, the lake, etc. diff --git a/automobile/city-night.md b/automobile/city-night.md index 9a6eb4707..b4e9de993 100644 --- a/automobile/city-night.md +++ b/automobile/city-night.md @@ -6,7 +6,7 @@ %end -This world is very close to the `city` one, except that it simulates night +This world is similar to the `city` one, except that it simulates night lighting conditions. The sun light was removed and a few street lights (including a defective blinking one) were added. The front `SpotLights` of the car were enabled too. This world is useful to test the robustness of driving diff --git a/automobile/city-traffic.md b/automobile/city-traffic.md index f41672cce..3493e8fc4 100644 --- a/automobile/city-traffic.md +++ b/automobile/city-traffic.md @@ -7,7 +7,7 @@ %end This world is an extension of the `city` world. The road network was extended -and some more trees and buildings were added. Like in the `city` world, a +and some extra trees and buildings were added. Like in the `city` world, a vehicle is driving autonomously using the on-board camera to follow the central line of the road. In addition, sumo is used to generate some traffic on the road network. diff --git a/automobile/cpp-and-java-wrappers-of-the-automobile-libraries.md b/automobile/cpp-and-java-wrappers-of-the-automobile-libraries.md deleted file mode 100644 index d381f1d6e..000000000 --- a/automobile/cpp-and-java-wrappers-of-the-automobile-libraries.md +++ /dev/null @@ -1,29 +0,0 @@ -## C++ and Java wrappers of the automobile libraries - -The [driver](driver-library.md) and [car](car-library.md) libraries are also -available as oriented-object wrappers for the C++ and the Java languages. - -The [Driver](cpp-libraries.md#cppdriver) and [Car](cpp-libraries.md#cppcar) -classes are containing all the methods described in the C API. Camel case is -used to define the method names. The `init` and `cleanup` functions are called -automatically from the constructor/destructor of the -[Driver](cpp-libraries.md#cppdriver) and [Car](cpp-libraries.md#cppcar) classes. - -> **note** [Java]: -The following program shows how to set the cruising speed and the steering angle -in Java: - -> import com.cyberbotics.webots.controller.Robot; -> import com.cyberbotics.webots.automobile.Driver; -> -> public class VehicleDriver { -> public static void main(String[] args) { -> Driver driver = new Driver(); -> driver.setCruisingSpeed(20.0); -> -> while (driver.step() != -1) { -> double angle = 0.3 * Math.cos(driver.getTime()); -> driver.setSteeringAngle(angle); -> }; -> } -> } diff --git a/automobile/cpp-java-and-python-wrappers-of-the-automobile-libraries.md b/automobile/cpp-java-and-python-wrappers-of-the-automobile-libraries.md new file mode 100644 index 000000000..3c2fcbb3b --- /dev/null +++ b/automobile/cpp-java-and-python-wrappers-of-the-automobile-libraries.md @@ -0,0 +1,58 @@ +## C++, Java and Python wrappers of the automobile libraries + +The [driver](driver-library.md) and [car](car-library.md) libraries are also +available as oriented-object wrappers for the C++, the Java and the Python languages. + +The [Driver](cpp-libraries.md#cppdriver) and [Car](cpp-libraries.md#cppcar) +classes are containing all the methods described in the C API. Camel case is +used to define the method names. The `init` and `cleanup` functions are called +automatically from the constructor/destructor of the +[Driver](cpp-libraries.md#cppdriver) and [Car](cpp-libraries.md#cppcar) classes. + +> **note** [Java]: +The following program shows how to set the cruising speed and the steering angle +in Java: + +> ```java +> import com.cyberbotics.webots.controller.Robot; +> import com.cyberbotics.webots.automobile.Driver; +> +> public class VehicleDriver { +> public static void main(String[] args) { +> Driver driver = new Driver(); +> driver.setCruisingSpeed(20.0); +> +> while (driver.step() != -1) { +> double angle = 0.3 * Math.cos(driver.getTime()); +> driver.setSteeringAngle(angle); +> }; +> } +> } +> ``` + +> **note** [Python]: +The following program shows how to set the cruising speed and the steering angle +in Python: + +> ```python +> import math +> import os +> import sys +> +> try: +> libraryPath = os.environ.get("WEBOTS_HOME") + "/projects/automobile/libraries/python" +> libraryPath.replace('/', os.sep) +> sys.path.append(libraryPath) +> from automobile import Driver +> except ImportError: +> sys.stderr.write("Warning: 'automobile' module not found.\n") +> sys.exit(0) +> +> driver = Driver() +> driver.setSteeringAngle(0.2) +> driver.setCruisingSpeed(20) +> +> while driver.step() != -1: +> angle = 0.3 * math.cos(driver.getTime()) +> driver.setSteeringAngle(angle) +> ``` diff --git a/automobile/driver-library.md b/automobile/driver-library.md index 7292b697c..acf894a57 100644 --- a/automobile/driver-library.md +++ b/automobile/driver-library.md @@ -1,6 +1,6 @@ ## Driver library -The [driver](#driver-library) library provides all the usual functionality +The [driver](#driver-library) library provides all the usual functionalities available to a human driving his own car. All the functions included in this library are explained below. @@ -8,12 +8,12 @@ library are explained below. **wbu\_driver\_init**, **wbu\_driver\_cleanup**, **wbu\_driver\_step** - *Initialise, clean and run a driver step* -``` c +```c #include -void wbu_driver_init() -void wbu_driver_cleanup() -int wbu_driver_step() +void wbu_driver_init(); +void wbu_driver_cleanup(); +int wbu_driver_step(); ``` **Description** @@ -32,11 +32,11 @@ used. **wbu\_driver\_set\_steering\_angle**, **wbu\_driver\_get\_steering\_angle** - *Set and get the stearing angle* -``` c +```c #include -void wbu_driver_set_steering_angle(double steering_angle) -double wbu_driver_get_steering_angle() +void wbu_driver_set_steering_angle(double steering_angle); +double wbu_driver_get_steering_angle(); ``` **Description** @@ -48,9 +48,9 @@ angle steers right and a negative angle steers left. The formulas used in order to compute the right and left angles are the following (`trackFront` and `wheelbase` are the parameters of the [Car](car.md) PROTO): -``` -angle_right = atan(1 / cot(steering_angle) - trackFront / (2 * wheelbase)) -angle_left = atan(1 / cot(steering_angle) + trackFront / (2 * wheelbase)) +```c +angle_right = atan(1 / cot(steering_angle) - trackFront / (2 * wheelbase)); +angle_left = atan(1 / cot(steering_angle) + trackFront / (2 * wheelbase)); ``` The `wbu_driver_get_steering_angle` function returns the current steering angle. @@ -61,18 +61,18 @@ The `wbu_driver_get_steering_angle` function returns the current steering angle. **wbu\_driver\_set\_cruising\_speed**, **wbu\_driver\_get\_target\_cruising\_speed** - *Set and get the target cruising speed* -``` c +```c #include -void wbu_driver_set_cruising_speed(double speed) -double wbu_driver_get_target_cruising_speed() +void wbu_driver_set_cruising_speed(double speed); +double wbu_driver_get_target_cruising_speed(); ``` **Description** The `wbu_driver_set_cruising_speed` function activates the control in cruising speed of the car, the rotational speed of the wheels is forced (respecting the -geometric differential constraint) in order that the car moves at the speed +geometric differential constraint) in order for the car to move at the speed given in argument of the function (in kilometers per hour). When the control in cruising speed is activated, the speed is directly applied to the wheel without any engine model simulation, therefore any call to functions like @@ -89,10 +89,10 @@ function). **wbu\_driver\_get\_current\_speed** - *Get the current speed* -``` c +```c #include -double wbu_driver_get_current_speed() +double wbu_driver_get_current_speed(); ``` **Description** @@ -107,11 +107,11 @@ and their respective radius. **wbu\_driver\_set\_throttle**, **wbu\_driver\_get\_throttle** - *Set and get the throttle* -``` c +```c #include -void wbu_driver_set_throttle(double throttle) -double wbu_driver_get_throttle() +void wbu_driver_set_throttle(double throttle); +double wbu_driver_get_throttle(); ``` **Description** @@ -132,11 +132,11 @@ The `wbu_driver_get_throttle` function simply returns the state of the throttle **wbu\_driver\_set\_brake**, **wbu\_driver\_get\_brake** - *Set and get the brake* -``` c +```c #include -void wbu_driver_set_brake(double brake) -double wbu_driver_get_brake() +void wbu_driver_set_brake(double brake); +double wbu_driver_get_brake(); ``` **Description** @@ -158,13 +158,13 @@ The `wbu_driver_get_brake` function simply returns the state of the brake **wbu\_driver\_set\_indicator**, **wbu\_driver\_get\_indicator**, **wbu\_driver\_set\_hazard\_flashers**, **wbu\_driver\_get\_hazard\_flashers** - *Set and get the indicator state* -``` c +```c #include -void wbu_driver_set_indicator(int state) -wbu_indicator_state wbu_driver_get_indicator() -void wbu_driver_set_hazard_flashers(bool state) -bool wbu_driver_get_hazard_flashers() +void wbu_driver_set_indicator(int state); +wbu_indicator_state wbu_driver_get_indicator(); +void wbu_driver_set_hazard_flashers(bool state); +bool wbu_driver_get_hazard_flashers(); ``` **Description** @@ -195,13 +195,13 @@ the hazard flashers. **wbu\_driver\_set\_dipped\_beams**, **wbu\_driver\_set\_antifog\_lights**, **wbu\_driver\_get\_dipped\_beams**, **wbu\_driver\_get\_antifog\_lights** - *Set and get the lights* -``` c +```c #include -void wbu_driver_set_dipped_beams(bool state) -void wbu_driver_set_antifog_lights(bool state) -bool wbu_driver_get_dipped_beams() -bool wbu_driver_get_antifog_lights() +void wbu_driver_set_dipped_beams(bool state); +void wbu_driver_set_antifog_lights(bool state); +bool wbu_driver_get_dipped_beams(); +bool wbu_driver_get_antifog_lights(); ``` **Description** @@ -218,10 +218,10 @@ return the state of the dipped beams or the anti-fog lights. **wbu\_driver\_get\_rpm** - *Get the motor rpm* -``` c +```c #include -double wbu_driver_get_rpm() +double wbu_driver_get_rpm(); ``` **Description** @@ -238,12 +238,12 @@ because there is no engine model when control in cruising speed is enabled. **wbu\_driver\_set\_gear**, **wbu\_driver\_get\_gear**, **wbu\_driver\_get\_gear\_number** - *Get and set the gear* -``` c +```c #include -void wbu_driver_set_gear(int gear) -int wbu_driver_get_gear() -int wbu_driver_get_gear_number() +void wbu_driver_set_gear(int gear); +int wbu_driver_get_gear(); +int wbu_driver_get_gear_number(); ``` **Description** @@ -265,10 +265,10 @@ gears (including the reverse gear). **wbu\_driver\_get\_control\_mode** - *Get the control mode* -``` c +```c #include -wbu_control_mode wbu_driver_get_control_mode() +wbu_control_mode wbu_driver_get_control_mode(); ``` **Description** diff --git a/automobile/images/HighwayPole1.png b/automobile/images/HighwayPole1.png new file mode 100644 index 0000000000000000000000000000000000000000..3856eca5e22b308fcd246717aba327661e387775 GIT binary patch literal 43550 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

@-`Yiv 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Ð%sF*A&`v<&in_uZVCrW7Yc(cklN1 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

%seFls??yK0hKcT}=`abNMd@s@7OnPTiATgs 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 IyQa_nAJC1WEdT%j literal 0 HcmV?d00001 diff --git a/automobile/images/advertising-board.png b/automobile/images/advertising-board.png new file mode 100644 index 0000000000000000000000000000000000000000..45a63888d86b02457c94a5146130178e5b42d964 GIT binary patch literal 97371 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%0Dv!Dta#|xaFfw`Ub{kBFp;(=KFht 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%0DRXyMz(OTrdBg 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 literal 17258 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 literal 0 HcmV?d00001 diff --git a/automobile/images/fastfood-restaurant.png b/automobile/images/fastfood-restaurant.png new file mode 100644 index 0000000000000000000000000000000000000000..460057f0ab3b90651f39f96c5987c505a84b748d GIT binary patch literal 484235 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