robocup-ssl / grsim Goto Github PK
View Code? Open in Web Editor NEWRoboCup Small Size Robot Soccer Simulator
Home Page: https://ssl.robocup.org/league-software/
License: Other
RoboCup Small Size Robot Soccer Simulator
Home Page: https://ssl.robocup.org/league-software/
License: Other
right now, the number of robots that exist in the field is defined in source code and it should be rebuilt every time you want to change the number, Although there's no need to change the number of robots while you can turn them off still changing them inside vartypes make it a lot easier.
as mix team is a technical challenge in Robocup, we can develop grSim in order to simulate mix-team
Hello, I would like to ask a few things:
is it possible to import a 3d model for the robots?
How does the weight gets distributed into the robot?
I noticed, that there are two orange spheres inside the robots, what are they for?
as ssl-vision add 16 robots pattern #93 ... grsim should add 4 more patterns and also the formation of robots should be changed for 16 robots in both divisions.
This is a follow-up to #59.
We are trying to update our software to work with the new field sizes and goal area format (which correspond with grSim, since ssl-vision still hasn't updated), and I noticed that the last checkbox of #59 was not completed. Is there an easy way to switch between divisions right now, I couldn't find any.
Right, now, the field seems to be incorrect for both divisions going off of this diagram for quad and this diagram for double. The goal zone seems to match the quad size goal zone (2.4 by 1.2), but the actual field size seems to match the double field size (6 by 9).
If possible, could we have a switch to easily switch between the leagues? I would be happy to help with updating the config and adding the switch if you would like, but I wanted to get some feedback/guidance first.
There is world=VarXML::read(world,(QDir::homePath() + QString("/.grsim.xml")).toStdString());
line in configwidget.cpp line 130.
Because of that line, BallMass becomes 0 and the program gives ODE INTERNAL ERROR 1: assertion "dMassCheck(mass)" failed in dBodySetMass()
error.
What is grsim.xml? and is that line really necessary?
Describe the bug
When increase robot count from configuration widget, increased robot are placed to (x, y) = (0, 0) as following gif animation.
This is happen because RobotFomation::setAll()
only copies new robot position 0 ~ Robots_Count()
, and setAll()
is only called when RobotFomation
object is created.
To Reproduce
Steps to reproduce the behavior:
restartSimulator()
Expected behavior
Animation that describes expected behavior follows.
Desktop (please complete the following information):
Additional context
I'm submitting this to ask if it is a bug or feature (written in pull request template)
I've already found solution for this (as I attached image).
In SSLWorld.cpp the geometry is generated. The centre of each line is corrected by amount of LineThickness, however, in SSL-vision this does not happen. Not sure which one to take, but atleast both GrSim and SSL-vision should be consistent with each other.
Vartypes was recently updated to version 0.8 and it breaks the compilation of grSim.
The problem is they have defined a VarPtr type, which is a typedef from std::tr1::shared_ptrVarTypes::VarType. As this project uses the std::shared_ptrVarTypes::VarType, this breaks compilation.
The solution I've found is to manually change in configwidget.cpp and .h the 'shared_ptr' for std::tr1::shared_ptr, this made it compile correctly again.
I'd like to know if this is a fine change or if it breaks something during runtime.
Hi everyone,
There is any team with 3 wheels?
I want to implement a strategy, and control system for this kind of robot (3 wheels)
As rules represented new fields for SSL game, Grsim field & message should changes too for more compatibility.
The real field uses two cameras. For realism, grSim should simulate two cameras, allowing testing of:
save current static formation of robots in file and load it by a service call
On my system (Archlinux, running protobuf 3.6.1 installed from the official repo) build fails with error messages such as
/home/george/grsim/grSim/build/messages_robocup_ssl_detection.pb.h:285:10: error: ‘constexpr’ does not name a type; did you mean ‘ucontext_t’?
static constexpr int kIndexInFileMessages =
which really look like a c++ std version problem.
These methods errors come from the files automatically generated by protobuf.
Changin CMakeLists.txt, the lines
# set explicitly the c++ standard to use
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++03")
to
# set explicitly the c++ standard to use
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
does indeed solve the problem. With those changes everything works fine, including the demo client in qt.
Maybe this change should be conditional up on some proprety of protobuf (version maybe), but I couldn't figure out why the generated code is c++11.
Since c++11 is widely supported and backwards compatible, would it be fine to change the line to simply c++ 11?
I need to know how to use this simulator, such as how to capture and save the images in the football game, so as to design and study the football vision system.
For grSim to compile on Debian, the protobuf-compiler
package is required to be installed. Please document it in the INSTALL instructions.
This is the official git repo: https://github.com/szi/vartypes
hello
I'm looking for a part of gr-sim software that sends packets or data to lan.
Please, replace the parts of the code
Thank you
Does this simulator directly simulatethe 3D model ?
How could I get the raw imgs with distortion from two global cameras?
On this basis, I want to study distortion correction and camera calibration.
Related: #23
At the first start, when I made files there were no problems with ./grsim.
But at the second start, I caught
crafter76@crafter76-dexp:~/grsim_ws/grSim/bin$ ./grsim
ODE Message 2: mass must be > 0 in dMassCheck() [mass.cpp:49]
ODE Message 2: mass must be > 0 in dMassCheck() [mass.cpp:49]
ODE INTERNAL ERROR 1: assertion "dMassCheck(mass)" failed in dBodySetMass() [ode.cpp:485]
And nothing have helped me to fix this error.
now, VarTypes repository was moved to github.
please update INSTALL.md as VarTypes instruction to the new github one.
https://github.com/roboime/vartypes.
old repository is unable to download.
Read the wiki page I created regarding standards, then
@mani-monaj
I think it's good idea that we have some chat about how to solve issues on Gitter if you agree on this, I will setup Gitter for grSim
Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
when there is more than 1 robot fell down. its hard to click on everyone of them and click reset.
Describe the solution you'd like
A clear and concise description of what you want to happen.
you can add a reset all button.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.
I am having a little problem, but I am not sure if it's an issue. The simulator sends 4 packages (one for each camera), and I'm receiving them based on the client example of the ssl-vision repository. I am checking the time elapsed by the client.receive(packet) function, in order to check if it's sending 4 packages 60 times per second, but I get the 1/60 time in the second package (corresponding to the CAM1). And I get the first cam (CAM0) of the next frame with the CAM1, 2, and 3 of the previous frame, so I think it represents a delay of 1 frame for CAMS 1 2 & 3.
This is the log.
-----Received Wrapper Packet---------------------------------------------
-[Detection Data]-
Camera ID=1 FRAME=100014 T_CAPTURE=1667.2640
Wait time -16.000ms
-----Received Wrapper Packet---------------------------------------------
-[Detection Data]-
Camera ID=2 FRAME=100014 T_CAPTURE=1667.2640
Wait time -0.054ms
-----Received Wrapper Packet---------------------------------------------
-[Detection Data]-
Camera ID=3 FRAME=100014 T_CAPTURE=1667.2640
Wait time -0.041ms
-----Received Wrapper Packet---------------------------------------------
-[Detection Data]-
Camera ID=0 FRAME=100015 T_CAPTURE=1667.2790
Wait time -0.027ms
-----Received Wrapper Packet---------------------------------------------
-[Detection Data]-
Camera ID=1 FRAME=100015 T_CAPTURE=1667.2790
Wait time -15.803ms
-----Received Wrapper Packet---------------------------------------------
-[Detection Data]-
Camera ID=2 FRAME=100015 T_CAPTURE=1667.2800
Wait time -0.037ms
-----Received Wrapper Packet---------------------------------------------
-[Detection Data]-
Camera ID=3 FRAME=100015 T_CAPTURE=1667.2800
Wait time -0.012ms
-----Received Wrapper Packet---------------------------------------------
-[Detection Data]-
Camera ID=0 FRAME=100016 T_CAPTURE=1667.2960
Wait time -0.041ms
-----Received Wrapper Packet---------------------------------------------
-[Detection Data]-
Camera ID=1 FRAME=100016 T_CAPTURE=1667.2960
Wait time -18.603ms
-----Received Wrapper Packet---------------------------------------------
-[Detection Data]-
Camera ID=2 FRAME=100016 T_CAPTURE=1667.2960
Wait time -0.022ms
-----Received Wrapper Packet---------------------------------------------
-[Detection Data]-
Camera ID=3 FRAME=100016 T_CAPTURE=1667.2960
Wait time -0.040ms
-----Received Wrapper Packet---------------------------------------------
-[Detection Data]-
Camera ID=0 FRAME=100017 T_CAPTURE=1667.3140
Wait time -0.013ms
/usr/lib/libode.a(collision_libccd.o):在函数‘ccdCollide(dxGeom*, dxGeom*, int, dContactGeom*, int, void*, void (*)(void const*, _ccd_vec3_t const*, _ccd_vec3_t*), void (*)(void const*, _ccd_vec3_t*), void*, void (*)(void const*, _ccd_vec3_t const*, _ccd_vec3_t*), void (*)(void const*, _ccd_vec3_t*)) [clone .isra.2] [clone .part.3] [clone .constprop.7]’中:
/home/henryw/ode-0.16/ode/src/collision_libccd.cpp:322:对‘ccdFirstDirDefault’未定义的引用
/home/henryw/ode-0.16/ode/src/collision_libccd.cpp:339:对‘ccdMPRPenetration’未定义的引用
/home/henryw/ode-0.16/ode/src/collision_libccd.cpp:332:对‘ccdMPRIntersect’未定义的引用
hello, I just install all these dependences, but there are some errors when I "make" grSim, do I get a wrong ode version ?
Describe the bug
Size of ID selection combo box in "Current Robot" widget is defined when RobotWidget
object is created, and not updated even robot count is updated.
So, we can select a robot does not exists on field and it causes segmentation fault.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Size of Robot id selector shrinks to fit to robot count.
e.g. if robots count is 10, maximum id that shown in selector comboBox should be 9
Desktop (please complete the following information):
Additional context
Same as #115 . I have solution for this. If accepted (maintainer allows), I can submit pull request soon.
Hi guys! I'm trying to use grSim to train some Reinforcement Learning algorithms.
The whole environment is already set but I'm stucked with the simulation time problem.
grSim runs in real time and I want it to be something like 30+ times faster.
Is there a way to do this? Have someone already tried?
Thank you in advance!
I got this error, then I run grsim in bin folder.
XML Parsing error inside file '/home/ozgur/.grsim.xml'.
Error: File not found
At line 0, column 0.
ODE Message 2: mass must be > 0 in dMassCheck() File mass.cpp Line 49
ODE Message 2: mass must be > 0 in dMassCheck() File mass.cpp Line 49
ODE INTERNAL ERROR 1: assertion "dMassCheck(mass)" failed in dBodySetMass() [ode.cpp]
Aborted (core dumped)
Right now it takes about 30~50 min for building in OSX because of brew package installation.
it can be cached due to reducing this time.
here's a related post:
https://stackoverflow.com/questions/39930171/cache-brew-builds-with-travis-ci
Using Qt Style Comment to Doxygenize grSim.
Describe the bug
On my 15in 2018 macbook pro, this is what grSim's opengl window is not scaling up.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
The robot window should be full screen.
Screenshots
Desktop (please complete the following information):
Related to: #35
Describe the bug
I typed "cmake .." as what is instructed by the INSTALL.md file to compile,then err occured: "Could NOT find ODE" , the platform is Ubuntu 18.04 LTS in vmware workstation 15 pro
To Reproduce
Steps to reproduce the behavior:
$ cd /path/to/grsim_ws
$ git clone https://github.com/RoboCup-SSL/grSim.git
$ cd grSim
$ mkdir build
$ cd build
$ cmake ..
Expected behavior
compile successfully
Screenshots
Found OpenGL: /usr/lib/x86_64-linux-gnu/libOpenGL.so
CMake Error at /usr/share/cmake-3.10/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
Could NOT find ODE (missing: ODE_LIBRARIES ODE_PRECISION) (found version
"")
Call Stack (most recent call first):
/usr/share/cmake-3.10/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAILURE_MESSAGE)
cmake/modules/FindODE.cmake:32 (find_package_handle_standard_args)
CMakeLists.txt:72 (find_package)
-- Configuring incomplete, errors occurred!
See also "/home/drone/Desktop/grSim/build/CMakeFiles/CMakeOutput.log".
Desktop (please complete the following information):
Additional context
Currently in the collision space of ODE all objects are added to the global collision space. Since there is no collision space per robot ODE is performing collision checks between every seperate object. However, making a collision space per robot and using dSpaceCollide2 (see http://ode.org/wiki/index.php?title=Manual#Collision_detection_2 ) would make a lot more sense, since then we would only check if two robots collide if they are close enough to do so, without checking the individual pairs of objects between the two robots. Since most situations of gameplay have limited collisions between robots, this could be a significant speed up in the collision checking of grSim (Ignoring static objects; factor 7x*(7x-1)/(x*(x-1)), where x is the amount of robots. This works out to roughly ~49 for 22 robots). Speedup in the collision checking could possibly be even more due to the possibility of usage of a different data structure for the space.
As brew removed qt4 package and i can't find any other repo that contain it. we need another way to install qt4 inside travis.
Since I first installed grsim following all the instructions, I keep receiving this message when initialize it:
"Sending UDP datagram failed (maybe too large?). Size was: ... "
and I cannot receive packet data from vision port. How can I fix this? This problem seems to be on grSim`s code, but I am not sure.
Firstly i wanted to configure the spinner value such that the robot can rotate around its axis while spinning the ball.. but when I do so the robot leaves the ball .. then I tried to change the torque values which apparently solved the problem but when the robot reaches the ball it turns on the spinner the ball slips and moves forward but once I place the ball in-front of the spinner then it grips it and I can rotate the robot on its axis while gripping it but i cant simulate like that so kindly fix this issue or give some details on the torque values of the spinner so that I might configure it properly.
Secondly there are teams which use different spin values at run-time to dribble the ball, reverse pass etc..so Its a suggestion that instead of the Spin to be Boolean it should be a float/integer so that one can dribble the ball at whatever speed one wants on run-time during the game.
Thirdly There is no description of the config files like
-There are no units defined in any config file
-It is not defined that which wheels are wheel1, wheel2 , wheel3 and wheel4.
-body mass, wheel mass, kicker mass : is it mass or weight is it in kilograms? or is it in newtons ?
-a document with diagrams of each config value will be appreciated although some are understandable like center from kicker, radius etc.. but roller torque factor and roller perpendicular torque factor ..etc are not clear enough...
thank you :)
[x] dependencies installed
[x] osx-fix branch of lordhippo's vartype repo built and installed
[ ] compile grSim
cmake ..
bryant@Bryants-MacBook-Pro:~/dev/robocup/grSim/build> cmake ..
-- The C compiler identification is AppleClang 9.0.0.9000039
-- The CXX compiler identification is AppleClang 9.0.0.9000039
-- Check for working C compiler: /Library/Developer/CommandLineTools/usr/bin/cc
-- Check for working C compiler: /Library/Developer/CommandLineTools/usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /Library/Developer/CommandLineTools/usr/bin/c++
-- Check for working CXX compiler: /Library/Developer/CommandLineTools/usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found OpenGL: /System/Library/Frameworks/OpenGL.framework
-- Looking for Q_WS_X11
-- Looking for Q_WS_X11 - not found
-- Looking for Q_WS_WIN
-- Looking for Q_WS_WIN - not found
-- Looking for Q_WS_QWS
-- Looking for Q_WS_QWS - not found
-- Looking for Q_WS_MAC
-- Looking for Q_WS_MAC - found
-- Looking for QT_MAC_USE_COCOA
-- Looking for QT_MAC_USE_COCOA - found
-- Found Qt4: /usr/local/bin/qmake (found version "4.8.7")
-- Found ODE: /usr/local/include
-- Found VARTYPES: /usr/local/include
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - found
-- Found Threads: TRUE
-- Found Protobuf: /usr/local/lib/libprotobuf.dylib (found version "3.5.1")
-- Configuring done
CMake Warning (dev) in CMakeLists.txt:
Policy CMP0071 is not set: Let AUTOMOC and AUTOUIC process GENERATED files.
Run "cmake --help-policy CMP0071" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
For compatibility, CMake is excluding the GENERATED source file(s):
"/Users/bryant/dev/robocup/grSim/build/messages_robocup_ssl_detection.pb.h"
"/Users/bryant/dev/robocup/grSim/build/messages_robocup_ssl_geometry.pb.h"
"/Users/bryant/dev/robocup/grSim/build/messages_robocup_ssl_wrapper.pb.h"
"/Users/bryant/dev/robocup/grSim/build/messages_robocup_ssl_refbox_log.pb.h"
"/Users/bryant/dev/robocup/grSim/build/grSim_Replacement.pb.h"
"/Users/bryant/dev/robocup/grSim/build/grSim_Commands.pb.h"
"/Users/bryant/dev/robocup/grSim/build/grSim_Packet.pb.h"
"/Users/bryant/dev/robocup/grSim/build/messages_robocup_ssl_detection.pb.cc"
"/Users/bryant/dev/robocup/grSim/build/messages_robocup_ssl_geometry.pb.cc"
"/Users/bryant/dev/robocup/grSim/build/messages_robocup_ssl_wrapper.pb.cc"
"/Users/bryant/dev/robocup/grSim/build/messages_robocup_ssl_refbox_log.pb.cc"
"/Users/bryant/dev/robocup/grSim/build/grSim_Replacement.pb.cc"
"/Users/bryant/dev/robocup/grSim/build/grSim_Commands.pb.cc"
"/Users/bryant/dev/robocup/grSim/build/grSim_Packet.pb.cc"
"/Users/bryant/dev/robocup/grSim/build/qrc_textures.cxx"
from processing by AUTOMOC. If any of the files should be processed, set
CMP0071 to NEW. If any of the files should not be processed, explicitly
exclude them by setting the source file property SKIP_AUTOMOC:
set_property(SOURCE file.h PROPERTY SKIP_AUTOMOC ON)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) in clients/qt/CMakeLists.txt:
Policy CMP0071 is not set: Let AUTOMOC and AUTOUIC process GENERATED files.
Run "cmake --help-policy CMP0071" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
For compatibility, CMake is excluding the GENERATED source file(s):
"/Users/bryant/dev/robocup/grSim/build/clients/qt/grSim_Replacement.pb.h"
"/Users/bryant/dev/robocup/grSim/build/clients/qt/grSim_Commands.pb.h"
"/Users/bryant/dev/robocup/grSim/build/clients/qt/grSim_Packet.pb.h"
"/Users/bryant/dev/robocup/grSim/build/clients/qt/grSim_Replacement.pb.cc"
"/Users/bryant/dev/robocup/grSim/build/clients/qt/grSim_Commands.pb.cc"
"/Users/bryant/dev/robocup/grSim/build/clients/qt/grSim_Packet.pb.cc"
from processing by AUTOMOC. If any of the files should be processed, set
CMP0071 to NEW. If any of the files should not be processed, explicitly
exclude them by setting the source file property SKIP_AUTOMOC:
set_property(SOURCE file.h PROPERTY SKIP_AUTOMOC ON)
This warning is for project developers. Use -Wno-dev to suppress it.
-- Generating done
-- Build files have been written to: /Users/bryant/dev/robocup/grSim/build
make
bryant@Bryants-MacBook-Pro:~/dev/robocup/grSim/build> make
Scanning dependencies of target grSim_autogen
[ 1%] Automatic MOC for target grSim
[ 1%] Built target grSim_autogen
[ 3%] Generating qrc_textures.cxx
[ 5%] Running C++ protocol buffer compiler on src/proto/messages_robocup_ssl_detection.proto
[libprotobuf WARNING google/protobuf/compiler/parser.cc:546] No syntax specified for the proto file: messages_robocup_ssl_detection.proto. Please use 'syntax = "proto2";' or 'syntax = "proto3";' to specify a syntax version. (Defaulted to proto2 syntax.)
[ 7%] Running C++ protocol buffer compiler on src/proto/messages_robocup_ssl_geometry.proto
[libprotobuf WARNING google/protobuf/compiler/parser.cc:546] No syntax specified for the proto file: messages_robocup_ssl_geometry.proto. Please use 'syntax = "proto2";' or 'syntax = "proto3";' to specify a syntax version. (Defaulted to proto2 syntax.)
[ 9%] Running C++ protocol buffer compiler on src/proto/messages_robocup_ssl_wrapper.proto
[libprotobuf WARNING google/protobuf/compiler/parser.cc:546] No syntax specified for the proto file: messages_robocup_ssl_wrapper.proto. Please use 'syntax = "proto2";' or 'syntax = "proto3";' to specify a syntax version. (Defaulted to proto2 syntax.)
[libprotobuf WARNING google/protobuf/compiler/parser.cc:546] No syntax specified for the proto file: messages_robocup_ssl_detection.proto. Please use 'syntax = "proto2";' or 'syntax = "proto3";' to specify a syntax version. (Defaulted to proto2 syntax.)
[libprotobuf WARNING google/protobuf/compiler/parser.cc:546] No syntax specified for the proto file: messages_robocup_ssl_geometry.proto. Please use 'syntax = "proto2";' or 'syntax = "proto3";' to specify a syntax version. (Defaulted to proto2 syntax.)
[ 11%] Running C++ protocol buffer compiler on src/proto/messages_robocup_ssl_refbox_log.proto
[libprotobuf WARNING google/protobuf/compiler/parser.cc:546] No syntax specified for the proto file: messages_robocup_ssl_refbox_log.proto. Please use 'syntax = "proto2";' or 'syntax = "proto3";' to specify a syntax version. (Defaulted to proto2 syntax.)
[libprotobuf WARNING google/protobuf/compiler/parser.cc:546] No syntax specified for the proto file: messages_robocup_ssl_detection.proto. Please use 'syntax = "proto2";' or 'syntax = "proto3";' to specify a syntax version. (Defaulted to proto2 syntax.)
[ 13%] Running C++ protocol buffer compiler on src/proto/grSim_Replacement.proto
[libprotobuf WARNING google/protobuf/compiler/parser.cc:546] No syntax specified for the proto file: grSim_Replacement.proto. Please use 'syntax = "proto2";' or 'syntax = "proto3";' to specify a syntax version. (Defaulted to proto2 syntax.)
[ 15%] Running C++ protocol buffer compiler on src/proto/grSim_Commands.proto
[libprotobuf WARNING google/protobuf/compiler/parser.cc:546] No syntax specified for the proto file: grSim_Commands.proto. Please use 'syntax = "proto2";' or 'syntax = "proto3";' to specify a syntax version. (Defaulted to proto2 syntax.)
[ 17%] Running C++ protocol buffer compiler on src/proto/grSim_Packet.proto
[libprotobuf WARNING google/protobuf/compiler/parser.cc:546] No syntax specified for the proto file: grSim_Packet.proto. Please use 'syntax = "proto2";' or 'syntax = "proto3";' to specify a syntax version. (Defaulted to proto2 syntax.)
[libprotobuf WARNING google/protobuf/compiler/parser.cc:546] No syntax specified for the proto file: grSim_Commands.proto. Please use 'syntax = "proto2";' or 'syntax = "proto3";' to specify a syntax version. (Defaulted to proto2 syntax.)
[libprotobuf WARNING google/protobuf/compiler/parser.cc:546] No syntax specified for the proto file: grSim_Replacement.proto. Please use 'syntax = "proto2";' or 'syntax = "proto3";' to specify a syntax version. (Defaulted to proto2 syntax.)
Scanning dependencies of target grSim
[ 19%] Building CXX object CMakeFiles/grSim.dir/messages_robocup_ssl_detection.pb.cc.o
[ 21%] Building CXX object CMakeFiles/grSim.dir/messages_robocup_ssl_geometry.pb.cc.o
[ 23%] Building CXX object CMakeFiles/grSim.dir/messages_robocup_ssl_wrapper.pb.cc.o
[ 25%] Building CXX object CMakeFiles/grSim.dir/messages_robocup_ssl_refbox_log.pb.cc.o
[ 27%] Building CXX object CMakeFiles/grSim.dir/grSim_Replacement.pb.cc.o
[ 29%] Building CXX object CMakeFiles/grSim.dir/grSim_Commands.pb.cc.o
[ 31%] Building CXX object CMakeFiles/grSim.dir/grSim_Packet.pb.cc.o
[ 33%] Building CXX object CMakeFiles/grSim.dir/qrc_textures.cxx.o
[ 35%] Building CXX object CMakeFiles/grSim.dir/src/main.cpp.o
[ 37%] Building CXX object CMakeFiles/grSim.dir/src/mainwindow.cpp.o
[ 39%] Building CXX object CMakeFiles/grSim.dir/src/glwidget.cpp.o
[ 41%] Building CXX object CMakeFiles/grSim.dir/src/graphics.cpp.o
[ 43%] Building CXX object CMakeFiles/grSim.dir/src/physics/pworld.cpp.o
[ 45%] Building CXX object CMakeFiles/grSim.dir/src/physics/pobject.cpp.o
[ 47%] Building CXX object CMakeFiles/grSim.dir/src/physics/pball.cpp.o
[ 49%] Building CXX object CMakeFiles/grSim.dir/src/physics/pground.cpp.o
[ 50%] Building CXX object CMakeFiles/grSim.dir/src/physics/pfixedbox.cpp.o
[ 52%] Building CXX object CMakeFiles/grSim.dir/src/physics/pcylinder.cpp.o
[ 54%] Building CXX object CMakeFiles/grSim.dir/src/physics/pbox.cpp.o
[ 56%] Building CXX object CMakeFiles/grSim.dir/src/physics/pray.cpp.o
[ 58%] Building CXX object CMakeFiles/grSim.dir/src/net/robocup_ssl_server.cpp.o
[ 60%] Building CXX object CMakeFiles/grSim.dir/src/net/robocup_ssl_client.cpp.o
[ 62%] Building CXX object CMakeFiles/grSim.dir/src/sslworld.cpp.o
[ 64%] Building CXX object CMakeFiles/grSim.dir/src/robot.cpp.o
[ 66%] Building CXX object CMakeFiles/grSim.dir/src/configwidget.cpp.o
[ 68%] Building CXX object CMakeFiles/grSim.dir/src/statuswidget.cpp.o
[ 70%] Building CXX object CMakeFiles/grSim.dir/src/logger.cpp.o
[ 72%] Building CXX object CMakeFiles/grSim.dir/src/robotwidget.cpp.o
[ 74%] Building CXX object CMakeFiles/grSim.dir/src/getpositionwidget.cpp.o
[ 76%] Building CXX object CMakeFiles/grSim.dir/grSim_autogen/mocs_compilation.cpp.o
[ 78%] Linking CXX executable ../bin/grSim.app/Contents/MacOS/grSim
Undefined symbols for architecture x86_64:
"_ccdFirstDirDefault", referenced from:
ccdCollide(dxGeom*, dxGeom*, int, dContactGeom*, int, void*, void (*)(void const*, _ccd_vec3_t const*, _ccd_vec3_t*), void (*)(void const*, _ccd_vec3_t*), void*, void (*)(void const*, _ccd_vec3_t const*, _ccd_vec3_t*), void (*)(void const*, _ccd_vec3_t*)) in libode.a(collision_libccd.o)
"_ccdMPRIntersect", referenced from:
ccdCollide(dxGeom*, dxGeom*, int, dContactGeom*, int, void*, void (*)(void const*, _ccd_vec3_t const*, _ccd_vec3_t*), void (*)(void const*, _ccd_vec3_t*), void*, void (*)(void const*, _ccd_vec3_t const*, _ccd_vec3_t*), void (*)(void const*, _ccd_vec3_t*)) in libode.a(collision_libccd.o)
"_ccdMPRPenetration", referenced from:
ccdCollide(dxGeom*, dxGeom*, int, dContactGeom*, int, void*, void (*)(void const*, _ccd_vec3_t const*, _ccd_vec3_t*), void (*)(void const*, _ccd_vec3_t*), void*, void (*)(void const*, _ccd_vec3_t const*, _ccd_vec3_t*), void (*)(void const*, _ccd_vec3_t*)) in libode.a(collision_libccd.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [../bin/grSim.app/Contents/MacOS/grSim] Error 1
make[1]: *** [CMakeFiles/grSim.dir/all] Error 2
make: *** [all] Error 2
==> Installing ode --with-double-precision
==> Using the sandbox
==> Downloading https://bitbucket.org/odedevs/ode/downloads/ode-0.14.tar.gz
==> Downloading from https://bbuseruploads.s3.amazonaws.com/63b3b85f-a69e-4101-a
Error: SHA256 mismatch
Expected: 1072fc98d9d00262a0d6136e7b9ff7f5d953bbdb23b646f426909d28c0b4f6db
Actual: a6e22c3713e656d4c8114415089f4aaa685e24fab3a8ad7f3ee54692e5e8d318
Archive: /Users/travis/Library/Caches/Homebrew/ode-0.14.tar.gz
To retry an incomplete download, remove the file above.
The command "if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install ode --with-double-precision ; fi" failed and exited with 1 during .
Your build has been stopped.```
Is your feature request related to a problem? Please describe.
RoboJackets soccer program allow's users to kick the simulated ball in a direction using the mouse. This requires being able to send grSim a command to change the ball velocity without changing the ball position.
Describe the solution you'd like
Change proto fields from required -> optional in grSim_BallReplacement
, and modify handling code to reuse old position/velocity if it is unspecified in the proto.
Describe alternatives you've considered
API users could wait for ball position to be returned in ssl vision packets, then change then use that old position with velocity information, but that strategy is a little complicated and might not handle cases like latency simulation very well.
Use travis for configure project on both macOS and linux.
separate grsim physic engine and message publisher from grsim GUI in to project and to run grsim headless and connect any GUI over network.
There are a lot of problems which came from the source building. May be the easist way is to build docker container to the project, isn't it?
overview
Some links in documentations seems to be old.
detail
Here is the know list :
[VarTypes Library](https://github.com/szi/vartypes)
[VarTypes Library](https://github.com/jpfeltracco/vartypes) forked from [Szi's Vartypes](https://github.com/szi/vartypes)
[Qt4 Development Libraries](https://www.qt.io) version 4.8+
[Qt5 Development Libraries](https://www.qt.io)
$ git clone https://github.com/mani-monaj/grSim.git
$ git clone https://github.com/robocup-ssl/grSim.git
P.S. I've wrote this believing INSTALL.md is correct (because it has recently updated)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.