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

adding mesh reference for shop setup #347

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

sasabot
Copy link
Collaborator

@sasabot sasabot commented May 20, 2018

current shop setup copies meshes from robot part directory.
however, when we want to create parts with different urdf settings (same meshes but with different settings such as velocity, ranges, or reduced joints) this is inconvenient for four reasons.

one, we are duplicating tons of .dae files, which is a waste of memory.
two, we have to change all the model paths in the urdf/.xacro.
three, we cannot distinguish whether there is actually a diff in .dae or if it is just a copy.
four, when there is a fix in the .dae, we have to recopy it for all directories that has duplicated the mesh.

this pull request allows you to add a meshes.txt under meshes if you are using the same meshes from an existing robot part directory.
by writingaero_shop/typeF_upperbody in meshes/meshes.txt, the script will copy meshes from typeF_upperbody.

downsides. the script does not handle recursive reference. so if typeF_upperbody had a meshes.txt instead of .dae files, the setup will fail.

@YoheiKakiuchi
Copy link
Collaborator

I don't agree with adding script incompatible with ros manner.

I don't understand your points.
If almost all using meshs is same, it is the same robot type.

@sasabot
Copy link
Collaborator Author

sasabot commented May 21, 2018

this has nothing to do with robot type. only the parts. and the parts is not a standard ros thing anyway.
after running the script, aero_description should look like a standard ros robot description directory with directory meshes.

BUT the problem is, this meshes directory can only be created from meshes that are under the part directory defined in robot.cfg. (what do we do when we want to use meshes from part A but joint limits (different from standard partA) described in part B? sure, we could create partB with the same mesh directory as part A and then edit .xacro to look for aero_description/meshes/partB instead of aero_description/meshes/partA. but this is kind of awkward and is duplicating files)

ようするに、スクリプトでメッシュを取ってくるけど、この取ってくる方法を拡張しません? ということです。

可動域が微妙に違うマイナーチェンジ版のパーツディレクトリを作りたいときに、現状かなり煩わしい手順になってしまっているのが問題で、わざわざコピー後のディレクトリ構成に合わせた編集をxacroに加えないといけない。しかも、同じモデルファイルを大量にコピってくるのは効率悪くない? これはさすがに「マイナーチェンジ版だからメッシュはこっから取ってきて」という宣言でよくないか? という話です。

こっちの方が編集が少なくて済むし、同じファイルを量産せずに済む。(手の互換性の関係で分けのわからないマイナーチェンジ版が必要というそもそもな都合はさておき)実際過去にも手首可動域は(全く同じモデルで)変わっているので、この拡張はあってもいいんじゃないかという気がしています。

@sasabot
Copy link
Collaborator Author

sasabot commented May 21, 2018

added japanese in comments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants