Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ENU/FLU Conversion Plan #3073

Merged
merged 462 commits into from
Dec 3, 2021
Merged

ENU/FLU Conversion Plan #3073

merged 462 commits into from
Dec 3, 2021

Conversation

lukicdarkoo
Copy link
Member

@lukicdarkoo lukicdarkoo commented May 17, 2021

This PR includes ENU/FLU conversion changes.

Plan

1. Fix geometries orientation (#3510)

  • Cylinder
  • Capsule
  • Cone
  • Plane
  • Elevation grid

2. Fix sensor orientation

Some sensors don't respect the ENU/FLU convention, so we have to fix it first. Otherwise, the conversion has to be done twice (this will break MANY things).

3. Improve the conversion script

4. Convert device and object PROTOs

All PROTOs are converted and therefore commented out.

5. Convert robots

  • (318) humans/c3d/protos/C3dMarker.proto
  • (319) humans/c3d/protos/C3dGroundReactionForce.proto
  • (320) humans/c3d/protos/C3dViewer.proto
  • (321) humans/c3d/protos/C3dBodyRepresentation.proto
  • (322) humans/pedestrian/protos/PedestrianRightHand.proto
  • (323) humans/pedestrian/protos/PedestrianLeftFoot.proto
  • (324) humans/pedestrian/protos/PedestrianLeftUpperLeg.proto
  • (325) humans/pedestrian/protos/PedestrianNeck.proto
  • (326) humans/pedestrian/protos/PedestrianLeftHand.proto
  • (327) humans/pedestrian/protos/PedestrianLeftUpperArm.proto
  • (328) humans/pedestrian/protos/PedestrianTorso.proto
  • (329) humans/pedestrian/protos/Pedestrian.proto
  • (330) humans/pedestrian/protos/PedestrianRightLowerArm.proto
  • (331) humans/pedestrian/protos/PedestrianRightUpperLeg.proto
  • (332) humans/pedestrian/protos/PedestrianRightFoot.proto
  • (333) humans/pedestrian/protos/PedestrianLeftLowerArm.proto
  • (334) humans/pedestrian/protos/PedestrianRightLowerLeg.proto
  • (335) humans/pedestrian/protos/PedestrianHead.proto
  • (336) humans/pedestrian/protos/PedestrianRightUpperArm.proto
  • (337) humans/pedestrian/protos/PedestrianLeftLowerLeg.proto
  • (338) samples/geometries/protos/TeapotMesh.proto
  • (339) samples/rendering/protos/PingPongBallScaled.proto
  • (340) samples/rendering/protos/Helmet.proto
  • (341) samples/rendering/protos/SphereGrid.proto
  • (342) samples/curriculum/protos/Obstacle.proto
  • (343) samples/tutorials/protos/FourWheelsRobot.proto
  • (344) samples/robotbenchmark/highway_driving/protos/HighwayDrivingBenchmark.proto
  • (345) samples/robotbenchmark/highway_driving/protos/DistanceSensorVisualization.proto
  • (346) samples/robotbenchmark/maze_runner/protos/MazeRunnerBenchmark.proto
  • (347) samples/robotbenchmark/maze_runner/protos/MazeBlock.proto
  • (348) samples/robotbenchmark/square_path/protos/SquarePathPioneer3dx.proto
  • (349) samples/robotbenchmark/square_path/protos/SquarePathBenchmark.proto
  • (350) samples/robotbenchmark/obstacle_avoidance/protos/ObstacleAvoidanceBenchmark.proto
  • (351) samples/robotbenchmark/pit_escape/protos/PitEscapeBenchmark.proto
  • (352) samples/robotbenchmark/pit_escape/protos/Pit.proto
  • (353) samples/robotbenchmark/inverted_pendulum/protos/InvertedPendulumBenchmark.proto
  • (354) samples/robotbenchmark/pick_and_place/protos/PickAndPlaceBenchmark.proto
  • (355) samples/robotbenchmark/humanoid_sprint/protos/RaceStopwatch.proto
  • (356) samples/robotbenchmark/wall_following/protos/WallFollowingPioneer3dx.proto
  • (357) samples/robotbenchmark/wall_following/protos/LinkedWalls.proto
  • (358) samples/robotbenchmark/humanoid_marathon/protos/HumanoidMarathonBenchmark.proto
  • (359) samples/robotbenchmark/robot_programming/protos/RobotProgrammingBenchmark.proto
  • (360) samples/robotbenchmark/visual_tracking/protos/VisualTrackingBenchmark.proto
  • (361) samples/contests/tower_of_hanoi/protos/YoubotFlag.proto
  • (362) samples/contests/robocup/protos/RobocupGoal.proto
  • (363) samples/contests/robocup/protos/RobocupSoccerField.proto
  • (364) samples/contests/rockin/protos/RoCKInShelf.proto
  • (365) samples/contests/rockin/protos/RoCKInER02.proto
  • (366) samples/contests/rockin/protos/RoCKInAX06.proto
  • (367) samples/contests/rockin/protos/RoCKInAX01.proto
  • (368) samples/contests/ratslife/protos/LegoWall.proto
  • (369) samples/contests/ratslife/protos/LegoInterval.proto
  • (370) samples/contests/ratslife/protos/NXTFeeder.proto
  • (371) samples/contests/ratslife/protos/e-puck/E-puckFlag.proto
  • (372) default/protos/SumoInterface.proto
  • (373) default/protos/Supervisor.proto
  • (374) default/protos/SumoDisplay.proto
  • (375) bounding_objects/protos/PipeBoundingObject.proto
  • (376) bounding_objects/protos/TorusBoundingObject.proto
  • (377) vehicles/protos/citroen/CitroenCZeroBrakeLight.proto
  • (378) vehicles/protos/citroen/CitroenCZeroSimple.proto
  • (379) vehicles/protos/citroen/CitroenCZero.proto
  • (380) vehicles/protos/citroen/CitroenCZeroHeadLight.proto
  • (381) vehicles/protos/citroen/CitroenCZeroRearWheel.proto
  • (382) vehicles/protos/citroen/CitroenCZeroRightIndicator.proto
  • (383) vehicles/protos/citroen/CitroenCZeroFogLight.proto
  • (384) vehicles/protos/citroen/CitroenCZeroMesh.proto
  • (385) vehicles/protos/citroen/CitroenCZeroFrontWheel.proto
  • (386) vehicles/protos/citroen/CitroenCZeroLeftIndicator.proto
  • (387) vehicles/protos/citroen/CitroenCZeroTailLight.proto
  • (388) vehicles/protos/mercedes_benz/MercedesBenzSprinterSimple.proto
  • (389) vehicles/protos/mercedes_benz/MercedesBenzSprinterMesh.proto
  • (390) vehicles/protos/mercedes_benz/MercedesBenzSprinterLights.proto
  • (391) vehicles/protos/mercedes_benz/MercedesBenzSprinter.proto
  • (392) vehicles/protos/mercedes_benz/MercedesBenzSprinterLogos.proto
  • (393) vehicles/protos/mercedes_benz/MercedesBenzSprinterInterior.proto
  • (394) vehicles/protos/generic/MotorbikeBackwardsLight.proto
  • (395) vehicles/protos/generic/MotorbikeMesh.proto
  • (396) vehicles/protos/generic/TruckFrontLight.proto
  • (397) vehicles/protos/generic/ScooterBackwardsLight.proto
  • (398) vehicles/protos/generic/TruckTrailerSimple.proto
  • (399) vehicles/protos/generic/ScooterDriver.proto
  • (400) vehicles/protos/generic/ScooterRightIndicator.proto
  • (401) vehicles/protos/generic/ScooterWheel.proto
  • (402) vehicles/protos/generic/TruckWheel.proto
  • (403) vehicles/protos/generic/Bus.proto
  • (404) vehicles/protos/generic/BusShape.proto
  • (405) vehicles/protos/generic/MotorbikeDriver.proto
  • (406) vehicles/protos/generic/BusWheel.proto
  • (407) vehicles/protos/generic/MotorbikeFrontLight.proto
  • (408) vehicles/protos/generic/MotorbikeLeftIndicator.proto
  • (409) vehicles/protos/generic/ScooterMesh.proto
  • (410) vehicles/protos/generic/Tractor.proto
  • (411) vehicles/protos/generic/TruckTank.proto
  • (412) vehicles/protos/generic/TruckSimple.proto
  • (413) vehicles/protos/generic/TruckTrailerMesh.proto
  • (414) vehicles/protos/generic/TruckRearLight.proto
  • (415) vehicles/protos/generic/TractorRearWheel.proto
  • (416) vehicles/protos/generic/TruckCab.proto
  • (417) vehicles/protos/generic/MotorbikeRightIndicator.proto
  • (418) vehicles/protos/generic/TruckTankMesh.proto
  • (419) vehicles/protos/generic/ScooterLeftIndicator.proto
  • (420) vehicles/protos/generic/TractorFrontWheel.proto
  • (421) vehicles/protos/generic/BusSimple.proto
  • (422) vehicles/protos/generic/TruckTrailer.proto
  • (423) vehicles/protos/generic/MotorbikeWheel.proto
  • (424) vehicles/protos/generic/ScooterFrontLight.proto
  • (425) vehicles/protos/generic/MotorbikeSimple.proto
  • (426) vehicles/protos/generic/ScooterSimple.proto
  • (427) vehicles/protos/generic/Truck.proto
  • (428) vehicles/protos/generic/TruckTankSimple.proto
  • (429) vehicles/protos/range_rover/RangeRoverSportSVRAntifogLightsMesh.proto
  • (430) vehicles/protos/range_rover/RangeRoverSportSVRWindowsMesh.proto
  • (431) vehicles/protos/range_rover/RangeRoverSportSVRBottomMesh.proto
  • (432) vehicles/protos/range_rover/RangeRoverSportSVRBrakingLightsMesh.proto
  • (433) vehicles/protos/range_rover/RangeRoverSportSVRFrontLightsMesh.proto
  • (434) vehicles/protos/range_rover/RangeRoverSportSVRSimple.proto
  • (435) vehicles/protos/range_rover/RangeRoverSportSVRRearLightsMesh.proto
  • (436) vehicles/protos/range_rover/RangeRoverSportSVRRightMirrorMesh.proto
  • (437) vehicles/protos/range_rover/RangeRoverSportSVRCoachworkSecondaryMesh.proto
  • (438) vehicles/protos/range_rover/RangeRoverSportSVRLeftMirrorMesh.proto
  • (439) vehicles/protos/range_rover/RangeRoverSportSVR.proto
  • (440) vehicles/protos/range_rover/RangeRoverSportSVRLeftIndicatorMesh.proto
  • (441) vehicles/protos/range_rover/RangeRoverSportSVRRightIndicatorMesh.proto
  • (442) vehicles/protos/range_rover/RangeRoverSportSVRCoachworkDetailsMesh.proto
  • (443) vehicles/protos/range_rover/RangeRoverSportSVRCoachworkPrimaryMesh.proto
  • (444) vehicles/protos/toyota/ToyotaPriusMesh.proto
  • (445) vehicles/protos/toyota/ToyotaPriusFrontLight.proto
  • (446) vehicles/protos/toyota/ToyotaPrius.proto
  • (447) vehicles/protos/toyota/ToyotaPriusRearLight.proto
  • (448) vehicles/protos/toyota/ToyotaPriusLeftIndicator.proto
  • (449) vehicles/protos/toyota/ToyotaPriusWheel.proto
  • (450) vehicles/protos/toyota/ToyotaPriusRightIndicator.proto
  • (451) vehicles/protos/toyota/ToyotaPriusAntiFogLight.proto
  • (452) vehicles/protos/toyota/ToyotaPriusSimple.proto
  • (453) vehicles/protos/tesla/TeslaModel3.proto
  • (454) vehicles/protos/tesla/TeslaModel3Coachwork.proto
  • (455) vehicles/protos/tesla/TeslaModel3Windows.proto
  • (456) vehicles/protos/tesla/TeslaModel3Wheel.proto
  • (457) vehicles/protos/tesla/TeslaModel3Details.proto
  • (458) vehicles/protos/tesla/TeslaModel3Simple.proto
  • (459) vehicles/protos/tesla/TeslaModel3FrontLights.proto
  • (460) vehicles/protos/bmw/BmwX5RightWingMirror.proto
  • (461) vehicles/protos/bmw/BmwX5AntiFogLight.proto
  • (462) vehicles/protos/bmw/BmwX5FrontLight.proto
  • (463) vehicles/protos/bmw/BmwX5RightWiper.proto
  • (464) vehicles/protos/bmw/BmwX5RearInterior.proto
  • (465) vehicles/protos/bmw/BmwX5.proto
  • (466) vehicles/protos/bmw/BmwX5LeftIndicator.proto
  • (467) vehicles/protos/bmw/BmwX5Interior.proto
  • (468) vehicles/protos/bmw/BmwX5InnerWindow.proto
  • (469) vehicles/protos/bmw/BmwX5Wheel.proto
  • (470) vehicles/protos/bmw/BmwX5LeftWiper.proto
  • (471) vehicles/protos/bmw/BmwX5BrakingLight.proto
  • (472) vehicles/protos/bmw/BmwX5Mesh.proto
  • (473) vehicles/protos/bmw/BmwX5CentralMirror.proto
  • (474) vehicles/protos/bmw/BmwX5BackwardsLight.proto
  • (475) vehicles/protos/bmw/BmwX5Simple.proto
  • (476) vehicles/protos/bmw/BmwX5RearLight.proto
  • (477) vehicles/protos/bmw/BmwX5RightIndicator.proto
  • (478) vehicles/protos/bmw/BmwX5LeftWingMirror.proto
  • (479) vehicles/protos/bmw/BmwX5CentralMirrorFrame.proto
  • (480) vehicles/protos/abstract/VehicleLights.proto
  • (481) vehicles/protos/abstract/VehicleWheel.proto
  • (482) vehicles/protos/abstract/Car.proto
  • (483) vehicles/protos/abstract/CarSteeringWheel.proto
  • (484) vehicles/protos/abstract/FanatecCslEliteSteeringWheel.proto
  • (485) vehicles/protos/abstract/SimpleVehicle.proto
  • (486) vehicles/protos/abstract/GenericTireAppearance.proto
  • (487) vehicles/protos/abstract/AckermannVehicle.proto
  • (488) vehicles/protos/lincoln/LincolnMKZRightSideMirrorMesh.proto
  • (489) vehicles/protos/lincoln/LincolnMKZCoachworkMesh.proto
  • (490) vehicles/protos/lincoln/LincolnMKZLeftTurnSignalMesh.proto
  • (491) vehicles/protos/lincoln/LincolnMKZRearAntifogLightsMesh.proto
  • (492) vehicles/protos/lincoln/LincolnMKZDetailsMesh.proto
  • (493) vehicles/protos/lincoln/LincolnMKZBackLightsMesh.proto
  • (494) vehicles/protos/lincoln/LincolnMKZLeftSideMirrorMesh.proto
  • (495) vehicles/protos/lincoln/LincolnMKZTailLightsMesh.proto
  • (496) vehicles/protos/lincoln/LincolnMKZRightTurnSignalMesh.proto
  • (497) vehicles/protos/lincoln/LincolnMKZBrakingLightsMesh.proto
  • (498) vehicles/protos/lincoln/LincolnMKZFrontLightsMesh.proto
  • (499) vehicles/protos/lincoln/LincolnMKZWindowsMesh.proto
  • (500) vehicles/protos/lincoln/LincolnMKZ.proto
  • (501) vehicles/protos/lincoln/LincolnMKZBackLogoMesh.proto
  • (502) vehicles/protos/lincoln/LincolnMKZPlatesMesh.proto
  • (503) vehicles/protos/lincoln/LincolnMKZSimple.proto
  • (504) robots/picaxe/microbot/protos/Microbot.proto
  • (505) robots/niryo/ned/protos/Ned.proto
  • (506) robots/adept/pioneer2/protos/Pioneer2.proto
  • (507) robots/adept/pioneer3/protos/Pioneer3Gripper.proto
  • (508) robots/adept/pioneer3/protos/Pioneer3dx.proto
  • (509) robots/adept/pioneer3/protos/Pioneer3at.proto
  • (510) robots/adept/pioneer3/protos/Pioneer3DistanceSensor.proto
  • (511) robots/pal_robotics/tiago++/protos/Tiago++.proto
  • (512) robots/pal_robotics/tiago_extensions/protos/TiagoGripper.proto
  • (513) robots/pal_robotics/tiago_extensions/protos/TiagoBody.proto
  • (514) robots/pal_robotics/tiago_extensions/protos/TiagoRightArm.proto
  • (515) robots/pal_robotics/tiago_extensions/protos/TiagoFrontArm.proto
  • (516) robots/pal_robotics/tiago_extensions/protos/TiagoLeftArm.proto
  • (517) robots/pal_robotics/tiago_extensions/protos/TiagoRightHey5.proto
  • (518) robots/pal_robotics/tiago_extensions/protos/TiagoLeftHey5.proto
  • (519) robots/pal_robotics/tiago_iron/protos/TiagoIron.proto
  • (520) robots/pal_robotics/tiago_titanium/protos/TiagoTitanium.proto
  • (521) robots/pal_robotics/tiago_steel/protos/TiagoSteel.proto
  • (522) robots/pal_robotics/tiago_base/protos/TiagoBase.proto
  • (523) robots/softbank/nao/protos/Distributor.proto
  • (524) robots/softbank/nao/protos/Cart.proto
  • (525) robots/softbank/nao/protos/KeyPot.proto
  • (526) robots/softbank/nao/protos/Tray.proto
  • (527) robots/softbank/nao/protos/NaoRightWristH25Realistic.proto
  • (528) robots/softbank/nao/protos/NaoJersey.proto
  • (529) robots/softbank/nao/protos/Nao.proto
  • (530) robots/softbank/nao/protos/Shelves.proto
  • (531) robots/softbank/nao/protos/LollipopCandy.proto
  • (532) robots/softbank/nao/protos/BallCandy.proto
  • (533) robots/softbank/nao/protos/Key.proto
  • (534) robots/softbank/nao/protos/NaoRightWristH21.proto
  • (535) robots/softbank/nao/protos/NaoRoom.proto
  • (536) robots/softbank/nao/protos/NaoChallengeRoom.proto
  • (537) robots/softbank/nao/protos/NaoLeftWristH25Realistic.proto
  • (538) robots/softbank/nao/protos/NaoLeftWristH21.proto
  • (539) robots/softbank/nao/protos/KeyHole.proto
  • (540) robots/softbank/nao/protos/VisualArmature.proto
  • (541) robots/sony/qrio/protos/QRIO.proto
  • (542) robots/sony/aibo/protos/AiboErs7.proto
  • (543) robots/robotis/turtlebot/protos/TurtleBot3Burger.proto
  • (544) robots/robotis/bioloid/protos/BioloidDog.proto
  • (545) robots/robotis/darwin-op/protos/RobotisOp3ShiftedFrameShape.proto
  • (546) robots/robotis/darwin-op/protos/RobotisOp2Hinge2.proto
  • (547) robots/robotis/darwin-op/protos/RobotisOp3GrayPaintedMetalAppearance.proto
  • (548) robots/robotis/darwin-op/protos/RobotisOp3BlackPaintedMetalAppearance.proto
  • (549) robots/robotis/darwin-op/protos/RobotisOp3.proto
  • (550) robots/robotis/darwin-op/protos/RobotisOp3SquaredFrameShape.proto
  • (551) robots/robotis/darwin-op/protos/RobotisOp3ShinyMetalAppearance.proto
  • (552) robots/robotis/darwin-op/protos/RobotisOp3LongFrameShape.proto
  • (553) robots/robotis/darwin-op/protos/Darwin-op.proto
  • (554) robots/robotis/darwin-op/protos/RobotisJersey.proto
  • (555) robots/robotis/darwin-op/protos/MX430RearRotorShape.proto
  • (556) robots/robotis/darwin-op/protos/RobotisOp3BrushedMetalAppearance.proto
  • (557) robots/robotis/darwin-op/protos/MX430FrontRotorShape.proto
  • (558) robots/robotis/darwin-op/protos/RobotisOp3FootShape.proto
  • (559) robots/robotis/darwin-op/protos/Darwin-opHinge2.proto
  • (560) robots/robotis/darwin-op/protos/RobotisOp3TriangleFrameShape.proto
  • (561) robots/robotis/darwin-op/protos/RobotisOp3HeadLEDShape.proto
  • (562) robots/robotis/darwin-op/protos/RobotisOp3HeadShape.proto
  • (563) robots/robotis/darwin-op/protos/RobotisOp2.proto
  • (564) robots/robotis/darwin-op/protos/RobotisOp3BodyShape.proto
  • (565) robots/robotis/darwin-op/protos/RobotisOp3StraightFrameShape.proto
  • (566) robots/robotis/darwin-op/protos/MX430ServoShape.proto
  • (567) robots/robotis/darwin-op/protos/RobotisOp3ArmFrameShape.proto
  • (568) robots/fp_robotics/p-rob3/protos/P-Rob3.proto
  • (569) robots/fp_robotics/p-rob3/protos/P-Grip.proto
  • (570) robots/fp_robotics/p-rob3/protos/P-GripDistanceSensor.proto
  • (571) robots/fujitsu/hoap2/protos/Hoap2.proto
  • (572) robots/dji/mavic/protos/Mavic2Pro.proto
  • (573) robots/robotnik/summit_xl_steel/protos/SummitXlSteel.proto
  • (574) robots/lego/mindstorms/protos/MindstormsRover.proto
  • (575) robots/universal_robots/protos/UR10e.proto
  • (576) robots/universal_robots/protos/UR3e.proto
  • (577) robots/universal_robots/protos/UR5e.proto
  • (578) robots/irobot/create/protos/Create.proto
  • (579) robots/nex/protos/FireBird6.proto
  • (580) robots/kuka/youbot/protos/BlackAppearance.proto
  • (581) robots/kuka/youbot/protos/BodyMesh.proto
  • (582) robots/kuka/youbot/protos/SubWheelMesh.proto
  • (583) robots/kuka/youbot/protos/Arm1Mesh.proto
  • (584) robots/kuka/youbot/protos/PlateMesh.proto
  • (585) robots/kuka/youbot/protos/Arm2Mesh.proto
  • (586) robots/kuka/youbot/protos/Arm4Mesh.proto
  • (587) robots/kuka/youbot/protos/ExteriorWheel.proto
  • (588) robots/kuka/youbot/protos/WheelMesh.proto
  • (589) robots/kuka/youbot/protos/BlackMetalAppearance.proto
  • (590) robots/kuka/youbot/protos/InteriorWheel.proto
  • (591) robots/kuka/youbot/protos/MetalAppearance.proto
  • (592) robots/kuka/youbot/protos/Youbot.proto
  • (593) robots/kuka/youbot/protos/OrangeAppearance.proto
  • (594) robots/kuka/youbot/protos/FingerMesh.proto
  • (595) robots/kuka/youbot/protos/KukaBox.proto
  • (596) robots/kuka/youbot/protos/Arm3Mesh.proto
  • (597) robots/kuka/youbot/protos/SubWheel.proto
  • (598) robots/kuka/youbot/protos/Arm0Mesh.proto
  • (599) robots/kuka/youbot/protos/KukaBlackAppearance.proto
  • (600) robots/kuka/youbot/protos/KukaAlphaAppearance.proto
  • (601) robots/kuka/youbot/protos/Arm5Mesh.proto
  • (602) robots/clearpath/moose/protos/Moose.proto
  • (603) robots/clearpath/moose/protos/MooseWheel.proto
  • (604) robots/clearpath/pr2/protos/Pr2.proto
  • (605) robots/festo/robotino3/protos/Robotino3HokuyoMountingSupport.proto
  • (606) robots/festo/robotino3/protos/Robotino3Webcam.proto
  • (607) robots/festo/robotino3/protos/Robotino3Wheel.proto
  • (608) robots/festo/robotino3/protos/Robotino3WebcamMountingSupport.proto
  • (609) robots/festo/robotino3/protos/Robotino3.proto
  • (610) robots/festo/robotino3/protos/Robotino3SickMountingSupport.proto
  • (611) robots/festo/robotino3/protos/Robotino3Platform.proto
  • (612) robots/mobsya/thymio/controllers/thymio2_aseba/aseba/aseba/clients/studio/plugins/ThymioVPL/UsageProfile.proto
  • (613) robots/mobsya/thymio/protos/Thymio2Ball.proto
  • (614) robots/mobsya/thymio/protos/Thymio2WheelIndexedFaceSet.proto
  • (615) robots/mobsya/thymio/protos/Thymio2.proto
  • (616) robots/mobsya/thymio/protos/Thymio2Pen.proto
  • (617) robots/mobsya/thymio/protos/Thymio2SecondaryIndexedFaceSet.proto
  • (618) robots/mobsya/thymio/protos/Thymio2DistanceSensor.proto
  • (619) robots/mobsya/thymio/protos/Thymio2TireIndexedFaceSet.proto
  • (620) robots/mobsya/thymio/protos/Thymio2MainIndexedFaceSet.proto
  • (621) robots/mobsya/thymio/protos/Thymio2LED.proto
  • (622) robots/boston_dynamics/spot/protos/Spot.proto
  • (623) robots/boston_dynamics/spot/protos/SpotLeftLeg.proto
  • (624) robots/boston_dynamics/spot/protos/SpotRightLeg.proto
  • (625) robots/boston_dynamics/atlas/protos/MtorsoSolid.proto
  • (626) robots/boston_dynamics/atlas/protos/RClavSolid.proto
  • (627) robots/boston_dynamics/atlas/protos/RTalusSolid.proto
  • (628) robots/boston_dynamics/atlas/protos/RLugMesh.proto
  • (629) robots/boston_dynamics/atlas/protos/RUglutSolid.proto
  • (630) robots/boston_dynamics/atlas/protos/RLlegSolid.proto
  • (631) robots/boston_dynamics/atlas/protos/LLarmMesh.proto
  • (632) robots/boston_dynamics/atlas/protos/Atlas.proto
  • (633) robots/boston_dynamics/atlas/protos/RTalusMesh.proto
  • (634) robots/boston_dynamics/atlas/protos/PelvisSolid.proto
  • (635) robots/boston_dynamics/atlas/protos/PelvisMesh.proto
  • (636) robots/boston_dynamics/atlas/protos/RHandSolid.proto
  • (637) robots/boston_dynamics/atlas/protos/RScapSolid.proto
  • (638) robots/boston_dynamics/atlas/protos/LUlegSolid.proto
  • (639) robots/boston_dynamics/atlas/protos/MtorsoMesh.proto
  • (640) robots/boston_dynamics/atlas/protos/RFootMesh.proto
  • (641) robots/boston_dynamics/atlas/protos/LUglutMesh.proto
  • (642) robots/boston_dynamics/atlas/protos/LLglutSolid.proto
  • (643) robots/boston_dynamics/atlas/protos/LTalusSolid.proto
  • (644) robots/boston_dynamics/atlas/protos/RHandMesh.proto
  • (645) robots/boston_dynamics/atlas/protos/RScapMesh.proto
  • (646) robots/boston_dynamics/atlas/protos/LUarmSolid.proto
  • (647) robots/boston_dynamics/atlas/protos/LtorsoSolid.proto
  • (648) robots/boston_dynamics/atlas/protos/LFootSolid.proto
  • (649) robots/boston_dynamics/atlas/protos/LFarmMesh.proto
  • (650) robots/boston_dynamics/atlas/protos/RLglutMesh.proto
  • (651) robots/boston_dynamics/atlas/protos/DarkAppearance.proto
  • (652) robots/boston_dynamics/atlas/protos/LtorsoMesh.proto
  • (653) robots/boston_dynamics/atlas/protos/RFarmMesh.proto
  • (654) robots/boston_dynamics/atlas/protos/CarbonFiberAppearance.proto
  • (655) robots/boston_dynamics/atlas/protos/RLlegMesh.proto
  • (656) robots/boston_dynamics/atlas/protos/LScapMesh.proto
  • (657) robots/boston_dynamics/atlas/protos/RLglutSolid.proto
  • (658) robots/boston_dynamics/atlas/protos/RFarmSolid.proto
  • (659) robots/boston_dynamics/atlas/protos/RClavMesh.proto
  • (660) robots/boston_dynamics/atlas/protos/LLlegSolid.proto
  • (661) robots/boston_dynamics/atlas/protos/RUarmMesh.proto
  • (662) robots/boston_dynamics/atlas/protos/HeadMesh.proto
  • (663) robots/boston_dynamics/atlas/protos/RLarmSolid.proto
  • (664) robots/boston_dynamics/atlas/protos/RUlegSolid.proto
  • (665) robots/boston_dynamics/atlas/protos/LClavSolid.proto
  • (666) robots/boston_dynamics/atlas/protos/LUarmMesh.proto
  • (667) robots/boston_dynamics/atlas/protos/LLglutMesh.proto
  • (668) robots/boston_dynamics/atlas/protos/LHandMesh.proto
  • (669) robots/boston_dynamics/atlas/protos/LUglutSolid.proto
  • (670) robots/boston_dynamics/atlas/protos/UtorsoMesh.proto
  • (671) robots/boston_dynamics/atlas/protos/LUlegMesh.proto
  • (672) robots/boston_dynamics/atlas/protos/LLarmSolid.proto
  • (673) robots/boston_dynamics/atlas/protos/LScapSolid.proto
  • (674) robots/boston_dynamics/atlas/protos/RUglutMesh.proto
  • (675) robots/boston_dynamics/atlas/protos/LFarmSolid.proto
  • (676) robots/boston_dynamics/atlas/protos/LTalusMesh.proto
  • (677) robots/boston_dynamics/atlas/protos/RegularAppearance.proto
  • (678) robots/boston_dynamics/atlas/protos/LFootMesh.proto
  • (679) robots/boston_dynamics/atlas/protos/LClavMesh.proto
  • (680) robots/boston_dynamics/atlas/protos/RLarmMesh.proto
  • (681) robots/boston_dynamics/atlas/protos/UtorsoSolid.proto
  • (682) robots/boston_dynamics/atlas/protos/LHandSolid.proto
  • (683) robots/boston_dynamics/atlas/protos/LLlegMesh.proto
  • (684) robots/boston_dynamics/atlas/protos/RFootSolid.proto
  • (685) robots/boston_dynamics/atlas/protos/RUarmSolid.proto
  • (686) robots/boston_dynamics/atlas/protos/RUlegMesh.proto
  • (687) robots/abb/irb/protos/Irb4600-40.proto
  • (688) robots/nasa/protos/Sojourner.proto
  • (689) robots/a4/portal/protos/Portal.proto
  • (690) robots/surveyor/protos/SurveyorSrv1.proto
  • (691) robots/kondo/khr-2hv/protos/Khr2hv.proto
  • (692) robots/kondo/khr-3hv/protos/Khr3hv.proto
  • (693) robots/parallax/boebot/protos/BoeBot.proto
  • (694) robots/sphero/bb8/protos/BB-8.proto
  • (695) robots/sphero/bb8/protos/BB-8BodyShape.proto
  • (696) robots/sphero/bb8/protos/BB-8HeadShape.proto
  • (697) robots/bluebotics/shrimp/protos/Shrimp.proto
  • (698) robots/unimation/puma/protos/Puma560.proto
  • (699) robots/nvidia/jetbot/protos/JetBotRaspberryPiCamera.proto
  • (700) robots/nvidia/jetbot/protos/JetBot.proto
  • (701) robots/kinematics/tinkerbots/protos/TinkerbotsBrickAdapter.proto
  • (702) robots/kinematics/tinkerbots/protos/TinkerbotsPivot.proto
  • (703) robots/kinematics/tinkerbots/protos/TinkerbotsCubieMaleCube.proto
  • (704) robots/kinematics/tinkerbots/protos/TinkerbotsCubieBoxWithRoundSlots.proto
  • (705) robots/kinematics/tinkerbots/protos/TinkerbotsPlasticAppearance.proto
  • (706) robots/kinematics/tinkerbots/protos/TinkerbotsCubieBoxWithCrossSlots.proto
  • (707) robots/kinematics/tinkerbots/protos/TinkerbotsCubieTriangle.proto
  • (708) robots/kinematics/tinkerbots/protos/TinkerbotsAxle.proto
  • (709) robots/kinematics/tinkerbots/protos/TinkerbotsFinger.proto
  • (710) robots/kinematics/tinkerbots/protos/TinkerbotsWheel.proto
  • (711) robots/kinematics/tinkerbots/protos/TinkerbotsGrabber.proto
  • (712) robots/kinematics/tinkerbots/protos/TinkerbotsMotor.proto
  • (713) robots/kinematics/tinkerbots/protos/TinkerbotsCube.proto
  • (714) robots/kinematics/tinkerbots/protos/TinkerbotsCubiePyramid.proto
  • (715) robots/kinematics/tinkerbots/protos/TinkerbotsBase.proto
  • (716) robots/kinematics/tinkerbots/protos/TinkerbotsTwister.proto
  • (717) robots/kinematics/tinkerbots/protos/TinkerbotsLightSensor.proto
  • (718) robots/kinematics/tinkerbots/protos/TinkerbotsCubieFemaleCube.proto
  • (719) robots/kinematics/tinkerbots/protos/TinkerbotsDistanceSensor.proto
  • (720) robots/kinematics/tinkerbots/protos/TinkerbotsLEDAppearance.proto
  • (721) robots/saeon/protos/AltinoBodyMesh.proto
  • (722) robots/saeon/protos/Altino.proto
  • (723) robots/saeon/protos/AltinoWheel.proto
  • (724) robots/mir/mir100/protos/Mir100UltrasonicSensor.proto
  • (725) robots/mir/mir100/protos/Mir100.proto
  • (726) robots/micromagic/mantis/protos/Mantis.proto
  • (727) robots/gctronic/e-puck/protos/Pi-puck.proto
  • (728) robots/gctronic/e-puck/protos/E-puckGroundSensors.proto
  • (729) robots/gctronic/e-puck/protos/E-puck.proto
  • (730) robots/gctronic/e-puck/protos/E-puckDistanceSensor.proto
  • (731) robots/gctronic/elisa/protos/Elisa3.proto
  • (732) robots/gctronic/elisa/protos/Elisa3DistanceSensor.proto
  • (733) robots/epfl/biorob/protos/GhostDog.proto
  • (734) robots/epfl/biorob/protos/Salamander.proto
  • (735) robots/epfl/biorob/protos/Yamor.proto
  • (736) robots/epfl/lis/protos/Blimp.proto
  • (737) robots/rec/fabtino/protos/Fabtino.proto
  • (738) robots/k-team/khepera4/protos/Khepera4InfraredSensor.proto
  • (739) robots/k-team/khepera4/protos/Khepera4.proto
  • (740) robots/k-team/khepera1/protos/Khepera1.proto
  • (741) robots/k-team/khepera3/protos/Khepera3_USSensor.proto
  • (742) robots/k-team/khepera3/protos/Khepera3_DistanceSensor.proto
  • (743) robots/k-team/khepera3/protos/Khepera3_GroundSensor.proto
  • (744) robots/k-team/khepera3/protos/Khepera3.proto
  • (745) robots/k-team/khepera3/protos/Khepera3_Gripper.proto
  • (746) robots/k-team/hemisson/protos/Hemisson.proto
  • (747) robots/k-team/khepera2/protos/Khepera2.proto
  • (748) robots/k-team/koala/protos/Koala.proto
  • (749) robots/neuronics/ipr/protos/IprHd6ms90.proto
  • (750) robots/neuronics/ipr/protos/IprHd6m90.proto
  • (751) robots/neuronics/ipr/protos/IprHd6m180.proto
  • (752) robots/neuronics/ipr/protos/IprHd6ms180.proto

6. Convert worlds

  • (001) scripts/web_component_studio/worlds/web_component_studio_template.wbt
  • (002) scripts/icon_studio/worlds/icon_studio.wbt
  • (003) scripts/rotating_camera/worlds/rotating_camera.wbt
  • (004) resources/webots_ros/worlds/complete_test.wbt
  • (005) resources/webots_ros/worlds/pioneer3at.wbt
  • (006) resources/webots_ros/worlds/catch_the_bird.wbt
  • (007) resources/webots_ros/worlds/ros_python.wbt
  • (008) resources/webots_ros/worlds/e-puck_line.wbt
  • (009) resources/webots_ros/worlds/panoramic_view_recorder.wbt
  • (010) resources/webots_ros/worlds/keyboard_teleop.wbt
  • (011) resources/webots_ros/worlds/tiago.wbt
  • (012) resources/projects/worlds/empty.wbt
  • (013) projects/humans/c3d/worlds/c3d_viewer.wbt
  • (014) projects/humans/pedestrian/worlds/pedestrian.wbt
  • (015) projects/samples/geometries/worlds/polygons.wbt
  • (016) projects/samples/geometries/worlds/textured_boxes.wbt
  • (017) projects/samples/geometries/worlds/floating_geometries.wbt
  • (018) projects/samples/geometries/worlds/geometric_primitives.wbt
  • (019) projects/samples/geometries/worlds/extended_solids.wbt
  • (020) projects/samples/geometries/worlds/muscle.wbt
  • (021) projects/samples/geometries/worlds/extrusion.wbt
  • (022) projects/samples/geometries/worlds/textured_proto_shapes.wbt
  • (023) projects/samples/geometries/worlds/textured_shapes.wbt
  • (024) projects/samples/geometries/worlds/webots_box.wbt
  • (025) projects/samples/geometries/worlds/physics_primitives.wbt
  • (026) projects/samples/geometries/worlds/high_resolution_indexedfaceset.wbt
  • (027) projects/samples/rendering/worlds/physically_based_rendering.wbt
  • (028) projects/samples/rendering/worlds/animated_skin.wbt
  • (029) projects/samples/rendering/worlds/sponza.wbt
  • (030) projects/samples/mybot/worlds/mybot.wbt
  • (031) projects/samples/mybot/worlds/mybot_physics.wbt
  • (032) projects/samples/mybot/worlds/mybot_camera.wbt
  • (033) projects/samples/curriculum/worlds/beginner_robot_controller.wbt
  • (034) projects/samples/curriculum/worlds/novice_k2000.wbt
  • (035) projects/samples/curriculum/worlds/advanced_path_planning.wbt
  • (036) projects/samples/curriculum/worlds/beginner_move_your_e-puck.wbt
  • (037) projects/samples/curriculum/worlds/beginner_better_collision_avoidance_algorithm.wbt
  • (038) projects/samples/curriculum/worlds/intermediate_lawn_mower.wbt
  • (039) projects/samples/curriculum/worlds/beginner_finite_state_machine.wbt
  • (040) projects/samples/curriculum/worlds/advanced_odometry.wbt
  • (041) projects/samples/curriculum/worlds/novice_linear_camera.wbt
  • (042) projects/samples/curriculum/worlds/novice_remain_in_shadow.wbt
  • (043) projects/samples/curriculum/worlds/beginner_blinking_e-puck.wbt
  • (044) projects/samples/curriculum/worlds/intermediate_finite_state_machine.wbt
  • (045) projects/samples/curriculum/worlds/intermediate_behavior_based.wbt
  • (046) projects/samples/curriculum/worlds/novice_accelerometer.wbt
  • (047) projects/samples/curriculum/worlds/novice_train.wbt
  • (048) projects/samples/curriculum/worlds/intermediate_lfm.wbt
  • (049) projects/samples/curriculum/worlds/advanced_genetic_algorithm.wbt
  • (050) projects/samples/curriculum/worlds/advanced_pattern_recognition.wbt
  • (051) projects/samples/curriculum/worlds/advanced_particle_swarm_optimization.wbt
  • (052) projects/samples/curriculum/worlds/novice_motors.wbt
  • (053) projects/samples/curriculum/worlds/novice_ir_sensors.wbt
  • (054) projects/samples/curriculum/worlds/beginner_e-puck_dance.wbt
  • (055) projects/samples/curriculum/worlds/novice_camera.wbt
  • (056) projects/samples/curriculum/worlds/beginner_linear_camera.wbt
  • (057) projects/samples/curriculum/worlds/intermediate_oam.wbt
  • (058) projects/samples/curriculum/worlds/advanced_slam.wbt
  • (059) projects/samples/curriculum/worlds/beginner_rally.wbt
  • (060) projects/samples/tutorials/worlds/my_first_simulation.wbt
  • (061) projects/samples/tutorials/worlds/compound_solid.wbt
  • (062) projects/samples/tutorials/worlds/4_wheels_robot.wbt
  • (063) projects/samples/tutorials/worlds/collision_avoidance.wbt
  • (064) projects/samples/tutorials/worlds/obstacles.wbt
  • (065) projects/samples/tutorials/worlds/appearance.wbt
  • (066) projects/samples/robotbenchmark/highway_driving/worlds/highway_driving.wbt
  • (067) projects/samples/robotbenchmark/maze_runner/worlds/maze_runner.wbt
  • (068) projects/samples/robotbenchmark/square_path/worlds/square_path.wbt
  • (069) projects/samples/robotbenchmark/obstacle_avoidance/worlds/obstacle_avoidance.wbt
  • (070) projects/samples/robotbenchmark/pit_escape/worlds/pit_escape.wbt
  • (071) projects/samples/robotbenchmark/inverted_pendulum/worlds/inverted_pendulum.wbt
  • (072) projects/samples/robotbenchmark/pick_and_place/worlds/pick_and_place.wbt
  • (073) projects/samples/robotbenchmark/humanoid_sprint/worlds/humanoid_sprint.wbt
  • (074) projects/samples/robotbenchmark/wall_following/worlds/wall_following.wbt
  • (075) projects/samples/robotbenchmark/humanoid_marathon/worlds/humanoid_marathon.wbt
  • (076) projects/samples/robotbenchmark/robot_programming/worlds/robot_programming.wbt
  • (077) projects/samples/robotbenchmark/visual_tracking/worlds/visual_tracking.wbt
  • (078) projects/samples/contests/tower_of_hanoi/worlds/tower_of_hanoi.wbt
  • (079) projects/samples/contests/robocup/worlds/adult.wbt
  • (080) projects/samples/contests/robocup/worlds/kid.wbt
  • (081) projects/samples/contests/rockin/worlds/home.wbt
  • (082) projects/samples/contests/rockin/worlds/work.wbt
  • (083) projects/samples/contests/ratslife/worlds/ratslife.wbt
  • (084) projects/samples/contests/ratslife/worlds/ratslife_round.wbt
  • (085) projects/samples/demos/worlds/hexapod.wbt
  • (086) projects/samples/demos/worlds/soccer.wbt
  • (087) projects/samples/demos/worlds/stewart_platform.wbt
  • (088) projects/samples/demos/worlds/gantry.wbt
  • (089) projects/samples/demos/worlds/moon.wbt
  • (090) projects/samples/demos/worlds/anaglyph.wbt
  • (091) projects/samples/environments/indoor/worlds/break_room.wbt
  • (092) projects/samples/environments/indoor/worlds/complete_apartment.wbt
  • (093) projects/samples/environments/indoor/worlds/apartment.wbt
  • (094) projects/samples/environments/indoor/worlds/kitchen.wbt
  • (095) projects/samples/environments/factory/worlds/factory.wbt
  • (096) projects/samples/environments/factory/worlds/hall.wbt
  • (097) projects/samples/devices/worlds/accelerometer.wbt
  • (098) projects/samples/devices/worlds/bumper.wbt
  • (099) projects/samples/devices/worlds/camera_motion_blur.wbt
  • (100) projects/samples/devices/worlds/led.wbt
  • (101) projects/samples/devices/worlds/compass.wbt
  • (102) projects/samples/devices/worlds/force3d_sensor.wbt
  • (103) projects/samples/devices/worlds/force_sensor.wbt
  • (104) projects/samples/devices/worlds/encoders.wbt
  • (105) projects/samples/devices/worlds/hinge_2_joint_with_backlash.wbt
  • (106) projects/samples/devices/worlds/pen.wbt
  • (107) projects/samples/devices/worlds/altimeter.wbt
  • (108) projects/samples/devices/worlds/camera_noise_mask.wbt
  • (109) projects/samples/devices/worlds/battery.wbt
  • (110) projects/samples/devices/worlds/camera_recognition.wbt
  • (111) projects/samples/devices/worlds/camera_auto_focus.wbt
  • (112) projects/samples/devices/worlds/brake.wbt
  • (113) projects/samples/devices/worlds/hokuyo.wbt
  • (114) projects/samples/devices/worlds/lidar.wbt
  • (115) projects/samples/devices/worlds/motor2.wbt
  • (116) projects/samples/devices/worlds/emitter_receiver.wbt
  • (117) projects/samples/devices/worlds/position_sensor.wbt
  • (118) projects/samples/devices/worlds/gps.wbt
  • (119) projects/samples/devices/worlds/camera.wbt
  • (120) projects/samples/devices/worlds/sick_point_cloud.wbt
  • (121) projects/samples/devices/worlds/radar.wbt
  • (122) projects/samples/devices/worlds/spherical_camera.wbt
  • (123) projects/samples/devices/worlds/linear_motor.wbt
  • (124) projects/samples/devices/worlds/connector.wbt
  • (125) projects/samples/devices/worlds/light_sensor.wbt
  • (126) projects/samples/devices/worlds/sick.wbt
  • (127) projects/samples/devices/worlds/gps_lat_long.wbt
  • (128) projects/samples/devices/worlds/speaker.wbt
  • (129) projects/samples/devices/worlds/propeller.wbt
  • (130) projects/samples/devices/worlds/speaker_text_to_speech.wbt
  • (131) projects/samples/devices/worlds/distance_sensor.wbt
  • (132) projects/samples/devices/worlds/hinge_joint_with_backlash.wbt
  • (133) projects/samples/devices/worlds/track.wbt
  • (134) projects/samples/devices/worlds/inertial_unit.wbt
  • (135) projects/samples/devices/worlds/motor3.wbt
  • (136) projects/samples/devices/worlds/range_finder.wbt
  • (137) projects/samples/devices/worlds/coupled_motors.wbt
  • (138) projects/samples/devices/worlds/receiver_noise.wbt
  • (139) projects/samples/devices/worlds/display.wbt
  • (140) projects/samples/devices/worlds/camera_segmentation.wbt
  • (141) projects/samples/devices/worlds/supervisor.wbt
  • (142) projects/samples/devices/worlds/motor.wbt
  • (143) projects/samples/devices/worlds/laser_pointer.wbt
  • (144) projects/samples/devices/worlds/gyro.wbt
  • (145) projects/samples/howto/texture_change/worlds/texture_change.wbt
  • (146) projects/samples/howto/custom_robot_window/worlds/custom_robot_window.wbt
  • (147) projects/samples/howto/sick_terrain_scanning/worlds/sick_terrain_scanning.wbt
  • (148) projects/samples/howto/mouse_events/worlds/mouse_events.wbt
  • (149) projects/samples/howto/console/worlds/console.wbt
  • (150) projects/samples/howto/asymmetric_friction/worlds/asymmetric_friction1.wbt
  • (151) projects/samples/howto/asymmetric_friction/worlds/asymmetric_friction2.wbt
  • (152) projects/samples/howto/center_of_mass/worlds/center_of_mass.wbt
  • (153) projects/samples/howto/custom_robot_window_simple/worlds/custom_robot_window_simple.wbt
  • (154) projects/samples/howto/ziegler_nichols/worlds/ziegler_nichols.wbt
  • (155) projects/samples/howto/cylinder_stack/worlds/cylinder_stack.wbt
  • (156) projects/samples/howto/url/worlds/url.wbt
  • (157) projects/samples/howto/spinning_top/worlds/spinning_top.wbt
  • (158) projects/samples/howto/inverted_pendulum/worlds/inverted_pendulum.wbt
  • (159) projects/samples/howto/biped/worlds/biped.wbt
  • (160) projects/samples/howto/physics/worlds/physics.wbt
  • (161) projects/samples/howto/passive_dynamic_walker/worlds/passive_dynamic_walker.wbt
  • (162) projects/samples/howto/supervisor_draw_trail/worlds/supervisor_draw_trail.wbt
  • (163) projects/samples/howto/gears/worlds/gears.wbt
  • (164) projects/samples/howto/four_wheels/worlds/four_wheels.wbt
  • (165) projects/samples/howto/binocular/worlds/binocular.wbt
  • (166) projects/samples/howto/vision/worlds/vision.wbt
  • (167) projects/samples/howto/openai_gym/worlds/openai_gym.wbt
  • (168) projects/samples/howto/force_control/worlds/force_control.wbt
  • (169) projects/samples/howto/omni_wheels/worlds/omni_wheels.wbt
  • (170) projects/samples/howto/rope/worlds/rope.wbt
  • (171) projects/samples/howto/pedal_racer/worlds/pedal_racer.wbt
  • (172) projects/vehicles/worlds/village_winter.wbt
  • (173) projects/vehicles/worlds/CH_Morges.wbt
  • (174) projects/vehicles/worlds/village.wbt
  • (175) projects/vehicles/worlds/highway_overtake.wbt
  • (176) projects/vehicles/worlds/boomer.wbt
  • (177) projects/vehicles/worlds/city.wbt
  • (178) projects/vehicles/worlds/city_traffic.wbt
  • (179) projects/vehicles/worlds/city_night.wbt
  • (180) projects/vehicles/worlds/village_realistic.wbt
  • (181) projects/vehicles/worlds/highway.wbt
  • (182) projects/vehicles/worlds/CH_Vens.wbt
  • (183) projects/vehicles/worlds/village_center.wbt
  • (184) projects/vehicles/worlds/sumo_interface_example.wbt
  • (185) projects/languages/java/worlds/example.wbt
  • (186) projects/languages/cpp/worlds/example.wbt
  • (187) projects/languages/python/worlds/example.wbt
  • (188) projects/languages/matlab/worlds/e-puck_matlab.wbt
  • (189) projects/robots/picaxe/microbot/worlds/microbot_pe.wbt
  • (190) projects/robots/niryo/ned/worlds/ned.wbt
  • (191) projects/robots/adept/pioneer2/worlds/pioneer2.wbt
  • (192) projects/robots/adept/pioneer3/worlds/pioneer3at.wbt
  • (193) projects/robots/adept/pioneer3/worlds/pioneer3dx_matlab.wbt
  • (194) projects/robots/adept/pioneer3/worlds/pioneer3dx_with_kinect.wbt
  • (195) projects/robots/adept/pioneer3/worlds/pioneer3dx.wbt
  • (196) projects/robots/adept/pioneer3/worlds/pioneer3dx_gripper.wbt
  • (197) projects/robots/adept/pioneer3/worlds/pioneer3dx_collision_avoidance.wbt
  • (198) projects/robots/pal_robotics/tiago++/worlds/tiago++.wbt
  • (199) projects/robots/pal_robotics/tiago_iron/worlds/tiago_iron.wbt
  • (200) projects/robots/pal_robotics/tiago_titanium/worlds/tiago_titanium.wbt
  • (201) projects/robots/pal_robotics/tiago_steel/worlds/tiago_steel.wbt
  • (202) projects/robots/pal_robotics/tiago_base/worlds/tiago_base.wbt
  • (203) projects/robots/softbank/nao/worlds/nao_demo.wbt
  • (204) projects/robots/softbank/nao/worlds/robotstadium_nao_vs_robotis-op2.wbt
  • (205) projects/robots/softbank/nao/worlds/nao_robocup.wbt
  • (206) projects/robots/softbank/nao/worlds/nao_room.wbt
  • (207) projects/robots/softbank/nao/worlds/nao_indoors.wbt
  • (208) projects/robots/softbank/nao/worlds/challenge.wbt
  • (209) projects/robots/softbank/nao/worlds/nao_matlab.wbt
  • (210) projects/robots/softbank/nao/worlds/get_the_candies.wbt
  • (211) projects/robots/sony/qrio/worlds/qrio.wbt
  • (212) projects/robots/sony/aibo/worlds/aibo_ers7.wbt
  • (213) projects/robots/robotis/turtlebot/worlds/turtlebot3_burger.wbt
  • (214) projects/robots/robotis/bioloid/worlds/bioloid_dog.wbt
  • (215) projects/robots/robotis/darwin-op/worlds/darwin-op.wbt
  • (216) projects/robots/robotis/darwin-op/worlds/motion.wbt
  • (217) projects/robots/robotis/darwin-op/worlds/robotis_op3.wbt
  • (218) projects/robots/robotis/darwin-op/worlds/symmetry.wbt
  • (219) projects/robots/robotis/darwin-op/worlds/soccer.wbt
  • (220) projects/robots/robotis/darwin-op/worlds/symmetry_matlab.wbt
  • (221) projects/robots/robotis/darwin-op/worlds/walk.wbt
  • (222) projects/robots/robotis/darwin-op/worlds/visual_tracking.wbt
  • (223) projects/robots/robotis/darwin-op/worlds/darwin-op_hinge_vs_hinge2.wbt
  • (224) projects/robots/fp_robotics/p-rob3/worlds/p-rob3.wbt
  • (225) projects/robots/fujitsu/hoap2/worlds/hoap2_sumo.wbt
  • (226) projects/robots/fujitsu/hoap2/worlds/hoap2_walk.wbt
  • (227) projects/robots/dji/mavic/worlds/mavic_2_pro.wbt
  • (228) projects/robots/robotnik/summit_xl_steel/worlds/summit_xl_steel.wbt
  • (229) projects/robots/lego/mindstorms/worlds/rover.wbt
  • (230) projects/robots/universal_robots/worlds/ure.wbt
  • (231) projects/robots/irobot/create/worlds/create.wbt
  • (232) projects/robots/nex/worlds/fire_bird_6.wbt
  • (233) projects/robots/nex/worlds/fire_bird_6_remote_control.wbt
  • (234) projects/robots/kuka/youbot/worlds/youbot.wbt
  • (235) projects/robots/kuka/youbot/worlds/youbot_matlab.wbt
  • (236) projects/robots/clearpath/moose/worlds/moose_demo.wbt
  • (237) projects/robots/clearpath/pr2/worlds/pr2.wbt
  • (238) projects/robots/festo/robotino3/worlds/robotino3.wbt
  • (239) projects/robots/mobsya/thymio/worlds/thymio2_pen.wbt
  • (240) projects/robots/mobsya/thymio/worlds/thymio2.wbt
  • (241) projects/robots/mobsya/thymio/worlds/thymio2_ball.wbt
  • (242) projects/robots/boston_dynamics/spot/worlds/spot.wbt
  • (243) projects/robots/boston_dynamics/atlas/worlds/atlas.wbt
  • (244) projects/robots/abb/irb/worlds/inverse_kinematics.wbt
  • (245) projects/robots/robotcub/icub/worlds/icub_stand.wbt
  • (246) projects/robots/nasa/worlds/sojourner.wbt
  • (247) projects/robots/a4/portal/worlds/portal_pe.wbt
  • (248) projects/robots/surveyor/worlds/srv-1.wbt
  • (249) projects/robots/kondo/khr-2hv/worlds/khr-2hv.wbt
  • (250) projects/robots/kondo/khr-3hv/worlds/khr-3hv.wbt
  • (251) projects/robots/parallax/boebot/worlds/boebot.wbt
  • (252) projects/robots/sphero/bb8/worlds/bb-8.wbt
  • (253) projects/robots/bluebotics/shrimp/worlds/shrimp.wbt
  • (254) projects/robots/unimation/puma/worlds/puma560.wbt
  • (255) projects/robots/nvidia/jetbot/worlds/jetbot.wbt
  • (256) projects/robots/kinematics/tinkerbots/worlds/vision_car.wbt
  • (257) projects/robots/kinematics/tinkerbots/worlds/sensoric_mega_set.wbt
  • (258) projects/robots/kinematics/tinkerbots/worlds/grabber_base.wbt
  • (259) projects/robots/kinematics/tinkerbots/worlds/roadster.wbt
  • (260) projects/robots/kinematics/tinkerbots/worlds/racer.wbt
  • (261) projects/robots/kinematics/tinkerbots/worlds/braitenberg.wbt
  • (262) projects/robots/kinematics/tinkerbots/worlds/donnergugi.wbt
  • (263) projects/robots/kinematics/tinkerbots/worlds/top_dog.wbt
  • (264) projects/robots/kinematics/tinkerbots/worlds/tinkerbots_demo.wbt
  • (265) projects/robots/kinematics/tinkerbots/worlds/android_l30.wbt
  • (266) projects/robots/saeon/worlds/altino.wbt
  • (267) projects/robots/mir/mir100/worlds/mir100.wbt
  • (268) projects/robots/micromagic/scout/worlds/scout.wbt
  • (269) projects/robots/micromagic/mantis/worlds/mantis.wbt
  • (270) projects/robots/gctronic/e-puck/worlds/e-puck2_server.wbt
  • (271) projects/robots/gctronic/e-puck/worlds/e-puck2.wbt
  • (272) projects/robots/gctronic/e-puck/worlds/e-puck_cross-compilation.wbt
  • (273) projects/robots/gctronic/e-puck/worlds/e-puck_line.wbt
  • (274) projects/robots/gctronic/e-puck/worlds/e-puck_botstudio_with_floor_sensors.wbt
  • (275) projects/robots/gctronic/e-puck/worlds/e-puck_line_demo.wbt
  • (276) projects/robots/gctronic/e-puck/worlds/e-puck2_pi-puck.wbt
  • (277) projects/robots/gctronic/e-puck/worlds/e-puck.wbt
  • (278) projects/robots/gctronic/e-puck/worlds/e-puck_kinematic.wbt
  • (279) projects/robots/gctronic/e-puck/worlds/e-puck_botstudio.wbt
  • (280) projects/robots/gctronic/elisa/worlds/elisa3.wbt
  • (281) projects/robots/epfl/biorob/worlds/yamor.wbt
  • (282) projects/robots/epfl/biorob/worlds/salamander.wbt
  • (283) projects/robots/epfl/biorob/worlds/ghostdog.wbt
  • (284) projects/robots/epfl/lis/worlds/blimp.wbt
  • (285) projects/robots/rec/fabtino/worlds/fabtino.wbt
  • (286) projects/robots/k-team/khepera4/worlds/khepera4.wbt
  • (287) projects/robots/k-team/khepera1/worlds/khepera_k213.wbt
  • (288) projects/robots/k-team/khepera1/worlds/khepera_gripper.wbt
  • (289) projects/robots/k-team/khepera1/worlds/khepera_pipe.wbt
  • (290) projects/robots/k-team/khepera1/worlds/khepera_tcpip.wbt
  • (291) projects/robots/k-team/khepera1/worlds/khepera_gripper_camera.wbt
  • (292) projects/robots/k-team/khepera1/worlds/khepera_kinematic.wbt
  • (293) projects/robots/k-team/khepera1/worlds/khepera.wbt
  • (294) projects/robots/k-team/khepera3/worlds/khepera3_gripper.wbt
  • (295) projects/robots/k-team/khepera3/worlds/khepera3.wbt
  • (296) projects/robots/k-team/hemisson/worlds/hemisson.wbt
  • (297) projects/robots/k-team/khepera2/worlds/khepera2.wbt
  • (298) projects/robots/k-team/koala/worlds/koala.wbt
  • (299) projects/robots/neuronics/ipr/worlds/ipr_factory.wbt
  • (300) projects/robots/neuronics/ipr/worlds/ipr_cube.wbt
  • (301) projects/robots/neuronics/ipr/worlds/ipr_collaboration.wbt
  • (302) projects/robots/neuronics/ipr/worlds/ipr_models.wbt

8. Convert test worlds and test controllers

  • tests/api/worlds/accelerometer.wbt to joint_end_point_collision.wbt (48 worlds)
  • tests/api/worlds/joints_motor_min_max_position to robot_window_html.wbt (48 worlds)
  • tests/api/worlds/runtime_config_file.wbt to the end (46 worlds)
  • tests/default/worlds/empty.wbt
  • tests/manual_tests/worlds/ (7 worlds)
  • tests/other_api/worlds/cpp_import_device.wbt
  • tests/parser/worlds (44 worlds)
  • tests/physics/worlds/ (31 worlds)
  • tests/protos/backward_compability_enu_flu.wbt to slots.wbt (38 worlds)
  • tests/protos/slots_node.wbt to the end (37 worlds)
  • tests/rendering/worlds/ (4 worlds)
  • tests/with_rendering/worlds/billboard.wbt

8. Merge to develop

  • merge to the develop branch
  • invite users to test nightly builds (Discord, maybe LinkedIn, Twitter, and ROS Discourse)

7. Fix tools and other simulations

  • urdf2webots
  • webots_ros (worlds)
  • webots_ros2 (worlds + ENU/FLU PROTOs have to be deleted)
  • internal projects
  • OSM exporter (to export worlds in the ENU format)
  • SUMO
  • Fix the tutorials (link)
  • Check WebotsJS

Statistics

Number of NUE worlds: 487/567

  • /projects: 269/287
  • /tests: 217/266

A number of PROTO files: 972

@lukicdarkoo lukicdarkoo added the bug Something isn't working label May 17, 2021
@lukicdarkoo lukicdarkoo added this to the R2021b milestone May 17, 2021
@lukicdarkoo lukicdarkoo self-assigned this May 17, 2021
@lukicdarkoo lukicdarkoo added feature Implementation of a major feature cleanup Any design, code, file or folder cleanup and removed bug Something isn't working labels May 17, 2021
@lukicdarkoo lukicdarkoo modified the milestones: R2021b, R2021c May 28, 2021
@BenjaminDeleze
Copy link

BenjaminDeleze commented Jul 20, 2021

With this conversion, we are going to break the backward compatibility.
For example, the pen will no longer write along the y axis but along the z axis. This is not a very big issue as the pen is not a very used node. However, we will also modify cameras and other sensors.

It will not break the compatibility with the webots worlds as we are going to convert them, but it will break the user's worlds.
I do not think this is something we want to happen.

Here is some reflexions we had with @ad-daniel and @mael25

Sensors
An idea would be to get the information in the WorldInfo about the coordinateSystem (ENU or NUE) and then adapt the behavior according to that. But is not perfect:

  1. Old NUE world with a pen: it will work
  2. New ENU world with a pen: it will work.
  3. New NUE world with a pen: it will work but it is not a good idea, because it will use the legacy version and we should not support it forever.
  4. Old ENU world with a pen: it will not work as we will use the new version of the pen even so the world was build to support the old one.

Another idea could be to check the webots version in the header of the .wbt file to determine if we should use the old or the new version of sensors.
Problem: the version is overridden if the world is saved again.

Protos
We have the same problems with webots protos used in user's world
I think that the behavior that we want for protos (and for sensors as well) is the following:

  1. A proto is in an old world (<= R2021b): it should work as before.
  2. A proto is in a new world (> R2021b): it should follow FLU orientation
  3. A proto is inserted in a new world: it should follow FLU orientation such that, if the user still want to create a NUE world, he will have to rotate the proto, but we will be able to remove support for old proto orientation after some time without breaking his new world.
  4. A proto is inserted in an old world: I am not sure. I would say that it would be better to proceed as in 1, stay consistent with the world.

Some possible hints could be to:

  • Maintain two version of each protos
  • Have some JS in all protos to define two behaviors.
  • Have only one proto version and add a transform as a parent of the Proto to rotate it if needed.

We do not have an idea of a working solution for now and we think that it is better not to begin the conversion before having a solution about these problem, otherwise, we risk to have to start all over again.

@lukicdarkoo
Copy link
Member Author

An idea would be to get the information in the WorldInfo about the coordinateSystem (ENU or NUE) and then adapt the behavior according to that.

Note that the world (ENU/NUE...) and body (FLU/RUB...) are independent (see https://www.ros.org/reps/rep-0103.html#axis-orientation). Most users will use ENU and FLU together, but that is not a general rule.

Another idea could be to check the webots version in the header of the .wbt file to determine if we should use the old or the new version of sensors.
Problem: the version is overridden if the world is saved again.

Yes, I have just implemented it here and I have the same problem.

What about adding a field to the WorldInfo called deviceCoordinateSystem (or deviceAxisOrientation) that can be either FLU or legacy? That way we would be more explicit.

@BenjaminDeleze
Copy link

A problem would also arise if a user has defined his own proto that uses some webots protos (such as Sick S300 for example)
or some webots sensors. We need to serve it the old or the new version of this protos/sensors according to when was created the proto.

@BenjaminDeleze
Copy link

Note that the world (ENU/NUE...) and body (FLU/RUB...) are independent (see https://www.ros.org/reps/rep-0103.html#axis-orientation). Most users will use ENU and FLU together, but that is not a general rule.

Yes :/

What about adding a field to the WorldInfo called deviceCoordinateSystem (or deviceAxisOrientation) that can be either FLU or legacy? That way we would be more explicit.

Could be an idea. I do not really like the idea to add a new field, but I do not see a better solution. And if there is no deviceCoordinateSystem tag, it would be legacy by default.

@BenjaminDeleze
Copy link

Problem: the version is overridden if the world is saved again.

Would it be a solution to make the version in the .wbt persistent?

@lukicdarkoo
Copy link
Member Author

Problem: the version is overridden if the world is saved again.

Would it be a solution to make the version in the .wbt persistent?

I am not sure whether it is possible. I guess in 99% of cases it will work fine, but I am afraid there will be some uncovered edge cases.

The PROTO issue you mentioned is a good point. What happens if the user adds an R2021b PROTO in an R2021c world? That will be a common case and non of the suggestions will work :/

@BenjaminDeleze
Copy link

I am not sure whether it is possible. I guess in 99% of cases it will work fine, but I am afraid there will be some uncovered edge cases

One thing would be that we will have a warning everytime we open an old world. Otherwise I do not see an issue but I share your concerns about uncovered edge

@BenjaminDeleze
Copy link

BenjaminDeleze commented Jul 20, 2021

What happens if the user adds an R2021b PROTO in an R2021c world? That will be a common case and non of the suggestions will work :/

That is a tricky point indeed! if the user want to insert his R2021b proto inside a R2021c webots world, the world will be fine but not the proto. And if he changed the world to legacy mode, the proto will be fine, but not the world

@lukicdarkoo
Copy link
Member Author

lukicdarkoo commented Jul 20, 2021

We can implement a coordinateSystem field at a device level that can be legacy or FLU. If the field is not defined then:

  • if <=R2021b the value would be legacy and
  • if >R2021b the value would be FLU.

Once the world file is saved in R2021c+ Webots would append the coordinateSystem property to each device (the value would be legacy).

That way we ease the transition and users can save world files.

@BenjaminDeleze
Copy link

BenjaminDeleze commented Jul 20, 2021

We can implement a coordinateSystem field at a device level that can be legacy or FLU. If the field is not defined then

Does it mean that it would be possible to have both legacy and FLU devices inside the same proto?

I think we should agree on a kind of tag to put as comment where we defined different behavior in the sensors, so it will ease the cleanup when we drop the legacy version.

@BenjaminDeleze
Copy link

Also how do we handle the docs?
we modify it such that it supports only FLU or do we need to keep the specificity of each version (always for the pen: along which axis we draw)

@lukicdarkoo
Copy link
Member Author

Does it mean that it would be possible to have both legacy and FLU devices inside the same proto?

Yes, we could mix them. Eventually, we can deprecate the coordinateSystem field. We don't need any special tag.

we modify it such that it supports only FLU

I think it is a way to go as we want to discourage people from using the legacy axis orientation.

@BenjaminDeleze
Copy link

We don't need any special tag.

I meant in the .cpp files of Webots such that once we want to remove the legacy behavior it is easy to find every lines in the code where there is such a thing to remove

I think it is a way to go as we want to discourage people from using the legacy axis orientation.

I agree

@BenjaminDeleze
Copy link

Concerning the test suite, if we support sensors for both legacy and FLU, I think we will need to have two test suites in order to be sure that we do not break legacy or FLU :/

@stefaniapedrazzi
Copy link
Member

stefaniapedrazzi commented Jul 21, 2021

The main objectives are:

  • new worlds should use the new coordinate system (worlds, PROTOs, sensors, etc.)
  • old worlds should still run correctly to guarantee the backward compatibility
  • we should strongly encourage users to convert their worlds to the new coordinate system (ideally Webots should be able to convert them on save) to get rid of old code as soon as possible

Would it be a solution to make the version in the .wbt persistent?

This is bad and we should avoid it because then old worlds will never be updated.
Ideally if a world is modified and saved it should be converted internally and automatically so that it uses the latest device coordinate system.

We can implement a coordinateSystem field at a device level that can be legacy or FLU.

I would try to avoid adding a new field specifying the coordinate system for device (legacy or FLU) and keep it as last solution if we should not really be able to handle it properly internally in Webots.
Supporting different coordinate system is more complicated, users worlds will never be updated and we will never get rid of the old ones.

Instead I think we should focus on implementing some functionality inside Webots that automatically converts the old devices (based on Webots version) at load into the new ones, so that when saving the worlds they will already follow the new standard.
I didn't check the specific issues, but for example this could be achieved by adding additional Transform nodes in the children field or maybe there are even better solutions.
Then on save we will print / show a message warning users of the changes.

Additionally, we should provide a script to upgrade PROTO models to R2021c and the new coordinate system.
PROTO files are not saved manually and if users decide to just change the version without updating the PROTO to the new standard it's a wrong manipulation that we should not support.

Concerning the test suite, if we support sensors for both legacy and FLU, I think we will need to have two test suites in order to be sure that we do not break legacy or FLU :/

This won't be necessary if Webots can convert internally the old device coordinate system into the new ones.
We will just need a couple of test to check that the conversion works correctly.

@lukicdarkoo
Copy link
Member Author

I like the idea of converting worlds automatically. It is probably the most efficient way to force users to use the new conventions. However, there are a few challenges with that approach.

Instead I think we should focus on implementing some functionality inside Webots that automatically converts the old devices (based on Webots version) at load into the new ones, so that when saving the worlds they will already follow the new standard.
I didn't check the specific issues, but for example this could be achieved by adding additional Transform nodes in the children field or maybe there are even better solutions.
Then on save we will print / show a message warning users of the changes

Let's consider a use-case in which a user uses a point cloud from a LiDAR. It's likely the user uses getPosition/getOrientation/getPose of the LiDAR node to transform the point cloud to another coordinate frame. Adding an additional transform will break the behavior. Not terrible, but we should be aware we cannot provide full backward compatibility.

Additionally, we should provide a script to upgrade PROTO models to R2021c and the new coordinate system.
PROTO files are not saved manually and if users decide to just change the version without updating the PROTO to the new standard it's a wrong manipulation that we should not support.

We cannot make such a script, at least not if there is JavaScript/Lua inside.

I would try to avoid adding a new field specifying the coordinate system for device (legacy or FLU) and keep it as last solution if we should not really be able to handle it properly internally in Webots.

The field can be hidden.

@BenjaminDeleze
Copy link

If we convert automatically the world of a user when it is open, we should put an additional warning when he tries to save as it will heavily modify his .wbt and make it incompatible with previous version of webots.

Another question concerns cylinders (also capsules and cones by extension). Cylinders are currently built along the Y axis. If we follow the ROS convention, and it is what we are trying to do with this PR, cylinders should be oriented along the Z-axis (http://wiki.ros.org/urdf/XML/link at <cylinder>) , we should change the default orientation of the cylinders/cone/capsule in webots as well.

@stefaniapedrazzi
Copy link
Member

stefaniapedrazzi commented Jul 21, 2021

The field can be hidden.

Yes. But users will continue to use the old coordinate system and won't update their worlds.
Automatically converting is for sure more complicated to implement than a new field.
But it will be easier for users to update their worlds and this should have a high priority too.

If for some devices it would be useful to be able to specify the coordinate system (at least to guarantee the backward compatibility for some time), for others I really don't see the advantage, for example for the Pen and Camera.

Where it is not strictly needed, I would automatically convert them.
For devices that will cause more problems we can find a different method to handle them-

We cannot make such a script, at least not if there is JavaScript/Lua inside.

We should at least provide a script for simple PROTO structures not using JavaScript/Lua.

If we convert automatically the world of a user when it is open, we should put an additional warning when he tries to save as it will heavily modify his .wbt and make it incompatible with previous version of webots.

Yes, of course we should print/ show a warning.
But it is normal that a file saved with a newer version may not work with older version.
We try to guarantee backward compatibility but it is impossible to guarantee forward compatibility.

Another question concerns cylinders (also capsules and cones by extension). Cylinders are currently built along the Y axis. If we follow the ROS convention, and it is what we are trying to do with this PR, cylinders should be oriented along the Z-axis (http://wiki.ros.org/urdf/XML/link at ) , we should change the default orientation of the cylinders/cone/capsule in webots as well.

Yes, we should probably update the geometries too.

@mael25
Copy link
Contributor

mael25 commented Jul 28, 2021

I have checked the conventions for the sensors that have a specific axis measurements.

The TouchSensor with type=force seems not to have an equivalent. Indeed, the force/torque controller in ROS, the Contact Sensor plugin and the Force/Torque Sensor in Gazebo all measure in 3D.

As for the Connector, no equivalent has been found.

I would propose to use the x-axis for both of them, as the Shape of these devices in the Guided Tour suggests that the measurement is done on the forwards axis, which should be x (instead of z currently) if we use FLU:

Connector
connector
TouchSensor, type=force
force

@mael25
Copy link
Contributor

mael25 commented Jul 29, 2021

For infra-red Emitter and Receiver, I would suggest to switch the emission/reception cone axis from z to x, as it makes sense to have them oriented like a DistanceSensor. The other types of Emitter and Receiver are omnidirectional.

@stefaniapedrazzi stefaniapedrazzi mentioned this pull request Aug 23, 2021
11 tasks
@lukicdarkoo
Copy link
Member Author

I added a list of all PROTOs. I propose the following procedure:

  • Pick a batch of PROTOs to convert (e.g. 10, 20, 30... PROTOs).
  • Create a PR and copy the sublist to your PR (to have a TODO list).
  • Check them in this PR so others know which PROTOs are WIP (or finished).

ad-daniel and others added 22 commits November 19, 2021 09:26
…enu-plan

Merge `develop` into `feature-enu-plan`
* fix animation initialization

* merge webots-streaming and webots-animation

* correct fullscreen and buttons

* docs and sync

* Update docs/guide/web-scene.md

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* Update docs/guide/web-scene.md

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* Update docs/guide/web-scene.md

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* rename x3d and json attributes

* Update docs/guide/web-scene.md

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* Update docs/guide/web-simulation.md

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* Update docs/guide/web-simulation.md

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* Update docs/guide/web-simulation.md

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* Update docs/guide/web-animation.md

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* hasActiveAnimation to hasAnimation

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>
* Remove additional rendering call after world is destroyed

* reduce max number of lights

* typo

* add automatic close

* update limitation example

* typo

* Update docs/guide/web-animation.md

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* Update docs/guide/web-simulation.md

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* Update docs/reference/light.md

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>
* remove skybox rendering in orthographic mode

* disable shadow
* first commit

* Begin of humanoid_marathon

* convert sumo world

* Fix pillar

* convert highways

* clean + convert boomer

* convert highway

* convert cities + fix forest

* fix crossroad

* fix forest

* fix forest + convert village

* convert villages winter+realistic

* convert village center + fix stripBuilding

* fix forests + add script to convert them

* fix fastFoodRestaurant

* convert CH_Vens

* convert ch_morges

* convert humanoid marathon

* fix robotis proto translation

* fix humanoid marathon

* clean + convert forst highway

* swap y/z + protos fixes

* fix forest

* clean+ sumo update

* convert sumo exporter

* convert vehicle sensors

* fix ibeoLux proto

* pep8 compliance

* fix highway_overtake

* convert highway overtake

* convert city net

* convert city night

* convert city traffic net

* convert village net

* convert village center net

* convert village realistic net

* fix sumo_interface_example traffic lights

* convert radar target tracker controller

* convert highway controller

* highway

* restore radar.c

* fix robotbenchmark/highway_driving

* fix humanoid_marathon.wbt

* correct CH_Morges

* fix buildings in CH_Morges

* fix highway_overtake

* fix building and route village_realistic

* fix village_center route

* convert webots vehicle

* compliance

* delete edges and nodes.

* replace trip by flow for highway

* Apply suggestions from code review

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* remove useless crossroad on highway.wbt

* remove crossroads shape

* correct roll and pitch

* fix truck and tank simple

* fixes from daniel reviews

* add edge and node for sumo example

* small fix ch_morges

* fixes village_center

* fix strange behaviour vehicle

* fix turn and changeline SUMO

* fix darwin

* fix sumo center of rotation

* pep8

* Update sumo (#3876)

* update makefile

* adapt sumo webots for 1.10.0

* add windows md5

* add linux md5

* add mac md5

* update docs

* update docs

* add SUMO dependencies

* update tarball installation

* add SUMO dependencies to linux compilation

* update Makefile for ubuntu18.04

* fix change lane function

* fix default translation

* Update docs/automobile/sumo-exporter.md

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* Update projects/vehicles/protos/generic/TruckTrailerSimple.proto

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* Update projects/objects/road/protos/RoadPillars.proto

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* fix car_node + comment

Co-authored-by: joachimhgg <joachim.honegger@gmail.com>
Co-authored-by: Benjamin Deleze <benjamin.deleze@cyberbotics.com>
Co-authored-by: Benjamin Délèze <benjamin.deleze@cyberbotics.ch>
Co-authored-by: joachimhgg <48200998+joachimhgg@users.noreply.github.com>
Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>
* Converted web_component_studio to ENU

* Aibo

* Altino

* Atlas

* bb8

* bioloid

* blimp

* All robots

* IRB

* irb

* irb

* atlas

* better viewpoint for altino and atlas

* bb8

* khr2

* khr3

* ned

* Fixed view for BB8, KHR2, KHR3 and NED

* Fixed viewpoint for some robots
* first commit

* Begin of humanoid_marathon

* convert sumo world

* Fix pillar

* convert highways

* clean + convert boomer

* convert highway

* convert cities + fix forest

* fix crossroad

* fix forest

* fix forest + convert village

* convert villages winter+realistic

* convert village center + fix stripBuilding

* fix forests + add script to convert them

* fix fastFoodRestaurant

* convert CH_Vens

* convert ch_morges

* convert humanoid marathon

* fix robotis proto translation

* fix humanoid marathon

* clean + convert forst highway

* swap y/z + protos fixes

* fix forest

* osm_importer

* fix crosswalk and wall

* clean+ sumo update

* fix bug

* correct elevation

* convert sumo exporter

* convert vehicle sensors

* fix ibeoLux proto

* pep8 compliance

* fix highway_overtake

* convert highway overtake

* convert city net

* convert city night

* convert city traffic net

* convert village net

* convert village center net

* convert village realistic net

* fix sumo_interface_example traffic lights

* convert radar target tracker controller

* convert highway controller

* highway

* restore radar.c

* fix robotbenchmark/highway_driving

* fix humanoid_marathon.wbt

* correct CH_Morges

* fix buildings in CH_Morges

* fix highway_overtake

* fix building and route village_realistic

* fix village_center route

* convert webots vehicle

* compliance

* delete edges and nodes.

* replace trip by flow for highway

* Apply suggestions from code review

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* remove useless crossroad on highway.wbt

* remove crossroads shape

* correct roll and pitch

* fix truck and tank simple

* fixes from daniel reviews

* add edge and node for sumo example

* small fix ch_morges

* fixes village_center

* fix strange behaviour vehicle

* fix turn and changeline SUMO

* fix darwin

* fix sumo center of rotation

* pep8

* Update sumo (#3876)

* update makefile

* adapt sumo webots for 1.10.0

* add windows md5

* add linux md5

* add mac md5

* update docs

* update docs

* add SUMO dependencies

* update tarball installation

* add SUMO dependencies to linux compilation

* update Makefile for ubuntu18.04

* fix change lane function

* fix default translation

* Update docs/automobile/sumo-exporter.md

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* Update projects/vehicles/protos/generic/TruckTrailerSimple.proto

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* Update projects/objects/road/protos/RoadPillars.proto

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* fix car_node + comment

* pep8

Co-authored-by: ad-daniel <daniel.dias@epfl.ch>
Co-authored-by: joachimhgg <joachim.honegger@gmail.com>
Co-authored-by: Benjamin Délèze <benjamin.deleze@cyberbotics.ch>
Co-authored-by: joachimhgg <48200998+joachimhgg@users.noreply.github.com>
Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>
* loadModel, closeModel

* update docs for scene

* update for scene

* correct closing

* model to scene

* typo

* Update docs/guide/web-animation.md

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* Update docs/guide/web-scene.md

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

* Update docs/guide/web-simulation.md

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>

Co-authored-by: Olivier Michel <Olivier.Michel@cyberbotics.com>
* Update viewer.js

* Update webots.js
* Disable css when not needed

* cascading
…ta… (#3950)

* Fix crash when changing a world after the backward compability adaptation

* better

* Update WbNodeUtilities.cpp
* Fix extrusion

* fix CrashBarrier bo

* orientation

* switch Y and Z to meet the VRML2 norm

* fix extrusion protos

* update script

* pep8

* Update Morges wrong walls

* pep8

* Update projects/objects/geometries/protos/Extrusion.proto

Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>

* Update projects/objects/geometries/protos/Extrusion.proto

Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>

* Update projects/objects/geometries/protos/Extrusion.proto

Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>

* Update projects/objects/geometries/protos/Extrusion.proto

Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>

* Update scripts/converter/convert_nue_to_enu_rub.py

Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>

* Update projects/objects/geometries/protos/Extrusion.proto

Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>

Co-authored-by: joachimhgg <joachim.honegger@gmail.com>
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
…enu-plan

Merge develop into `feature-enu-plan`
@ad-daniel ad-daniel added test ros Start the ros test test sources Start the sources test on all platforms labels Dec 3, 2021
@ad-daniel ad-daniel marked this pull request as ready for review December 3, 2021 16:01
@ad-daniel ad-daniel requested review from a team and omichel December 3, 2021 16:01
Copy link
Member

@omichel omichel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🥳

@ad-daniel ad-daniel merged commit bf4a17b into develop Dec 3, 2021
@BenjaminDeleze BenjaminDeleze deleted the feature-enu-plan branch July 7, 2022 06:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cleanup Any design, code, file or folder cleanup feature Implementation of a major feature test ros Start the ros test test sources Start the sources test on all platforms test suite Start the test suite
Development

Successfully merging this pull request may close these issues.

None yet

7 participants