From 4081701d92f76b4a2004c76001cab798e06d8b3d Mon Sep 17 00:00:00 2001 From: Louise Poubel Date: Tue, 15 Mar 2022 14:11:01 -0700 Subject: [PATCH 1/9] Portuguese Ledge world Signed-off-by: Louise Poubel --- .../worlds/portuguese_ledge.sdf | 347 ++++++++++++++++++ 1 file changed, 347 insertions(+) create mode 100644 lrauv_ignition_plugins/worlds/portuguese_ledge.sdf diff --git a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf new file mode 100644 index 00000000..80f93c1f --- /dev/null +++ b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf @@ -0,0 +1,347 @@ + + + + + + + + 0.0 1.0 1.0 + 0.0 0.7 0.8 + + false + + + + 0.02 + 0 + + + + + + + + + + 1025 + + + + + + + + + + + 2003080103_mb_l3_las.csv + + + + + /lrauv/init + + + + + + + + 3D View + false + docked + + + ogre + scene + 0.4 0.4 0.4 + 0.8 0.8 0.8 + + 0 6 6 0 0.5 -1.57 + + + + + + 0.1 + + 3000000 + + + + + + + floating + 5 + 5 + false + + + + + + + + + false + 5 + 5 + floating + false + + + + + + + + + false + 5 + 5 + floating + false + + + + + + + + + false + 5 + 5 + floating + false + + + + + + + + + false + 5 + 5 + floating + false + + false + + + + + + + + false + 5 + 5 + floating + false + + + + + + + + + false + 5 + 5 + floating + false + + + + + + + World control + false + false + 72 + 121 + 1 + + floating + + + + + + + true + true + true + + + + + + World stats + false + false + 110 + 290 + 1 + + floating + + + + + + + true + true + true + true + + + + + Plot Tethys 3D path + docked_collapsed + + tethys + 0 0 1 + 10000 + 0.5 + + + + Inspector + docked_collapsed + + + + + Visualize science data + docked_collapsed + + + + + Camera controls + docked_collapsed + + + + + docked_collapsed + + + + 6 + 0 + + 50000 + 0 100000 0 0 0 0.32 + 0 1 0 1 + + + + 100 + 0 + + 1 + 0 0 0 0 0 0 + 0.5 0.5 0.5 1 + + + + + Tethys controls + docked_collapsed + + + + + Reference axis + docked_collapsed + + tethys + + + + + true + 0 0 10 0 0 0 + 1 1 1 1 + 0.5 0.5 0.5 1 + + 1000 + 0.9 + 0.01 + 0.001 + + -0.5 0.1 -0.9 + + + + + + true + + + + + 0 0 1 + + 300000 300000 + + + 1.0 + + + + + + + + + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge + + + + + From 068842d4292a2a81fae9aaf13c99e76a96bfbe2c Mon Sep 17 00:00:00 2001 From: Louise Poubel Date: Tue, 22 Mar 2022 22:10:00 -0700 Subject: [PATCH 2/9] Load all tiles in the world - need to fix Y position (lat) Signed-off-by: Louise Poubel --- .../worlds/portuguese_ledge.py | 13 + .../worlds/portuguese_ledge.sdf | 595 +++++++++++++++++- .../worlds/portuguese_ledge.sdf.em | 417 ++++++++++++ 3 files changed, 1000 insertions(+), 25 deletions(-) create mode 100644 lrauv_ignition_plugins/worlds/portuguese_ledge.py create mode 100644 lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em diff --git a/lrauv_ignition_plugins/worlds/portuguese_ledge.py b/lrauv_ignition_plugins/worlds/portuguese_ledge.py new file mode 100644 index 00000000..6e72fe4f --- /dev/null +++ b/lrauv_ignition_plugins/worlds/portuguese_ledge.py @@ -0,0 +1,13 @@ +import em +import os +import sys + +def main(): + template = open('portuguese_ledge.sdf.em').read() + arguments = {} + result = em.expand(template, arguments) + with open(os.path.join('portuguese_ledge.sdf'), 'w') as outfile: + outfile.write(result) + +if __name__ == '__main__': + sys.exit(main()) diff --git a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf index 80f93c1f..20d0409f 100644 --- a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf +++ b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf @@ -10,6 +10,13 @@ WorldCommPlugin as it receives LRAUVInit messages. --> + + + + @@ -19,6 +26,18 @@ false + + EARTH_WGS84 + ENU + + + 36.693509 + -121.936568 + + 0 + 0 + + 0.02 0 @@ -79,7 +98,7 @@ docked - ogre + ogre2 scene 0.4 0.4 0.4 0.8 0.8 0.8 @@ -310,38 +329,564 @@ -0.5 0.1 -0.9 - - - + true + + + + 0 0 0 + + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile1_DecDeg.nc + 1000 1000 25.34 + + + - - 0 0 1 - - 300000 300000 - + + 0 0 0 + true + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + 10 + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile1_DecDeg.nc + 1000 1000 25.34 + + + + + + + true + + + + + -750.151 8.24476 -0.0440663 + + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile2_DecDeg.nc + 1000 1000 27.094 + + + + + + + -750.151 8.24476 -0.0440663 + true + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + 10 + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile2_DecDeg.nc + 1000 1000 27.094 + + + + + + + true + + + + + -1500.3 16.6662 -0.176266 + + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile3_DecDeg.nc + 1000 1000 11.602 + + + + + + + -1500.3 16.6662 -0.176266 + true + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + 10 + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile3_DecDeg.nc + 1000 1000 11.602 + + + + + + + true + + + + + -2250.54 24.9313 -0.396628 + + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile4_DecDeg.nc + 1000 1000 6.781 + + + + + + + -2250.54 24.9313 -0.396628 + true + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + 10 + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile4_DecDeg.nc + 1000 1000 6.781 + + + + + + + true + + + + + -3000.69 33.2621 -0.705101 + + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile5_DecDeg.nc + 1000 1000 6.689 + + + + + + + -3000.69 33.2621 -0.705101 + true + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + 10 + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile5_DecDeg.nc + 1000 1000 6.689 + + + + + + + true + + + + + -3750.83 41.5476 -1.1017 + + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile6_DecDeg.nc + 1000 1000 30.707 + + + + + + + -3750.83 41.5476 -1.1017 + true + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + 10 + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile6_DecDeg.nc + 1000 1000 30.707 + + + + + + + true + + + + + 8.31046 750.171 -0.0442596 + + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile7_DecDeg.nc + 1000 1000 20.746 + + + + + + + 8.31046 750.171 -0.0442596 + true + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + 10 + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile7_DecDeg.nc + 1000 1000 20.746 + + + + + + + true + + + + + -741.865 758.415 -0.0883251 + + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile8_DecDeg.nc + 1000 1000 29.343 + + + + + + + -741.865 758.415 -0.0883251 + true + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + 10 + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile8_DecDeg.nc + 1000 1000 29.343 + + + + + + + true + + + + + -1492.04 766.835 -0.22055 + + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile9_DecDeg.nc + 1000 1000 6.851 + + + + + + + -1492.04 766.835 -0.22055 + true + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + 10 + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile9_DecDeg.nc + 1000 1000 6.851 + + + + + + + true + + + + + -2242.21 775.1 -0.440893 + + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile10_DecDeg.nc + 1000 1000 6.462 + + + + + + + -2242.21 775.1 -0.440893 + true + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + 10 + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile10_DecDeg.nc + 1000 1000 6.462 + + + + + + + true + + + + + -2992.38 783.43 -0.749382 + + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile11_DecDeg.nc + 1000 1000 29.339 + + + + + + + -2992.38 783.43 -0.749382 + true + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + 10 + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile11_DecDeg.nc + 1000 1000 29.339 + + + + + + + true + + + + + -3742.55 791.715 -1.146 + + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile12_DecDeg.nc + 1000 1000 148.439 + + + + + + + -3742.55 791.715 -1.146 + true + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + 10 + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile12_DecDeg.nc + 1000 1000 148.439 + + + + + + + true + + + + + 16.6195 1500.34 -0.177038 + + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile13_DecDeg.nc + 1000 1000 6.799 + + + + + + + 16.6195 1500.34 -0.177038 + true + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + 10 + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile13_DecDeg.nc + 1000 1000 6.799 + + + + + + + true + + + + + -733.49 1508.59 -0.221093 + + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile14_DecDeg.nc + 1000 1000 6.814 + + + + + + + -733.49 1508.59 -0.221093 + true + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + 10 + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile14_DecDeg.nc + 1000 1000 6.814 + + + + + + + true + + + + + -1483.69 1517.01 -0.353332 + + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile15_DecDeg.nc + 1000 1000 8.834 + + + + + + + -1483.69 1517.01 -0.353332 + true + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + 10 + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile15_DecDeg.nc + 1000 1000 8.834 + + + + + + + true + + + + + -2233.88 1525.27 -0.573678 + + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile16_DecDeg.nc + 1000 1000 11.934 + + + + + + + -2233.88 1525.27 -0.573678 + true + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + 10 + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile16_DecDeg.nc + 1000 1000 11.934 + + + + + + + true + + + + + -2984.08 1533.6 -0.882182 + + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile17_DecDeg.nc + 1000 1000 75.378 + + + + + + + -2984.08 1533.6 -0.882182 + true + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + 10 + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile17_DecDeg.nc + 1000 1000 75.378 + + + + + + + true + + + + + -3734.18 1541.88 -1.27876 + + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile18_DecDeg.nc + 1000 1000 229.765 + + + + + + + -3734.18 1541.88 -1.27876 + true + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + 10 + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile18_DecDeg.nc + 1000 1000 229.765 + - 1.0 - - - - - - - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge - - diff --git a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em new file mode 100644 index 00000000..bbe1d041 --- /dev/null +++ b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em @@ -0,0 +1,417 @@ + + + + + + + +@{ + +import math +from dataclasses import dataclass +from ignition.math import SphericalCoordinates, Vector3d, Angle + +@dataclass +class Tile: + index: int + lat_deg: float + lon_deg: float + height: float + pos: Vector3d = Vector3d() + +# Center of all 18 tiles in degrees +tiles = [ + Tile(1, 36.693509, -121.936568, 25.34), + Tile(2, 36.693583, -121.944962, 27.094), + Tile(3, 36.693658, -121.953356, 11.602), + Tile(4, 36.693731, -121.961751, 6.781), + Tile(5, 36.693804, -121.970145, 6.689), + Tile(6, 36.693876, -121.978539, 30.707), + Tile(7, 36.700269, -121.936475, 20.746), + Tile(8, 36.700343, -121.944870, 29.343), + Tile(9, 36.700418, -121.953265, 6.851), + Tile(10, 36.700491, -121.961660, 6.462), + Tile(11, 36.700564, -121.970055, 29.339), + Tile(12, 36.700636, -121.978450, 148.439), + Tile(13, 36.707029, -121.936382, 6.799), + Tile(14, 36.707103, -121.944777, 6.814), + Tile(15, 36.707178, -121.953173, 8.834), + Tile(16, 36.707251, -121.961569, 11.934), + Tile(17, 36.707324, -121.969965, 75.378), + Tile(18, 36.707396, -121.978360, 229.765)] + +# Convert to world ENU coordinates +sc = SphericalCoordinates( + SphericalCoordinates.EARTH_WGS84, + Angle(math.radians(tiles[0].lat_deg)), + Angle(math.radians(tiles[0].lon_deg)), + 0, Angle(0)) + +for tile in tiles: + vec = Vector3d(math.radians(tile.lat_deg), math.radians(tile.lon_deg), 0) + pos_enu = sc.position_transform(vec, + SphericalCoordinates.SPHERICAL, + SphericalCoordinates.LOCAL2) + tile.pos = pos_enu + +}@ + + + + + 0.0 1.0 1.0 + 0.0 0.7 0.8 + + false + + + + EARTH_WGS84 + ENU + + + @(tiles[0].lat_deg) + @(tiles[0].lon_deg) + + 0 + 0 + + + + 0.02 + 0 + + + + + + + + + + 1025 + + + + + + + + + + + 2003080103_mb_l3_las.csv + + + + + /lrauv/init + + + + + + + + 3D View + false + docked + + + ogre2 + scene + 0.4 0.4 0.4 + 0.8 0.8 0.8 + + 0 6 6 0 0.5 -1.57 + + + + + + 0.1 + + 3000000 + + + + + + + floating + 5 + 5 + false + + + + + + + + + false + 5 + 5 + floating + false + + + + + + + + + false + 5 + 5 + floating + false + + + + + + + + + false + 5 + 5 + floating + false + + + + + + + + + false + 5 + 5 + floating + false + + false + + + + + + + + false + 5 + 5 + floating + false + + + + + + + + + false + 5 + 5 + floating + false + + + + + + + World control + false + false + 72 + 121 + 1 + + floating + + + + + + + true + true + true + + + + + + World stats + false + false + 110 + 290 + 1 + + floating + + + + + + + true + true + true + true + + + + + Plot Tethys 3D path + docked_collapsed + + tethys + 0 0 1 + 10000 + 0.5 + + + + Inspector + docked_collapsed + + + + + Visualize science data + docked_collapsed + + + + + Camera controls + docked_collapsed + + + + + docked_collapsed + + + + 6 + 0 + + 50000 + 0 100000 0 0 0 0.32 + 0 1 0 1 + + + + 100 + 0 + + 1 + 0 0 0 0 0 0 + 0.5 0.5 0.5 1 + + + + + Tethys controls + docked_collapsed + + + + + Reference axis + docked_collapsed + + tethys + + + + + true + 0 0 10 0 0 0 + 1 1 1 1 + 0.5 0.5 0.5 1 + + 1000 + 0.9 + 0.01 + 0.001 + + -0.5 0.1 -0.9 + + +@[for tile in tiles[:18]]@ + + true + + + + + @(tile.pos) + + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile@(tile.index)_DecDeg.nc + 1000 1000 @(tile.height) + + + + + + + @(tile.pos) + true + + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + 10 + + /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile@(tile.index)_DecDeg.nc + 1000 1000 @(tile.height) + + + + + +@[end for]@ + + + From 31bf3bd7b2f71516ba35c9553be6a3cba898e516 Mon Sep 17 00:00:00 2001 From: Louise Poubel Date: Wed, 23 Mar 2022 12:13:21 -0700 Subject: [PATCH 3/9] Use world origin spherical coordinates from SDF if set Signed-off-by: Louise Poubel --- lrauv_ignition_plugins/src/WorldCommPlugin.cc | 13 +++++++++++-- lrauv_ignition_plugins/src/WorldCommPlugin.hh | 7 +++++-- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/lrauv_ignition_plugins/src/WorldCommPlugin.cc b/lrauv_ignition_plugins/src/WorldCommPlugin.cc index d81ec38f..147e51b7 100644 --- a/lrauv_ignition_plugins/src/WorldCommPlugin.cc +++ b/lrauv_ignition_plugins/src/WorldCommPlugin.cc @@ -105,6 +105,12 @@ void WorldCommPlugin::Configure( this->createService = "/world/" + topicWorldName + "/create"; this->setSphericalCoordsService = "/world/" + topicWorldName + "/set_spherical_coordinates"; + + // We assume that the world origin spherical coordinates will either be set + // through SDF, or through this plugin. This assumption is broken if a user + // sets it manually. + this->hasWorldLatLon = + ignition::gazebo::sphericalCoordinates(worldEntity, _ecm).has_value(); } ///////////////////////////////////////////////// @@ -133,7 +139,7 @@ void WorldCommPlugin::SpawnCallback( auto ele = -_msg.initz_(); // Center the world around the first vehicle spawned - if (this->spawnCount == 0) + if (!this->hasWorldLatLon) { igndbg << "Setting world origin coordinates to latitude [" << lat << "], longitude [" << lon << "], elevation [" << ele << "]" @@ -156,8 +162,11 @@ void WorldCommPlugin::SpawnCallback( ignerr << "Failed to request service [" << this->setSphericalCoordsService << "]" << std::endl; } + else + { + this->hasWorldLatLon = true; + } } - this->spawnCount++; // Create vehicle ignition::msgs::EntityFactory factoryReq; diff --git a/lrauv_ignition_plugins/src/WorldCommPlugin.hh b/lrauv_ignition_plugins/src/WorldCommPlugin.hh index 82411953..74147852 100644 --- a/lrauv_ignition_plugins/src/WorldCommPlugin.hh +++ b/lrauv_ignition_plugins/src/WorldCommPlugin.hh @@ -36,6 +36,9 @@ namespace tethys { /// Listens to LRAUVInit messages from the controller to spawn vehicles /// into simulation. + /// + /// If the world origin's spherical coordinates aren't set from SDF, this + /// plugin will set them to match the first vehicle spawned. class WorldCommPlugin: public ignition::gazebo::System, public ignition::gazebo::ISystemConfigure @@ -77,8 +80,8 @@ namespace tethys /// Service to create entities private: std::string createService; - /// Count how many vehicles have been spawned - private: int spawnCount{0}; + /// Whether the world origin's latitude and longitude have already been set. + private: bool hasWorldLatLon{false}; }; } From aba0ee0ab562535e811bc76f81b74fa7c6fcb935 Mon Sep 17 00:00:00 2001 From: Louise Poubel Date: Wed, 23 Mar 2022 16:24:16 -0700 Subject: [PATCH 4/9] levels Signed-off-by: Louise Poubel --- lrauv_ignition_plugins/src/WorldCommPlugin.cc | 13 ++ lrauv_ignition_plugins/src/WorldCommPlugin.hh | 3 + .../worlds/portuguese_ledge.sdf | 166 ++++++++++++++++++ .../worlds/portuguese_ledge.sdf.em | 15 ++ 4 files changed, 197 insertions(+) diff --git a/lrauv_ignition_plugins/src/WorldCommPlugin.cc b/lrauv_ignition_plugins/src/WorldCommPlugin.cc index 147e51b7..95b0d728 100644 --- a/lrauv_ignition_plugins/src/WorldCommPlugin.cc +++ b/lrauv_ignition_plugins/src/WorldCommPlugin.cc @@ -103,6 +103,7 @@ void WorldCommPlugin::Configure( // Services this->createService = "/world/" + topicWorldName + "/create"; + this->performerService = "/world/" + topicWorldName + "/level/set_performer"; this->setSphericalCoordsService = "/world/" + topicWorldName + "/set_spherical_coordinates"; @@ -213,6 +214,18 @@ void WorldCommPlugin::SpawnCallback( ignerr << "Failed to request service [" << this->createService << "]" << std::endl; } + else + { + // Make spawned model a performer + ignition::msgs::StringMsg performerReq; + performerReq.set_data(_msg.id_().data()); + if (!this->node.Request(this->performerService, performerReq, + &WorldCommPlugin::ServiceResponse, this)) + { + ignerr << "Failed to request service [" << this->performerService + << "]" << std::endl; + } + } } ///////////////////////////////////////////////// diff --git a/lrauv_ignition_plugins/src/WorldCommPlugin.hh b/lrauv_ignition_plugins/src/WorldCommPlugin.hh index 74147852..1eac1138 100644 --- a/lrauv_ignition_plugins/src/WorldCommPlugin.hh +++ b/lrauv_ignition_plugins/src/WorldCommPlugin.hh @@ -80,6 +80,9 @@ namespace tethys /// Service to create entities private: std::string createService; + /// Service to make spawned entities performers (for levels) + private: std::string performerService; + /// Whether the world origin's latitude and longitude have already been set. private: bool hasWorldLatLon{false}; }; diff --git a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf index 20d0409f..053d10c4 100644 --- a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf +++ b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf @@ -88,6 +88,172 @@ /lrauv/init + + + + 0 0 0 0 0 0 + + + 1000 1000 1000 + + + portuguese_ledge_tile_1 + + + -750.151 8.24476 -0.0440663 0 0 0 + + + 1000 1000 1000 + + + portuguese_ledge_tile_2 + + + -1500.3 16.6662 -0.176266 0 0 0 + + + 1000 1000 1000 + + + portuguese_ledge_tile_3 + + + -2250.54 24.9313 -0.396628 0 0 0 + + + 1000 1000 1000 + + + portuguese_ledge_tile_4 + + + -3000.69 33.2621 -0.705101 0 0 0 + + + 1000 1000 1000 + + + portuguese_ledge_tile_5 + + + -3750.83 41.5476 -1.1017 0 0 0 + + + 1000 1000 1000 + + + portuguese_ledge_tile_6 + + + 8.31046 750.171 -0.0442596 0 0 0 + + + 1000 1000 1000 + + + portuguese_ledge_tile_7 + + + -741.865 758.415 -0.0883251 0 0 0 + + + 1000 1000 1000 + + + portuguese_ledge_tile_8 + + + -1492.04 766.835 -0.22055 0 0 0 + + + 1000 1000 1000 + + + portuguese_ledge_tile_9 + + + -2242.21 775.1 -0.440893 0 0 0 + + + 1000 1000 1000 + + + portuguese_ledge_tile_10 + + + -2992.38 783.43 -0.749382 0 0 0 + + + 1000 1000 1000 + + + portuguese_ledge_tile_11 + + + -3742.55 791.715 -1.146 0 0 0 + + + 1000 1000 1000 + + + portuguese_ledge_tile_12 + + + 16.6195 1500.34 -0.177038 0 0 0 + + + 1000 1000 1000 + + + portuguese_ledge_tile_13 + + + -733.49 1508.59 -0.221093 0 0 0 + + + 1000 1000 1000 + + + portuguese_ledge_tile_14 + + + -1483.69 1517.01 -0.353332 0 0 0 + + + 1000 1000 1000 + + + portuguese_ledge_tile_15 + + + -2233.88 1525.27 -0.573678 0 0 0 + + + 1000 1000 1000 + + + portuguese_ledge_tile_16 + + + -2984.08 1533.6 -0.882182 0 0 0 + + + 1000 1000 1000 + + + portuguese_ledge_tile_17 + + + -3734.18 1541.88 -1.27876 0 0 0 + + + 1000 1000 1000 + + + portuguese_ledge_tile_18 + + + diff --git a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em index bbe1d041..09894af9 100644 --- a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em +++ b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em @@ -138,6 +138,21 @@ for tile in tiles: /lrauv/init + + +@[for tile in tiles[:18]]@ + + @(tile.pos) 0 0 0 + + + 1000 1000 1000 + + + portuguese_ledge_tile_@(tile.index) + +@[end for]@ + + From 9ca7d7f8815f8d63a3ab0eadd6227b500a80a6f9 Mon Sep 17 00:00:00 2001 From: Louise Poubel Date: Wed, 30 Mar 2022 14:45:44 -0700 Subject: [PATCH 5/9] Use Fuel URLs Signed-off-by: Louise Poubel --- .../worlds/portuguese_ledge.sdf | 126 ++++++------------ .../worlds/portuguese_ledge.sdf.em | 42 ++---- 2 files changed, 52 insertions(+), 116 deletions(-) diff --git a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf index 053d10c4..e7da1252 100644 --- a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf +++ b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf @@ -12,6 +12,8 @@ --> @@ -61,27 +63,11 @@ 1025 - - - - - - 2003080103_mb_l3_las.csv - - - @@ -502,9 +488,7 @@ 0 0 0 - - - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile1_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile1_DecDeg.nc 1000 1000 25.34 @@ -519,7 +503,7 @@ https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile1_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile1_DecDeg.nc 1000 1000 25.34 @@ -533,9 +517,7 @@ -750.151 8.24476 -0.0440663 - - - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile2_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile2_DecDeg.nc 1000 1000 27.094 @@ -550,7 +532,7 @@ https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile2_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile2_DecDeg.nc 1000 1000 27.094 @@ -564,9 +546,7 @@ -1500.3 16.6662 -0.176266 - - - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile3_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile3_DecDeg.nc 1000 1000 11.602 @@ -581,7 +561,7 @@ https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile3_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile3_DecDeg.nc 1000 1000 11.602 @@ -595,9 +575,7 @@ -2250.54 24.9313 -0.396628 - - - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile4_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile4_DecDeg.nc 1000 1000 6.781 @@ -612,7 +590,7 @@ https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile4_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile4_DecDeg.nc 1000 1000 6.781 @@ -626,9 +604,7 @@ -3000.69 33.2621 -0.705101 - - - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile5_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile5_DecDeg.nc 1000 1000 6.689 @@ -643,7 +619,7 @@ https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile5_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile5_DecDeg.nc 1000 1000 6.689 @@ -657,9 +633,7 @@ -3750.83 41.5476 -1.1017 - - - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile6_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile6_DecDeg.nc 1000 1000 30.707 @@ -674,7 +648,7 @@ https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile6_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile6_DecDeg.nc 1000 1000 30.707 @@ -688,9 +662,7 @@ 8.31046 750.171 -0.0442596 - - - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile7_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile7_DecDeg.nc 1000 1000 20.746 @@ -705,7 +677,7 @@ https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile7_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile7_DecDeg.nc 1000 1000 20.746 @@ -719,9 +691,7 @@ -741.865 758.415 -0.0883251 - - - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile8_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile8_DecDeg.nc 1000 1000 29.343 @@ -736,7 +706,7 @@ https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile8_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile8_DecDeg.nc 1000 1000 29.343 @@ -750,9 +720,7 @@ -1492.04 766.835 -0.22055 - - - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile9_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile9_DecDeg.nc 1000 1000 6.851 @@ -767,7 +735,7 @@ https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile9_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile9_DecDeg.nc 1000 1000 6.851 @@ -781,9 +749,7 @@ -2242.21 775.1 -0.440893 - - - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile10_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile10_DecDeg.nc 1000 1000 6.462 @@ -798,7 +764,7 @@ https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile10_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile10_DecDeg.nc 1000 1000 6.462 @@ -812,9 +778,7 @@ -2992.38 783.43 -0.749382 - - - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile11_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile11_DecDeg.nc 1000 1000 29.339 @@ -829,7 +793,7 @@ https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile11_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile11_DecDeg.nc 1000 1000 29.339 @@ -843,9 +807,7 @@ -3742.55 791.715 -1.146 - - - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile12_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile12_DecDeg.nc 1000 1000 148.439 @@ -860,7 +822,7 @@ https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile12_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile12_DecDeg.nc 1000 1000 148.439 @@ -874,9 +836,7 @@ 16.6195 1500.34 -0.177038 - - - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile13_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile13_DecDeg.nc 1000 1000 6.799 @@ -891,7 +851,7 @@ https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile13_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile13_DecDeg.nc 1000 1000 6.799 @@ -905,9 +865,7 @@ -733.49 1508.59 -0.221093 - - - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile14_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile14_DecDeg.nc 1000 1000 6.814 @@ -922,7 +880,7 @@ https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile14_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile14_DecDeg.nc 1000 1000 6.814 @@ -936,9 +894,7 @@ -1483.69 1517.01 -0.353332 - - - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile15_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile15_DecDeg.nc 1000 1000 8.834 @@ -953,7 +909,7 @@ https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile15_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile15_DecDeg.nc 1000 1000 8.834 @@ -967,9 +923,7 @@ -2233.88 1525.27 -0.573678 - - - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile16_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile16_DecDeg.nc 1000 1000 11.934 @@ -984,7 +938,7 @@ https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile16_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile16_DecDeg.nc 1000 1000 11.934 @@ -998,9 +952,7 @@ -2984.08 1533.6 -0.882182 - - - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile17_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile17_DecDeg.nc 1000 1000 75.378 @@ -1015,7 +967,7 @@ https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile17_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile17_DecDeg.nc 1000 1000 75.378 @@ -1029,9 +981,7 @@ -3734.18 1541.88 -1.27876 - - - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile18_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile18_DecDeg.nc 1000 1000 229.765 @@ -1046,7 +996,7 @@ https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile18_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile18_DecDeg.nc 1000 1000 229.765 diff --git a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em index 09894af9..8af57900 100644 --- a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em +++ b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em @@ -12,6 +12,8 @@ --> @@ -22,13 +24,15 @@ import math from dataclasses import dataclass from ignition.math import SphericalCoordinates, Vector3d, Angle +fuel_model_url = "https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge" + @dataclass class Tile: index: int lat_deg: float lon_deg: float height: float - pos: Vector3d = Vector3d() + pos_enu: Vector3d = Vector3d() # Center of all 18 tiles in degrees tiles = [ @@ -63,7 +67,7 @@ for tile in tiles: pos_enu = sc.position_transform(vec, SphericalCoordinates.SPHERICAL, SphericalCoordinates.LOCAL2) - tile.pos = pos_enu + tile.pos_enu = pos_enu }@ @@ -111,27 +115,11 @@ for tile in tiles: 1025 - - - - - - 2003080103_mb_l3_las.csv - - - @@ -140,9 +128,9 @@ for tile in tiles: -@[for tile in tiles[:18]]@ +@[for tile in tiles]@ - @(tile.pos) 0 0 0 + @(tile.pos_enu) 0 0 0 1000 1000 1000 @@ -401,10 +389,8 @@ for tile in tiles: - @(tile.pos) - - - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile@(tile.index)_DecDeg.nc + @(tile.pos_enu) + @(fuel_model_url)/tip/files/meshes/PortugueseLedgeTile@(tile.index)_DecDeg.nc 1000 1000 @(tile.height) @@ -412,14 +398,14 @@ for tile in tiles: - @(tile.pos) + @(tile.pos_enu) true - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + @(fuel_model_url)/tip/files/materials/textures/dirt_diffusespecular.png + @(fuel_model_url)/tip/files/materials/textures/flat_normal.png 10 - /home/developer/.ignition/fuel/fuel.ignitionrobotics.org/chapulina/models/portuguese ledge/1/meshes/PortugueseLedgeTile@(tile.index)_DecDeg.nc + @(fuel_model_url)/tip/files/meshes/PortugueseLedgeTile@(tile.index)_DecDeg.nc 1000 1000 @(tile.height) From f22e8ed8279ac022942c34fcf69b0c03ec8969cc Mon Sep 17 00:00:00 2001 From: Louise Poubel Date: Wed, 30 Mar 2022 15:50:18 -0700 Subject: [PATCH 6/9] Remove collisions for now, add instructions Signed-off-by: Louise Poubel --- README.md | 21 +++++ .../worlds/portuguese_ledge.sdf | 90 +++++++++++-------- .../worlds/portuguese_ledge.sdf.em | 5 +- 3 files changed, 78 insertions(+), 38 deletions(-) diff --git a/README.md b/README.md index f408d350..22db47d0 100644 --- a/README.md +++ b/README.md @@ -490,6 +490,27 @@ for example: 1. `~/lrauv_ws/src/lrauv-application-2/bin/LRAUV` 1. Start more `bin/LRAUV` as needed +## Levels + +Some worlds support [levels](https://ignitionrobotics.org/api/gazebo/6.7/levels.html). +Levels are turned off by default, which means that all heightmap tiles will +be loaded at all times. When levels are enabled, only the tiles containing +vehicles (performers) spawned with `WorldCommPlugin` with an +[lrauv_init](https://github.com/osrf/lrauv/blob/main/lrauv_ignition_plugins/proto/lrauv_init.proto) +message will be loaded. + +For example, loading without levels: + +`ign gazebo -v 4 portuguese_ledge.sdf` + +![portuguese_ledge_no_levels](https://user-images.githubusercontent.com/5751272/159629754-9206a9fe-eeed-4afc-a516-5c25a9fbdaf6.png) + +And with levels: + +`ign gazebo -v 4 portuguese_ledge.sdf --levels` + +![portuguese_ledge_no_levels](https://user-images.githubusercontent.com/5751272/159813230-809d1cad-b3f5-457a-af19-3752bec0710f.gif) + ### Troubleshoot After issuing control commands, for example, rudder and thrust, if you then diff --git a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf index e7da1252..a8d45e83 100644 --- a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf +++ b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf @@ -484,7 +484,8 @@ true - + + @@ -513,7 +514,8 @@ true - + + @@ -542,7 +544,8 @@ true - + + @@ -571,7 +574,8 @@ true - + + @@ -600,7 +604,8 @@ true - + + @@ -629,7 +634,8 @@ true - + + @@ -658,7 +664,8 @@ true - + + @@ -687,7 +694,8 @@ true - + + @@ -716,7 +724,8 @@ true - + + @@ -745,7 +754,8 @@ true - + + @@ -774,7 +784,8 @@ true - + + @@ -803,7 +814,8 @@ true - + + @@ -832,7 +844,8 @@ true - + + @@ -861,7 +874,8 @@ true - + + @@ -890,7 +904,8 @@ true - + + @@ -919,7 +934,8 @@ true - + + @@ -948,7 +964,8 @@ true - + + @@ -977,7 +994,8 @@ true - + + diff --git a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em index 8af57900..a48a57cd 100644 --- a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em +++ b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em @@ -386,7 +386,8 @@ for tile in tiles: true - + + From b2ad67b597079f13f6e208b4fb68035cf8ec43df Mon Sep 17 00:00:00 2001 From: Louise Poubel Date: Wed, 30 Mar 2022 16:07:00 -0700 Subject: [PATCH 7/9] New owner, instructions Signed-off-by: Louise Poubel --- README.md | 18 +++ .../worlds/portuguese_ledge.py | 8 +- .../worlds/portuguese_ledge.sdf | 144 +++++++++--------- .../worlds/portuguese_ledge.sdf.em | 2 +- 4 files changed, 97 insertions(+), 75 deletions(-) diff --git a/README.md b/README.md index 22db47d0..12ec7c42 100644 --- a/README.md +++ b/README.md @@ -511,6 +511,24 @@ And with levels: ![portuguese_ledge_no_levels](https://user-images.githubusercontent.com/5751272/159813230-809d1cad-b3f5-457a-af19-3752bec0710f.gif) +#### Generating Portuguese Ledge world + +The generated file is committed to the repository. Whenever it is changed, a +manual step is needed to regenerate it. + +Pre-requisites: + +``` +sudo apt install python3-empy +``` + +Generate: + +``` +cd lrauv_ignition_plugins/worlds +python3 portuguese_ledge.py +``` + ### Troubleshoot After issuing control commands, for example, rudder and thrust, if you then diff --git a/lrauv_ignition_plugins/worlds/portuguese_ledge.py b/lrauv_ignition_plugins/worlds/portuguese_ledge.py index 6e72fe4f..bf5a7784 100644 --- a/lrauv_ignition_plugins/worlds/portuguese_ledge.py +++ b/lrauv_ignition_plugins/worlds/portuguese_ledge.py @@ -1,12 +1,16 @@ +# Takes in a template and generates an SDF file. + import em import os import sys def main(): - template = open('portuguese_ledge.sdf.em').read() + in_file = 'portuguese_ledge.sdf.em' + out_file = 'portuguese_ledge.sdf' + template = open(in_file).read() arguments = {} result = em.expand(template, arguments) - with open(os.path.join('portuguese_ledge.sdf'), 'w') as outfile: + with open(os.path.join(out_file), 'w') as outfile: outfile.write(result) if __name__ == '__main__': diff --git a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf index a8d45e83..14e3d4ad 100644 --- a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf +++ b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf @@ -489,7 +489,7 @@ 0 0 0 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile1_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile1_DecDeg.nc 1000 1000 25.34 @@ -500,11 +500,11 @@ 0 0 0 true - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile1_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile1_DecDeg.nc 1000 1000 25.34 @@ -519,7 +519,7 @@ -750.151 8.24476 -0.0440663 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile2_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile2_DecDeg.nc 1000 1000 27.094 @@ -530,11 +530,11 @@ -750.151 8.24476 -0.0440663 true - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile2_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile2_DecDeg.nc 1000 1000 27.094 @@ -549,7 +549,7 @@ -1500.3 16.6662 -0.176266 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile3_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile3_DecDeg.nc 1000 1000 11.602 @@ -560,11 +560,11 @@ -1500.3 16.6662 -0.176266 true - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile3_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile3_DecDeg.nc 1000 1000 11.602 @@ -579,7 +579,7 @@ -2250.54 24.9313 -0.396628 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile4_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile4_DecDeg.nc 1000 1000 6.781 @@ -590,11 +590,11 @@ -2250.54 24.9313 -0.396628 true - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile4_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile4_DecDeg.nc 1000 1000 6.781 @@ -609,7 +609,7 @@ -3000.69 33.2621 -0.705101 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile5_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile5_DecDeg.nc 1000 1000 6.689 @@ -620,11 +620,11 @@ -3000.69 33.2621 -0.705101 true - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile5_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile5_DecDeg.nc 1000 1000 6.689 @@ -639,7 +639,7 @@ -3750.83 41.5476 -1.1017 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile6_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile6_DecDeg.nc 1000 1000 30.707 @@ -650,11 +650,11 @@ -3750.83 41.5476 -1.1017 true - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile6_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile6_DecDeg.nc 1000 1000 30.707 @@ -669,7 +669,7 @@ 8.31046 750.171 -0.0442596 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile7_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile7_DecDeg.nc 1000 1000 20.746 @@ -680,11 +680,11 @@ 8.31046 750.171 -0.0442596 true - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile7_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile7_DecDeg.nc 1000 1000 20.746 @@ -699,7 +699,7 @@ -741.865 758.415 -0.0883251 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile8_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile8_DecDeg.nc 1000 1000 29.343 @@ -710,11 +710,11 @@ -741.865 758.415 -0.0883251 true - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile8_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile8_DecDeg.nc 1000 1000 29.343 @@ -729,7 +729,7 @@ -1492.04 766.835 -0.22055 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile9_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile9_DecDeg.nc 1000 1000 6.851 @@ -740,11 +740,11 @@ -1492.04 766.835 -0.22055 true - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile9_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile9_DecDeg.nc 1000 1000 6.851 @@ -759,7 +759,7 @@ -2242.21 775.1 -0.440893 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile10_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile10_DecDeg.nc 1000 1000 6.462 @@ -770,11 +770,11 @@ -2242.21 775.1 -0.440893 true - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile10_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile10_DecDeg.nc 1000 1000 6.462 @@ -789,7 +789,7 @@ -2992.38 783.43 -0.749382 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile11_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile11_DecDeg.nc 1000 1000 29.339 @@ -800,11 +800,11 @@ -2992.38 783.43 -0.749382 true - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile11_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile11_DecDeg.nc 1000 1000 29.339 @@ -819,7 +819,7 @@ -3742.55 791.715 -1.146 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile12_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile12_DecDeg.nc 1000 1000 148.439 @@ -830,11 +830,11 @@ -3742.55 791.715 -1.146 true - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile12_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile12_DecDeg.nc 1000 1000 148.439 @@ -849,7 +849,7 @@ 16.6195 1500.34 -0.177038 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile13_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile13_DecDeg.nc 1000 1000 6.799 @@ -860,11 +860,11 @@ 16.6195 1500.34 -0.177038 true - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile13_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile13_DecDeg.nc 1000 1000 6.799 @@ -879,7 +879,7 @@ -733.49 1508.59 -0.221093 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile14_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile14_DecDeg.nc 1000 1000 6.814 @@ -890,11 +890,11 @@ -733.49 1508.59 -0.221093 true - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile14_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile14_DecDeg.nc 1000 1000 6.814 @@ -909,7 +909,7 @@ -1483.69 1517.01 -0.353332 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile15_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile15_DecDeg.nc 1000 1000 8.834 @@ -920,11 +920,11 @@ -1483.69 1517.01 -0.353332 true - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile15_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile15_DecDeg.nc 1000 1000 8.834 @@ -939,7 +939,7 @@ -2233.88 1525.27 -0.573678 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile16_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile16_DecDeg.nc 1000 1000 11.934 @@ -950,11 +950,11 @@ -2233.88 1525.27 -0.573678 true - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile16_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile16_DecDeg.nc 1000 1000 11.934 @@ -969,7 +969,7 @@ -2984.08 1533.6 -0.882182 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile17_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile17_DecDeg.nc 1000 1000 75.378 @@ -980,11 +980,11 @@ -2984.08 1533.6 -0.882182 true - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile17_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile17_DecDeg.nc 1000 1000 75.378 @@ -999,7 +999,7 @@ -3734.18 1541.88 -1.27876 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile18_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile18_DecDeg.nc 1000 1000 229.765 @@ -1010,11 +1010,11 @@ -3734.18 1541.88 -1.27876 true - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png 10 - https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile18_DecDeg.nc + https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile18_DecDeg.nc 1000 1000 229.765 diff --git a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em index a48a57cd..f5a26e84 100644 --- a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em +++ b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em @@ -24,7 +24,7 @@ import math from dataclasses import dataclass from ignition.math import SphericalCoordinates, Vector3d, Angle -fuel_model_url = "https://fuel.ignitionrobotics.org/1.0/chapulina/models/Portuguese Ledge" +fuel_model_url = "https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge" @dataclass class Tile: From 9a11eeed6615f55e69f671046de8d0f27ce0a0c7 Mon Sep 17 00:00:00 2001 From: Louise Poubel Date: Thu, 7 Apr 2022 18:31:55 -0700 Subject: [PATCH 8/9] Address feedback Signed-off-by: Louise Poubel --- README.md | 18 ---------------- docker/debug_integration/Dockerfile | 3 ++- docker/empty_world/Dockerfile | 1 - docker/tests/Dockerfile | 1 + lrauv_ignition_plugins/CMakeLists.txt | 14 +++++++++++++ .../worlds/empy_expander.py | 21 +++++++++++++++++++ .../worlds/portuguese_ledge.py | 17 --------------- .../worlds/portuguese_ledge.sdf.em | 2 +- 8 files changed, 39 insertions(+), 38 deletions(-) create mode 100644 lrauv_ignition_plugins/worlds/empy_expander.py delete mode 100644 lrauv_ignition_plugins/worlds/portuguese_ledge.py diff --git a/README.md b/README.md index 12ec7c42..22db47d0 100644 --- a/README.md +++ b/README.md @@ -511,24 +511,6 @@ And with levels: ![portuguese_ledge_no_levels](https://user-images.githubusercontent.com/5751272/159813230-809d1cad-b3f5-457a-af19-3752bec0710f.gif) -#### Generating Portuguese Ledge world - -The generated file is committed to the repository. Whenever it is changed, a -manual step is needed to regenerate it. - -Pre-requisites: - -``` -sudo apt install python3-empy -``` - -Generate: - -``` -cd lrauv_ignition_plugins/worlds -python3 portuguese_ledge.py -``` - ### Troubleshoot After issuing control commands, for example, rudder and thrust, if you then diff --git a/docker/debug_integration/Dockerfile b/docker/debug_integration/Dockerfile index 48db9980..14c29ede 100644 --- a/docker/debug_integration/Dockerfile +++ b/docker/debug_integration/Dockerfile @@ -38,6 +38,7 @@ RUN apt-get update \ lsb-release \ tzdata \ wget \ + python3-empy \ python3-numpy # Add Ignition's latest packages, which may be more up-to-date than the ones from the MBARI image @@ -47,7 +48,7 @@ RUN /bin/sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable # Install the latest Ignition binaries RUN apt-get -qq update && apt-get -q -y install \ - ignition-garden python3-numpy + ignition-garden # Install PCL RUN apt-get update \ diff --git a/docker/empty_world/Dockerfile b/docker/empty_world/Dockerfile index 9c20343d..d678b573 100644 --- a/docker/empty_world/Dockerfile +++ b/docker/empty_world/Dockerfile @@ -48,7 +48,6 @@ RUN apt-get update \ software-properties-common \ sudo \ vim \ - python3-numpy \ && apt-get clean # setup timezone diff --git a/docker/tests/Dockerfile b/docker/tests/Dockerfile index cb649d94..46200b61 100644 --- a/docker/tests/Dockerfile +++ b/docker/tests/Dockerfile @@ -38,6 +38,7 @@ RUN apt-get update \ lsb-release \ tzdata \ wget \ + python3-empy \ python3-numpy # Add Ignition's latest packages, which may be more up-to-date than the ones from the MBARI image diff --git a/lrauv_ignition_plugins/CMakeLists.txt b/lrauv_ignition_plugins/CMakeLists.txt index b7bccf92..b1aa9a54 100644 --- a/lrauv_ignition_plugins/CMakeLists.txt +++ b/lrauv_ignition_plugins/CMakeLists.txt @@ -236,6 +236,20 @@ configure_file( "${CMAKE_CURRENT_BINARY_DIR}/hooks/hook.dsv" @ONLY ) +#============================================================================ +# World generation +set(WORLD_NAME "portuguese_ledge") +add_custom_command( + OUTPUT world_gen_cmd + COMMAND python3 ${CMAKE_CURRENT_SOURCE_DIR}/worlds/empy_expander.py + ${CMAKE_CURRENT_SOURCE_DIR}/worlds/${WORLD_NAME}.sdf.em + ${CMAKE_CURRENT_BINARY_DIR}/worlds/${WORLD_NAME}.sdf +) + +add_custom_target(world_gen_target ALL + DEPENDS world_gen_cmd +) + #============================================================================ # Tests if(BUILD_TESTING) diff --git a/lrauv_ignition_plugins/worlds/empy_expander.py b/lrauv_ignition_plugins/worlds/empy_expander.py new file mode 100644 index 00000000..c252dede --- /dev/null +++ b/lrauv_ignition_plugins/worlds/empy_expander.py @@ -0,0 +1,21 @@ +# Takes in a template and generates an SDF file. + +import em +import os +import sys + +def main(in_file, out_file): + with open(in_file) as infile: + template = infile.read() + result = em.expand(template, {}) + os.makedirs(os.path.dirname(out_file), exist_ok=True) + with open(out_file, 'w') as outfile: + outfile.write(result) + +if __name__ == '__main__': + if len(sys.argv) != 3: + print("Usage:") + print("empy_expander.py ") + exit(-100) + + sys.exit(main(sys.argv[1], sys.argv[2])) diff --git a/lrauv_ignition_plugins/worlds/portuguese_ledge.py b/lrauv_ignition_plugins/worlds/portuguese_ledge.py deleted file mode 100644 index bf5a7784..00000000 --- a/lrauv_ignition_plugins/worlds/portuguese_ledge.py +++ /dev/null @@ -1,17 +0,0 @@ -# Takes in a template and generates an SDF file. - -import em -import os -import sys - -def main(): - in_file = 'portuguese_ledge.sdf.em' - out_file = 'portuguese_ledge.sdf' - template = open(in_file).read() - arguments = {} - result = em.expand(template, arguments) - with open(os.path.join(out_file), 'w') as outfile: - outfile.write(result) - -if __name__ == '__main__': - sys.exit(main()) diff --git a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em index f5a26e84..ef115050 100644 --- a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em +++ b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf.em @@ -382,7 +382,7 @@ for tile in tiles: -0.5 0.1 -0.9 -@[for tile in tiles[:18]]@ +@[for tile in tiles]@ true From 368d0c52760b14ca287e3561a5f52acc310989da Mon Sep 17 00:00:00 2001 From: Louise Poubel Date: Tue, 12 Apr 2022 10:09:01 -0700 Subject: [PATCH 9/9] PR feedback Signed-off-by: Louise Poubel --- .../worlds/empy_expander.py | 23 +- .../worlds/portuguese_ledge.sdf | 1026 ----------------- 2 files changed, 12 insertions(+), 1037 deletions(-) delete mode 100644 lrauv_ignition_plugins/worlds/portuguese_ledge.sdf diff --git a/lrauv_ignition_plugins/worlds/empy_expander.py b/lrauv_ignition_plugins/worlds/empy_expander.py index c252dede..df384080 100644 --- a/lrauv_ignition_plugins/worlds/empy_expander.py +++ b/lrauv_ignition_plugins/worlds/empy_expander.py @@ -1,21 +1,22 @@ -# Takes in a template and generates an SDF file. +# Takes in a template and generates a file. +import argparse import em import os import sys -def main(in_file, out_file): - with open(in_file) as infile: +def main(argv=sys.argv[1:]): + parser = argparse.ArgumentParser() + parser.add_argument('infile', help='Full path to input template.') + parser.add_argument('outfile', help='Full path to output file.') + args = parser.parse_args() + + with open(args.infile) as infile: template = infile.read() result = em.expand(template, {}) - os.makedirs(os.path.dirname(out_file), exist_ok=True) - with open(out_file, 'w') as outfile: + os.makedirs(os.path.dirname(args.outfile), exist_ok=True) + with open(args.outfile, 'w') as outfile: outfile.write(result) if __name__ == '__main__': - if len(sys.argv) != 3: - print("Usage:") - print("empy_expander.py ") - exit(-100) - - sys.exit(main(sys.argv[1], sys.argv[2])) + sys.exit(main()) diff --git a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf b/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf deleted file mode 100644 index 14e3d4ad..00000000 --- a/lrauv_ignition_plugins/worlds/portuguese_ledge.sdf +++ /dev/null @@ -1,1026 +0,0 @@ - - - - - - - - - - - - 0.0 1.0 1.0 - 0.0 0.7 0.8 - - false - - - - EARTH_WGS84 - ENU - - - 36.693509 - -121.936568 - - 0 - 0 - - - - 0.02 - 0 - - - - - - - - - - 1025 - - - - - - - /lrauv/init - - - - - - 0 0 0 0 0 0 - - - 1000 1000 1000 - - - portuguese_ledge_tile_1 - - - -750.151 8.24476 -0.0440663 0 0 0 - - - 1000 1000 1000 - - - portuguese_ledge_tile_2 - - - -1500.3 16.6662 -0.176266 0 0 0 - - - 1000 1000 1000 - - - portuguese_ledge_tile_3 - - - -2250.54 24.9313 -0.396628 0 0 0 - - - 1000 1000 1000 - - - portuguese_ledge_tile_4 - - - -3000.69 33.2621 -0.705101 0 0 0 - - - 1000 1000 1000 - - - portuguese_ledge_tile_5 - - - -3750.83 41.5476 -1.1017 0 0 0 - - - 1000 1000 1000 - - - portuguese_ledge_tile_6 - - - 8.31046 750.171 -0.0442596 0 0 0 - - - 1000 1000 1000 - - - portuguese_ledge_tile_7 - - - -741.865 758.415 -0.0883251 0 0 0 - - - 1000 1000 1000 - - - portuguese_ledge_tile_8 - - - -1492.04 766.835 -0.22055 0 0 0 - - - 1000 1000 1000 - - - portuguese_ledge_tile_9 - - - -2242.21 775.1 -0.440893 0 0 0 - - - 1000 1000 1000 - - - portuguese_ledge_tile_10 - - - -2992.38 783.43 -0.749382 0 0 0 - - - 1000 1000 1000 - - - portuguese_ledge_tile_11 - - - -3742.55 791.715 -1.146 0 0 0 - - - 1000 1000 1000 - - - portuguese_ledge_tile_12 - - - 16.6195 1500.34 -0.177038 0 0 0 - - - 1000 1000 1000 - - - portuguese_ledge_tile_13 - - - -733.49 1508.59 -0.221093 0 0 0 - - - 1000 1000 1000 - - - portuguese_ledge_tile_14 - - - -1483.69 1517.01 -0.353332 0 0 0 - - - 1000 1000 1000 - - - portuguese_ledge_tile_15 - - - -2233.88 1525.27 -0.573678 0 0 0 - - - 1000 1000 1000 - - - portuguese_ledge_tile_16 - - - -2984.08 1533.6 -0.882182 0 0 0 - - - 1000 1000 1000 - - - portuguese_ledge_tile_17 - - - -3734.18 1541.88 -1.27876 0 0 0 - - - 1000 1000 1000 - - - portuguese_ledge_tile_18 - - - - - - - - - 3D View - false - docked - - - ogre2 - scene - 0.4 0.4 0.4 - 0.8 0.8 0.8 - - 0 6 6 0 0.5 -1.57 - - - - - - 0.1 - - 3000000 - - - - - - - floating - 5 - 5 - false - - - - - - - - - false - 5 - 5 - floating - false - - - - - - - - - false - 5 - 5 - floating - false - - - - - - - - - false - 5 - 5 - floating - false - - - - - - - - - false - 5 - 5 - floating - false - - false - - - - - - - - false - 5 - 5 - floating - false - - - - - - - - - false - 5 - 5 - floating - false - - - - - - - World control - false - false - 72 - 121 - 1 - - floating - - - - - - - true - true - true - - - - - - World stats - false - false - 110 - 290 - 1 - - floating - - - - - - - true - true - true - true - - - - - Plot Tethys 3D path - docked_collapsed - - tethys - 0 0 1 - 10000 - 0.5 - - - - Inspector - docked_collapsed - - - - - Visualize science data - docked_collapsed - - - - - Camera controls - docked_collapsed - - - - - docked_collapsed - - - - 6 - 0 - - 50000 - 0 100000 0 0 0 0.32 - 0 1 0 1 - - - - 100 - 0 - - 1 - 0 0 0 0 0 0 - 0.5 0.5 0.5 1 - - - - - Tethys controls - docked_collapsed - - - - - Reference axis - docked_collapsed - - tethys - - - - - true - 0 0 10 0 0 0 - 1 1 1 1 - 0.5 0.5 0.5 1 - - 1000 - 0.9 - 0.01 - 0.001 - - -0.5 0.1 -0.9 - - - - true - - - - - - - 0 0 0 - true - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png - 10 - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile1_DecDeg.nc - 1000 1000 25.34 - - - - - - - true - - - - - - - -750.151 8.24476 -0.0440663 - true - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png - 10 - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile2_DecDeg.nc - 1000 1000 27.094 - - - - - - - true - - - - - - - -1500.3 16.6662 -0.176266 - true - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png - 10 - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile3_DecDeg.nc - 1000 1000 11.602 - - - - - - - true - - - - - - - -2250.54 24.9313 -0.396628 - true - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png - 10 - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile4_DecDeg.nc - 1000 1000 6.781 - - - - - - - true - - - - - - - -3000.69 33.2621 -0.705101 - true - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png - 10 - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile5_DecDeg.nc - 1000 1000 6.689 - - - - - - - true - - - - - - - -3750.83 41.5476 -1.1017 - true - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png - 10 - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile6_DecDeg.nc - 1000 1000 30.707 - - - - - - - true - - - - - - - 8.31046 750.171 -0.0442596 - true - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png - 10 - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile7_DecDeg.nc - 1000 1000 20.746 - - - - - - - true - - - - - - - -741.865 758.415 -0.0883251 - true - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png - 10 - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile8_DecDeg.nc - 1000 1000 29.343 - - - - - - - true - - - - - - - -1492.04 766.835 -0.22055 - true - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png - 10 - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile9_DecDeg.nc - 1000 1000 6.851 - - - - - - - true - - - - - - - -2242.21 775.1 -0.440893 - true - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png - 10 - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile10_DecDeg.nc - 1000 1000 6.462 - - - - - - - true - - - - - - - -2992.38 783.43 -0.749382 - true - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png - 10 - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile11_DecDeg.nc - 1000 1000 29.339 - - - - - - - true - - - - - - - -3742.55 791.715 -1.146 - true - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png - 10 - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile12_DecDeg.nc - 1000 1000 148.439 - - - - - - - true - - - - - - - 16.6195 1500.34 -0.177038 - true - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png - 10 - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile13_DecDeg.nc - 1000 1000 6.799 - - - - - - - true - - - - - - - -733.49 1508.59 -0.221093 - true - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png - 10 - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile14_DecDeg.nc - 1000 1000 6.814 - - - - - - - true - - - - - - - -1483.69 1517.01 -0.353332 - true - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png - 10 - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile15_DecDeg.nc - 1000 1000 8.834 - - - - - - - true - - - - - - - -2233.88 1525.27 -0.573678 - true - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png - 10 - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile16_DecDeg.nc - 1000 1000 11.934 - - - - - - - true - - - - - - - -2984.08 1533.6 -0.882182 - true - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png - 10 - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile17_DecDeg.nc - 1000 1000 75.378 - - - - - - - true - - - - - - - -3734.18 1541.88 -1.27876 - true - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/dirt_diffusespecular.png - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/materials/textures/flat_normal.png - 10 - - https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Portuguese Ledge/tip/files/meshes/PortugueseLedgeTile18_DecDeg.nc - 1000 1000 229.765 - - - - - - - -