外部形状の視覚属性

お世話になってます。
BodyファイルのResourceノードで外部形状データを記述する際に,appearance属性で視覚属性を追加することは可能でしょうか?
例)
type: Resource
uri: “hoge.stl”
appearance: { material: {transparency: 0.5} }
CADで出力した形状を後付けで見た目を変えるのに便利だと思うのですが。

可能です。

Choreonoid本体添付のサンプルモデルでもこれを行っているものがありますので、そちらも参考になるかと思います。例えば share/model/GR001/GR001.body でこれを行っています。以下にその一部を抜粋します。

appearances:
  - &BLUE
    material:
      diffuseColor: [ 0.3, 0.3, 0.8 ]
      specularColor: [ 0.2, 0.2, 0.t ]
      shininess: 0.2
  ...

links:
  -
    name: WAIST
    jointType: free
    translation: [ 0, 0, 0.1605 ]
    centerOfMass: [ 0.014070775509439625, -0.0010642631392533723, 0.018082091556018958 ]
    mass: 0.16852
    inertia: [
      7.5307790665527126e-05, -1.7122423225418951e-06, -7.9600885666462265e-06,
      -1.7122423225418951e-06, 9.8462174358634891e-05, 1.6233365559722733e-06,
      -7.9600885666462265e-06, 1.6233365559722733e-06, 0.00012629712705606254 ]
    elements:
      Shape:
        geometry: { type: Resource, uri: "parts/WAIST.stl" }
        appearance: *BLUE
...

このように、ShapeノードのgeometryのところにtypeをResourceと指定することで、uriにメッシュファイルを指定できます。この場合はResourceで取り込まれるメッシュデータがジオメトリのみに適用となります。そして任意のappearanceを設定できます。ここではYAMLのアンカー機能を利用してappearanceについて使い回しをしていますが、もちろんShapeノードのところに直接記述してもOKです。

geometryのtypeにResouceを指定できるのですね。
やってみます。ありがとうございます!