jsk-ros-pkg / jsk_model_tools

JSK model utilities
https://github.com/jsk-ros-pkg/jsk_model_tools
BSD 3-Clause "New" or "Revised" License
6 stars 29 forks source link

[eusurdf] add hooks for setting environment variables for gazebo #132

Closed furushchev closed 9 years ago

k-okada commented 9 years ago

you can use gazebo_media_path option of export tag.

http://answers.gazebosim.org/question/7805/is-it-possible-to-add-custom-texture-file/

furushchev commented 9 years ago

@k-okada hmm, I don't know it's right way, but I think it does not work.

package.xml In jsk_pr2_startup (which contains pr2_gazebo.launch):

  <export>
    <rqt_gui plugin="${prefix}/plugin.xml"/>
    <gazebo_ros
        gazebo_media_path="$(rospack find eusurdf)"
        gazebo_model_path="$(rospack find eusurdf)/models" />
  </export>

and checked:

$ rospack export --lang=gazebo_ros --attrib=gazebo_media_path jsk_pr2_startup
/home/furushchev/ros/hydro/src/jsk-ros-pkg/jsk_model_tools/eusurdf

but when I executed:

roslaunch jsk_pr2_startup pr2_gazebo.launch world:=`rospack find eusurdf`/worlds/room610.world

gazebo could not resolve model paths.

As far as I searched source code, available attributes are gazebo_media_path, plugin_path, gazebo_model_path: https://github.com/ros-simulation/gazebo_ros_pkgs/blob/hydro-devel/gazebo_ros/src/gazebo_ros_paths_plugin.cpp#L60-L97 but it seems not to be enabled. Also there is no way to set GAZEBO_RESOURCE_PATH with package.xml So we need env-hooks anyway.

k-okada commented 9 years ago

use ${prefix}, package.xml is not shell script so you can not use $(rospack find...)

https://github.com/tork-a/hakuto/blob/master/tetris_gazebo/package.xml may help you to understand

◉ Kei Okada

On Thu, Jul 30, 2015 at 7:56 PM, Furushchev notifications@github.com wrote:

@k-okada https://github.com/k-okada hmm, I don't know it's right way, but I think it does not work.

package.xml In jsk_pr2_startup (which contains pr2_gazebo.launch):

and checked:

$ rospack export --lang=gazebo_ros --attrib=gazebo_media_path jsk_pr2_startup /home/furushchev/ros/hydro/src/jsk-ros-pkg/jsk_model_tools/eusurdf

but when I executed:

roslaunch jsk_pr2_startup pr2_gazebo.launch world:=rospack find eusurdf/worlds/room610.world

gazebo could not resolve model paths.

As far as I searched source code, available attributes are gazebo_media_path, plugin_path, gazebo_model_path:

https://github.com/ros-simulation/gazebo_ros_pkgs/blob/hydro-devel/gazebo_ros/src/gazebo_ros_paths_plugin.cpp#L60-L97 but it seems not to be enabled. Also there is no way to set GAZEBO_RESOURCE_PATH with package.xml So we need env-hooks anyway.

— Reply to this email directly or view it on GitHub https://github.com/jsk-ros-pkg/jsk_model_tools/pull/132#issuecomment-126272863 .

furushchev commented 9 years ago

Yes, but eusurdf is in different repo from jsk_pr2_startup. and I don't know how to use prefix of different pkgs.As I checked source, at tag, we can use shell script https://github.com/ros/rospack/blob/indigo-devel/src/rospack.cpp#L2138

Outlook から送信されました

On Thu, Jul 30, 2015 at 4:05 AM -0700, "Kei Okada" notifications@github.com wrote:

use ${prefix}, package.xml is not shell script so you can not use $(rospack

find...)

https://github.com/tork-a/hakuto/blob/master/tetris_gazebo/package.xml may

help you to understand

◉ Kei Okada

On Thu, Jul 30, 2015 at 7:56 PM, Furushchev notifications@github.com

wrote:

@k-okada https://github.com/k-okada hmm, I don't know it's right way,

but I think it does not work.

package.xml In jsk_pr2_startup (which contains pr2_gazebo.launch):

``` ```

and checked:

$ rospack export --lang=gazebo_ros --attrib=gazebo_media_path jsk_pr2_startup

/home/furushchev/ros/hydro/src/jsk-ros-pkg/jsk_model_tools/eusurdf

but when I executed:

roslaunch jsk_pr2_startup pr2_gazebo.launch world:=rospack find eusurdf/worlds/room610.world

gazebo could not resolve model paths.

As far as I searched source code, available attributes are

gazebo_media_path, plugin_path, gazebo_model_path:

https://github.com/ros-simulation/gazebo_ros_pkgs/blob/hydro-devel/gazebo_ros/src/gazebo_ros_paths_plugin.cpp#L60-L97

but it seems not to be enabled.

Also there is no way to set GAZEBO_RESOURCE_PATH with package.xml

So we need env-hooks anyway.

Reply to this email directly or view it on GitHub

https://github.com/jsk-ros-pkg/jsk_model_tools/pull/132#issuecomment-126272863

.

— Reply to this email directly or view it on GitHub.

k-okada commented 9 years ago

export is export, so if your package depends other package with export, then you can use that information

◉ Kei Okada

On Thu, Jul 30, 2015 at 8:13 PM, Furushchev notifications@github.com wrote:

Yes, but eusurdf is in different repo from jsk_pr2_startup. and I don't know how to use prefix of different pkgs.As I checked source, at tag, we can use shell script https://github.com/ros/rospack/blob/indigo-devel/src/rospack.cpp#L2138

Outlook から送信されました

On Thu, Jul 30, 2015 at 4:05 AM -0700, "Kei Okada" < notifications@github.com> wrote:

use ${prefix}, package.xml is not shell script so you can not use $(rospack

find...)

https://github.com/tork-a/hakuto/blob/master/tetris_gazebo/package.xml may

help you to understand

◉ Kei Okada

On Thu, Jul 30, 2015 at 7:56 PM, Furushchev notifications@github.com

wrote:

@k-okada https://github.com/k-okada hmm, I don't know it's right way,

but I think it does not work.

package.xml In jsk_pr2_startup (which contains pr2_gazebo.launch):

and checked:

$ rospack export --lang=gazebo_ros --attrib=gazebo_media_path jsk_pr2_startup

/home/furushchev/ros/hydro/src/jsk-ros-pkg/jsk_model_tools/eusurdf

but when I executed:

roslaunch jsk_pr2_startup pr2_gazebo.launch world:=rospack find eusurdf/worlds/room610.world

gazebo could not resolve model paths.

As far as I searched source code, available attributes are

gazebo_media_path, plugin_path, gazebo_model_path:

https://github.com/ros-simulation/gazebo_ros_pkgs/blob/hydro-devel/gazebo_ros/src/gazebo_ros_paths_plugin.cpp#L60-L97

but it seems not to be enabled.

Also there is no way to set GAZEBO_RESOURCE_PATH with package.xml

So we need env-hooks anyway.

Reply to this email directly or view it on GitHub

< https://github.com/jsk-ros-pkg/jsk_model_tools/pull/132#issuecomment-126272863

.

— Reply to this email directly or view it on GitHub.

— Reply to this email directly or view it on GitHub https://github.com/jsk-ros-pkg/jsk_model_tools/pull/132#issuecomment-126276076 .

furushchev commented 9 years ago

please merge after #134