%global _empty_manifest_terminate_build 0 Name: python-awconnection Version: 0.3.5.1 Release: 1 Summary: An interface between Python and AutonoWar License: MIT URL: https://github.com/griffinteller/awconnection Source0: https://mirrors.nju.edu.cn/pypi/web/packages/c8/26/cd07deec5a3b5a9daa32fc981def2aa1b1762624685d0b8e984dd4726734/awconnection-0.3.5.1.tar.gz BuildArch: noarch Requires: python3-pywin32 %description # AutonoWar Connection An interface between Python and AutonoWar

Documentation (AutonoWar v0.1.3, abrconnection v0.1.0):

* Coordinate system is left-handed, with x being east, y being upwards, and z being north. * `RobotConnection()`: class which handles connection to the game. Should be instantiated at beginning of script, and method `connect()` should be called immediately after. `disconnect()` ends connection. * `RobotConnection.set_tire_torque(tire_name, torque)`: sets torque of tire `tire_name` to `torque`. Current tire names are "BackLeft", "BackRight", "FrontLeft", and "FrontRight." * `RobotConnection.set_tire_steering(tire_name, bering)`: sets tire `tire_name` to `bering`. All angles/berings are clockwise off of vertical (unity's coordinate system is left-handed). * `RobotConnection.sensors`: Dictionary/Hashtable containing information about the state of the robot. * Vectors are stored as dictionaries with keys `"x"`, `"y"`, and `"z"`. * `sensors["gps"]`: Sensor containing position information of the robot. * `sensors["gps"]["position"]`: Vector containing current position of robot relative to starting point. * `sensors["gyroscope"]`: Sensor containing rotation information of the robot: * `sensors["gyroscope"]["right"]`: Unit vector pointing right RELATIVE to the robot. For example, if the robot was facing in the default direction, its right vector would be <1, 0, 0> because its right direction is east. If the robot turned 90 degees counterclockwise, its right vector would be <0, 0, 1>. If the robot was facing a bering of 45 degrees and was climbing a 20 degree grade, its right vector would be / sqrt(cos(45)^2 + sin(20)^2 + sin(45)^2). * `sensors["gyroscope"]["up"]`: Unit vector pointing up RELATIVE to the robot. Same idea as before. * `sensors["gyroscope"]["forward"]`: Unit vector pointing up RELATIVE to the robot. Same idea as before. * `sensors["lidar"]["distanceArray"]`: Array containing distance to any object at 1 degree increments. `state_dict["lidar"]["distanceArray"][0]` would describe how many meters of clearance the robot has in front of itself, `state_dict["lidar"]["distanceArray"][90]` would describe its clearance to the right, and so on. If the robot has more than 100 meters of clearance in a particular direction, the value will capped at 100. In future updates, lidar upgrades might include an increase in range or density for in-game currency. Vertical FOV will be coming soon. * `sensors["radar"]["pings"]`: array of vectors representing opponent locations * `sensors["altimeter"]["altitude"]`: distance to ground in world space (i.e. NOT normal to robot) %package -n python3-awconnection Summary: An interface between Python and AutonoWar Provides: python-awconnection BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-awconnection # AutonoWar Connection An interface between Python and AutonoWar

Documentation (AutonoWar v0.1.3, abrconnection v0.1.0):

* Coordinate system is left-handed, with x being east, y being upwards, and z being north. * `RobotConnection()`: class which handles connection to the game. Should be instantiated at beginning of script, and method `connect()` should be called immediately after. `disconnect()` ends connection. * `RobotConnection.set_tire_torque(tire_name, torque)`: sets torque of tire `tire_name` to `torque`. Current tire names are "BackLeft", "BackRight", "FrontLeft", and "FrontRight." * `RobotConnection.set_tire_steering(tire_name, bering)`: sets tire `tire_name` to `bering`. All angles/berings are clockwise off of vertical (unity's coordinate system is left-handed). * `RobotConnection.sensors`: Dictionary/Hashtable containing information about the state of the robot. * Vectors are stored as dictionaries with keys `"x"`, `"y"`, and `"z"`. * `sensors["gps"]`: Sensor containing position information of the robot. * `sensors["gps"]["position"]`: Vector containing current position of robot relative to starting point. * `sensors["gyroscope"]`: Sensor containing rotation information of the robot: * `sensors["gyroscope"]["right"]`: Unit vector pointing right RELATIVE to the robot. For example, if the robot was facing in the default direction, its right vector would be <1, 0, 0> because its right direction is east. If the robot turned 90 degees counterclockwise, its right vector would be <0, 0, 1>. If the robot was facing a bering of 45 degrees and was climbing a 20 degree grade, its right vector would be / sqrt(cos(45)^2 + sin(20)^2 + sin(45)^2). * `sensors["gyroscope"]["up"]`: Unit vector pointing up RELATIVE to the robot. Same idea as before. * `sensors["gyroscope"]["forward"]`: Unit vector pointing up RELATIVE to the robot. Same idea as before. * `sensors["lidar"]["distanceArray"]`: Array containing distance to any object at 1 degree increments. `state_dict["lidar"]["distanceArray"][0]` would describe how many meters of clearance the robot has in front of itself, `state_dict["lidar"]["distanceArray"][90]` would describe its clearance to the right, and so on. If the robot has more than 100 meters of clearance in a particular direction, the value will capped at 100. In future updates, lidar upgrades might include an increase in range or density for in-game currency. Vertical FOV will be coming soon. * `sensors["radar"]["pings"]`: array of vectors representing opponent locations * `sensors["altimeter"]["altitude"]`: distance to ground in world space (i.e. NOT normal to robot) %package help Summary: Development documents and examples for awconnection Provides: python3-awconnection-doc %description help # AutonoWar Connection An interface between Python and AutonoWar

Documentation (AutonoWar v0.1.3, abrconnection v0.1.0):

* Coordinate system is left-handed, with x being east, y being upwards, and z being north. * `RobotConnection()`: class which handles connection to the game. Should be instantiated at beginning of script, and method `connect()` should be called immediately after. `disconnect()` ends connection. * `RobotConnection.set_tire_torque(tire_name, torque)`: sets torque of tire `tire_name` to `torque`. Current tire names are "BackLeft", "BackRight", "FrontLeft", and "FrontRight." * `RobotConnection.set_tire_steering(tire_name, bering)`: sets tire `tire_name` to `bering`. All angles/berings are clockwise off of vertical (unity's coordinate system is left-handed). * `RobotConnection.sensors`: Dictionary/Hashtable containing information about the state of the robot. * Vectors are stored as dictionaries with keys `"x"`, `"y"`, and `"z"`. * `sensors["gps"]`: Sensor containing position information of the robot. * `sensors["gps"]["position"]`: Vector containing current position of robot relative to starting point. * `sensors["gyroscope"]`: Sensor containing rotation information of the robot: * `sensors["gyroscope"]["right"]`: Unit vector pointing right RELATIVE to the robot. For example, if the robot was facing in the default direction, its right vector would be <1, 0, 0> because its right direction is east. If the robot turned 90 degees counterclockwise, its right vector would be <0, 0, 1>. If the robot was facing a bering of 45 degrees and was climbing a 20 degree grade, its right vector would be / sqrt(cos(45)^2 + sin(20)^2 + sin(45)^2). * `sensors["gyroscope"]["up"]`: Unit vector pointing up RELATIVE to the robot. Same idea as before. * `sensors["gyroscope"]["forward"]`: Unit vector pointing up RELATIVE to the robot. Same idea as before. * `sensors["lidar"]["distanceArray"]`: Array containing distance to any object at 1 degree increments. `state_dict["lidar"]["distanceArray"][0]` would describe how many meters of clearance the robot has in front of itself, `state_dict["lidar"]["distanceArray"][90]` would describe its clearance to the right, and so on. If the robot has more than 100 meters of clearance in a particular direction, the value will capped at 100. In future updates, lidar upgrades might include an increase in range or density for in-game currency. Vertical FOV will be coming soon. * `sensors["radar"]["pings"]`: array of vectors representing opponent locations * `sensors["altimeter"]["altitude"]`: distance to ground in world space (i.e. NOT normal to robot) %prep %autosetup -n awconnection-0.3.5.1 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-awconnection -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Wed May 31 2023 Python_Bot - 0.3.5.1-1 - Package Spec generated