Commit Graph

376 Commits

Author SHA1 Message Date
nsubiron 4661c24899 Add find function to actor list 2018-12-16 00:05:15 +01:00
nsubiron 7ca171de9c Manual control: retry spawn if collision 2018-12-13 20:27:43 +01:00
nsubiron 8c01b53948 Allow changing gears from manual_control.py 2018-12-13 18:32:59 +01:00
nsubiron 56534e9569 Add option for manual gear shifting to VehicleControl 2018-12-13 18:32:59 +01:00
Bernd Gassmann bd710c339c Provide parent/attribute content of Actors via python interface
While creating the new carla ros bridge some extensions became necessary
within CARLA:

The parent property of an actor via python interface is not yet filled.
Therefore, the parent_id of Actors has to be transferred from the CARLA
server via rpc interface.

In addition, actor attributes are published via python interface.

Changes in detail:

carla/rpc/Actor.h:
- add parent_id field to the Actor class for rpc transport

TheNewCarlaServer.cpp:
- fill the parent_id field with the appropriate value

client/ActorList:
- added GetActor() function to get an actor by id

client/ActorVariant:
- added actor_list optional parameter to Get() and MakeActor() function
which allows to query for the parent actor in case the actor_list is
available

client/ActorAttribute:
- solved problem of independent rpc::ActorAttribute* classes by
introduction of ActorAttributeValueAccess class, to be able to reuse
most of the functions for both ActorAttribueValues and ActorAttributes

ActorBlueprintFunctionLibrary:
- extended actor attributes by attribute 'role_name' having {autopilot,
    scenario, ego_vehicle} as recommended values for vehicles or
    {front,back,...} for sensors to be able to distiguish the different
    actors in a meaningful way when transferring to ROS topic names
- extended vehicle attributes by not-modifiable attribute 'object_type'
to be defined at blueprint creation time to provide ground truth
object classification type

PythonAPI:
- libcarla: provide the actor attributes within python as dictionary
- make use of role_name attribute to provide information required for
ROS bridge to distinguish ego vehicle from others
2018-11-30 16:08:50 +01:00
nsubiron cddb98282c Increase version and update changelog 2018-11-16 13:29:40 +01:00
nsubiron 4c9aec0764 Small fixes to manual_control.py 2018-11-15 20:22:28 +01:00
nsubiron 4a77755208 Add more attributes to waypoints 2018-11-15 16:45:35 +01:00
nsubiron 02be13d9e7 Improvements to manual_control.py 2018-11-15 16:45:35 +01:00
nsubiron 0a06dc7db6 Return waypoints and spawn points as pure Python lists 2018-11-15 16:45:35 +01:00
nsubiron e5c4f593d0 Expose map generate all waypoints in Python 2018-11-15 16:45:34 +01:00
nsubiron 4eed57fb87 Expose map topology in Python 2018-11-15 16:45:34 +01:00
nsubiron f9293c80ed Use actor_get_display_name when possible 2018-11-15 16:29:57 +01:00
nsubiron 6103d59766 Implement lane detector only for points on same road section 2018-11-15 16:29:57 +01:00
nsubiron 9d1b2a12ef Add parent to actor state 2018-11-15 16:29:57 +01:00
nsubiron 03baf21df6 Add empty lane detector and split server side vs client side sensors 2018-11-15 16:29:57 +01:00
Marc 60c97c4c14 Added Location::Distance(Location) functionality to the PythonAPI 2018-11-14 13:00:53 +01:00
nsubiron 503fedeb6b Merge branch 'master' into roads 2018-11-12 14:48:44 +01:00
nsubiron 2371246c5b Add HUD with info to manual_control.py 2018-11-09 11:15:27 +01:00
nsubiron b113b979ca Log vehicle control in world observer 2018-11-08 12:50:11 +01:00
nsubiron 7891a0b138 Add --safe argument to spawn_npc.py 2018-11-03 12:28:14 +01:00
nsubiron dca0bf86b0 First attempt at computing next waypoint 2018-11-03 12:26:19 +01:00
Marc 2b6e3057ea Added GetNearestLane 2018-11-02 17:40:45 +01:00
nsubiron 362d613c6c Fix camera position in vehicle_gallery.py 2018-10-31 14:08:38 +01:00
nsubiron f99fc82f4a Fix spawn_npc.py for Windows 2018-10-31 14:08:38 +01:00
nsubiron db4f5082ee Add lidar to manual_control.py 2018-10-31 14:08:38 +01:00
nsubiron c9952328c7 Improve spawn_npc.py 2018-10-31 14:08:38 +01:00
nsubiron eff9fa2ea6 Fix PythonAPI build on Windows 2018-10-29 11:32:32 +01:00
nsubiron 7649d677e3 Add script for spawning NPCs 2018-10-28 17:46:37 +01:00
nsubiron 92f8fe7fd6 Merge branch 'master' into roads 2018-10-28 11:35:42 +01:00
nsubiron 107b75c36b Add license and documentation to Python examples 2018-10-28 11:23:59 +01:00
nsubiron 6d1f3519ec Make possible to draw UE4 debug shapes from Python API 2018-10-28 10:19:30 +01:00
nsubiron bb0c9ffdbc Change Python examples to use the recommended spawn points 2018-10-26 19:19:17 +02:00
nsubiron 89f30ee49c Add save OpenDrive to disk 2018-10-26 19:19:17 +02:00
nsubiron 4e075ca1f1 Merge branch 'master' into com 2018-10-26 17:29:59 +02:00
nsubiron bf0685d115 Expose road maps to Python 2018-10-24 22:42:50 +02:00
nsubiron f824434a6b Add dynamic weather script 2018-10-22 19:29:21 +02:00
nsubiron 571f9363e1 Update python_api.md 2018-10-22 14:51:22 +02:00
nsubiron 44710c760d Workaround bounding boxes only for vehicles 2018-10-22 14:17:25 +02:00
nsubiron a8505a2fb7 Fix None is a reserved keyword in Python 3 2018-10-22 14:17:24 +02:00
nsubiron 4b11973627 Improvements to manual control 2018-10-22 00:30:35 +02:00
nsubiron c478eb039e Function to disable simulating physics on an actor 2018-10-21 23:39:58 +02:00
nsubiron 994110047e Fix set actor transform broken for attached actors 2018-10-21 23:38:14 +02:00
nsubiron d5392c7408 Add traffic lights and signs as actors 2018-10-21 23:35:24 +02:00
nsubiron cf8a758146 Add semantic tags to actors 2018-10-21 18:27:49 +02:00
nsubiron b80f70b8b9 Add on_tick event 2018-10-21 16:49:43 +02:00
nsubiron aa83b8abf8 Add wait for tick function 2018-10-21 15:29:27 +02:00
nsubiron 313b11931c Add collision sensor 2018-10-20 20:33:37 +02:00
nsubiron 484fe9d949 Add ActorVariant class 2018-10-20 16:14:08 +02:00
nsubiron ca7a2dcbc7 Try fix setup.py to link against libcarla_client (Linux only) 2018-10-19 12:16:04 +02:00
nsubiron 98a90496f6 Support for Python 3 on Linux 2018-10-19 11:23:33 +02:00
nsubiron a6dfef0cd6 Improve wildcard filtering of actors and blueprints 2018-10-18 21:09:54 +02:00
nsubiron 21800007b4 Add support for requesting the list of actors in the episode 2018-10-18 20:36:17 +02:00
nsubiron 4da71fc39f Add support for accessing and modifying sensor data Array elements 2018-10-18 20:32:13 +02:00
nsubiron 47d52992f9 Make actors get their dynamic state by looking at the episode state 2018-10-18 00:21:03 +02:00
nsubiron 96ba571dfd Add bounding boxes to Python API 2018-10-18 00:21:03 +02:00
nsubiron d5f349cfff Add comparison operators to geom classes 2018-10-18 00:21:03 +02:00
nsubiron 23470ad4fb Add bounding boxes to actors 2018-10-18 00:21:03 +02:00
nsubiron 050467e109 Add class Vector3D 2018-10-18 00:21:03 +02:00
nsubiron d7d4dd4e1e Add episode info message 2018-10-18 00:21:03 +02:00
nsubiron 5d2ec3aad0 Remove ping call 2018-10-18 00:21:03 +02:00
nsubiron 0ce245f679 Add all weather presets to manual_control.py 2018-10-18 00:16:59 +02:00
FPerez 711e04fc53 Capture Gamma set, Preset weathers fixed 2018-10-17 19:28:49 +02:00
nsubiron e52f780bd5 Better distro check in setup.py 2018-10-15 16:00:54 +02:00
nsubiron 268bb2f4a0 Expose weather presets to Python 2018-10-15 14:38:53 +02:00
FPerez 288a7b7ed0 Creeated Weather Presets 2018-10-15 13:12:09 +02:00
nsubiron f14d60e299 Allow changing weather from manual_control.py 2018-10-15 12:01:31 +02:00
nsubiron 5bb425737c Expose weather to client API 2018-10-15 10:34:08 +02:00
nsubiron f8592fb98c Improve Python examples 2018-10-09 19:38:31 +02:00
nsubiron 3f2787799e Fix issues related to the destruction of objects 2018-10-09 12:29:54 +02:00
nsubiron 2c53287dcf Make possible to unsubscribe from a sensor stream 2018-10-08 13:47:10 +02:00
nsubiron 91aa984350 Fix Boost.Python not getting the right signature 2018-10-08 13:47:10 +02:00
nsubiron d56c17a166 Release Python GIL when possible 2018-10-08 13:47:10 +02:00
nsubiron 5965c3bdbe Refactor client-side code and its C++ API 2018-10-08 13:47:10 +02:00
iFuSiiOnzZ c3c3f29b4d Improve manual control steering 2018-10-08 13:46:43 +02:00
nsubiron 3b12d31cc6 Fix travis build (again) 2018-10-08 13:20:05 +02:00
nsubiron 882992952c Small refactor of sensor data IO 2018-10-07 18:44:45 +02:00
nsubiron 2ad3ffedc5 Expose methods for saving and converting images in Python 2018-10-07 18:44:45 +02:00
nsubiron 4ad2095c92 Add methods for saving point clouds in ply format 2018-10-07 18:44:45 +02:00
nsubiron d02d9ced3c Add OutputFile class 2018-10-07 18:44:45 +02:00
nsubiron dd0de88fbd Add namespaces for road classes and opendrive 2018-10-03 11:33:18 +02:00
nsubiron db9d6a781d Small refactoring and documentation 2018-10-02 18:00:16 +02:00
nsubiron 84d48f7ed3 Expose lidar measurements to Python API 2018-10-02 15:03:58 +02:00
nsubiron d0629c9381 Image serialization complete pipeline 2018-10-02 15:03:58 +02:00
nsubiron 92855ccfde Fix setup.py failed to compile boost sources 2018-10-02 15:03:58 +02:00
nsubiron a869424185 User buffer as much as possible to avoid a couple of dynamic allocations 2018-10-02 15:03:03 +02:00
nsubiron b9a6ad659c Add timeout to manual_control.py 2018-09-30 17:45:47 +02:00
nsubiron 0b38510f8f Change Python client timeout to float seconds 2018-09-30 17:45:47 +02:00
nsubiron 179ab3eb9b Fix bug in print list function 2018-09-05 16:00:20 +02:00
nsubiron 09f4ed7fd7 Allow iterating attributes of an actor blueprint 2018-09-03 11:44:37 +02:00
Andrei Jianu e7291e2ce4
Merge branch 'master' into 0.9-win32 2018-08-27 17:40:29 +02:00
nsubiron 8805d0d79a Fix typos 2018-08-24 14:40:19 +02:00
iFuSiiOnzZ fd203a7a54 Wrap text that is longer than 100 characters and remove useless code 2018-08-23 18:47:24 +02:00
iFuSiiOnzZ 6e6a69dd92 Improve user errors
Stop build if any error was found
Enable multiprocess compilation
Add BuildPythonAPI.bat to makefile
Add BOOST_ALL_NO_LIB as workaround for https://github.com/boostorg/python/issues/193
2018-07-31 16:35:02 +02:00
iFuSiiOnzZ c983966c2a Link runtime libraries dynamically
Unreal Engine doesn't allow static runtime linking
https://wiki.unrealengine.com/Linking_Static_Libraries_Using_The_Build_System
2018-07-30 18:59:42 +02:00
iFuSiiOnzZ 4d928ee5c0 Build PythonAPI
Add BuildPythonAPI.bat
Build all the libraries in static, the way we are totaly independent of the operating system
2018-07-30 16:52:29 +02:00
nsubiron 3b3bb1868a Fix the build 2018-07-30 12:37:28 +02:00
nsubiron f40c90942f Add more examples 2018-07-29 23:59:22 +02:00
nsubiron 4dac1b532f Rename camera id 2018-07-29 23:18:21 +02:00
nsubiron 4c3b6127b1 Minor fixes 2018-07-29 18:05:19 +02:00
nsubiron e34a5891b1 Add addition and subtraction operators to locations 2018-07-29 18:04:57 +02:00
nsubiron 4f5044a495 Expose spectator pawn 2018-07-29 18:03:52 +02:00
nsubiron 63d6f11d41 Make example.py executable 2018-07-28 20:33:35 +02:00
nsubiron 78571e299f Minimal documentation of the new API 2018-07-28 20:11:42 +02:00
nsubiron bf05c1220a Add example.py 2018-07-28 20:11:42 +02:00
nsubiron 12243aa84e Add functions to get actor location and transform 2018-07-28 17:46:26 +02:00
nsubiron 1b69494772 Print blueprint tags too 2018-07-28 16:10:59 +02:00
nsubiron 7d1f51e9cc Add functions to set actor location and transform 2018-07-28 15:23:57 +02:00
nsubiron 2253877405 Name some arguments for Python 2018-07-28 13:59:31 +02:00
nsubiron f9b7578d6c Allow destroying actors from Python 2018-07-28 13:04:59 +02:00
nsubiron c4c15cbb41 Add function to enable autopilot from Python 2018-07-27 19:56:00 +02:00
nsubiron eb2cbc7839 Expose recommended attribute values in Python 2018-07-27 18:42:49 +02:00
nsubiron 2e71467ff5 Add find function to blueprint library 2018-07-27 12:59:38 +02:00
nsubiron d543c3812e Add function to apply control to vehicles 2018-07-26 22:08:39 +02:00
nsubiron f89f728871 Add function to spawn actor attached to another actor 2018-07-26 20:37:15 +02:00
nsubiron 4f9299c2b5 Compile all client code with setup.py and custom boost version 2018-07-26 19:07:05 +02:00
nsubiron ab431e3847 Exposing cameras in Python API 2018-07-26 18:25:57 +02:00
nsubiron 8ae2770e1a Improvements to actor spawners 2018-07-25 17:16:28 +02:00
nsubiron 60d866d5b6 Access Python blueprints with bounds checking 2018-07-25 11:45:16 +02:00
nsubiron a1663c6e03 Attach description to actor instance 2018-07-24 12:41:44 +02:00
nsubiron 0f636e84fd Full pipeline for spawning actors from Python 2018-07-23 20:40:59 +02:00
nsubiron a905170a98 Unity build PythonAPI to increase compilation time 2018-07-19 12:42:18 +02:00
nsubiron 45f661ff9e Expose actor definitions and attributes on client side 2018-07-19 12:19:39 +02:00
nsubiron 6eb73ada34 Compile everything with C++14 standard 2018-07-13 12:39:23 +02:00
nsubiron 113dc4b6b8 Report test results as XML for Jenkins 2018-07-06 18:29:55 +02:00
nsubiron 3cf91c54f2 Add PythonAPI module 2018-07-04 11:13:43 +02:00