You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
257 lines
256 KiB
257 lines
256 KiB
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<title>graphify - graphify-out/graph.html</title>
|
|
<script src="https://unpkg.com/vis-network/standalone/umd/vis-network.min.js"></script>
|
|
<style>
|
|
* { box-sizing: border-box; margin: 0; padding: 0; }
|
|
body { background: #0f0f1a; color: #e0e0e0; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; display: flex; height: 100vh; overflow: hidden; }
|
|
#graph { flex: 1; }
|
|
#sidebar { width: 280px; background: #1a1a2e; border-left: 1px solid #2a2a4e; display: flex; flex-direction: column; overflow: hidden; }
|
|
#search-wrap { padding: 12px; border-bottom: 1px solid #2a2a4e; }
|
|
#search { width: 100%; background: #0f0f1a; border: 1px solid #3a3a5e; color: #e0e0e0; padding: 7px 10px; border-radius: 6px; font-size: 13px; outline: none; }
|
|
#search:focus { border-color: #4E79A7; }
|
|
#search-results { max-height: 140px; overflow-y: auto; padding: 4px 12px; border-bottom: 1px solid #2a2a4e; display: none; }
|
|
.search-item { padding: 4px 6px; cursor: pointer; border-radius: 4px; font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
|
.search-item:hover { background: #2a2a4e; }
|
|
#info-panel { padding: 14px; border-bottom: 1px solid #2a2a4e; min-height: 140px; }
|
|
#info-panel h3 { font-size: 13px; color: #aaa; margin-bottom: 8px; text-transform: uppercase; letter-spacing: 0.05em; }
|
|
#info-content { font-size: 13px; color: #ccc; line-height: 1.6; }
|
|
#info-content .field { margin-bottom: 5px; }
|
|
#info-content .field b { color: #e0e0e0; }
|
|
#info-content .empty { color: #555; font-style: italic; }
|
|
.neighbor-link { display: block; padding: 2px 6px; margin: 2px 0; border-radius: 3px; cursor: pointer; font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; border-left: 3px solid #333; }
|
|
.neighbor-link:hover { background: #2a2a4e; }
|
|
#neighbors-list { max-height: 160px; overflow-y: auto; margin-top: 4px; }
|
|
#legend-wrap { flex: 1; overflow-y: auto; padding: 12px; }
|
|
#legend-wrap h3 { font-size: 13px; color: #aaa; margin-bottom: 10px; text-transform: uppercase; letter-spacing: 0.05em; }
|
|
.legend-item { display: flex; align-items: center; gap: 8px; padding: 4px 0; cursor: pointer; border-radius: 4px; font-size: 12px; }
|
|
.legend-item:hover { background: #2a2a4e; padding-left: 4px; }
|
|
.legend-item.dimmed { opacity: 0.35; }
|
|
.legend-dot { width: 12px; height: 12px; border-radius: 50%; flex-shrink: 0; }
|
|
.legend-label { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
|
|
.legend-count { color: #666; font-size: 11px; }
|
|
#stats { padding: 10px 14px; border-top: 1px solid #2a2a4e; font-size: 11px; color: #555; }
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div id="graph"></div>
|
|
<div id="sidebar">
|
|
<div id="search-wrap">
|
|
<input id="search" type="text" placeholder="Search nodes..." autocomplete="off">
|
|
<div id="search-results"></div>
|
|
</div>
|
|
<div id="info-panel">
|
|
<h3>Node Info</h3>
|
|
<div id="info-content"><span class="empty">Click a node to inspect it</span></div>
|
|
</div>
|
|
<div id="legend-wrap">
|
|
<h3>Communities</h3>
|
|
<div id="legend"></div>
|
|
</div>
|
|
<div id="stats">330 nodes · 475 edges · 33 communities</div>
|
|
</div>
|
|
<script>
|
|
const RAW_NODES = [{"id": "dashboard_app_py", "label": "app.py", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 26.2, "font": {"size": 12, "color": "#ffffff"}, "title": "app.py", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "dashboard\\app.py", "file_type": "code", "degree": 14}, {"id": "app_pollingfilter", "label": "PollingFilter", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "PollingFilter", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "dashboard\\app.py", "file_type": "code", "degree": 2}, {"id": "app_pollingfilter_filter", "label": ".filter()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 19.2, "font": {"size": 12, "color": "#ffffff"}, "title": ".filter()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "dashboard\\app.py", "file_type": "code", "degree": 8}, {"id": "app_is_simulation_running", "label": "is_simulation_running()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "is_simulation_running()", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "dashboard\\app.py", "file_type": "code", "degree": 3}, {"id": "app_index", "label": "index()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "index()", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "dashboard\\app.py", "file_type": "code", "degree": 1}, {"id": "app_get_config", "label": "get_config()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "get_config()", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "dashboard\\app.py", "file_type": "code", "degree": 2}, {"id": "app_get_scenario_params", "label": "get_scenario_params()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "get_scenario_params()", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "dashboard\\app.py", "file_type": "code", "degree": 2}, {"id": "app_simulator_status", "label": "simulator_status()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "simulator_status()", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "dashboard\\app.py", "file_type": "code", "degree": 2}, {"id": "app_simulator_kill", "label": "simulator_kill()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "simulator_kill()", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "dashboard\\app.py", "file_type": "code", "degree": 2}, {"id": "app_shutdown", "label": "shutdown()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "shutdown()", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "dashboard\\app.py", "file_type": "code", "degree": 3}, {"id": "app_simulator_idle", "label": "simulator_idle()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "simulator_idle()", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "dashboard\\app.py", "file_type": "code", "degree": 1}, {"id": "app_simulator_wake", "label": "simulator_wake()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "simulator_wake()", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "dashboard\\app.py", "file_type": "code", "degree": 1}, {"id": "app_simulator_launch", "label": "simulator_launch()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "simulator_launch()", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "dashboard\\app.py", "file_type": "code", "degree": 1}, {"id": "app_stop_simulation", "label": "stop_simulation()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "stop_simulation()", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "dashboard\\app.py", "file_type": "code", "degree": 1}, {"id": "app_run_simulation", "label": "run_simulation()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "run_simulation()", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "dashboard\\app.py", "file_type": "code", "degree": 1}, {"id": "app_rationale_1", "label": "dashboard/app.py ---------------- Flask backend for the BATL CARLA Orchestrator", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "dashboard/app.py ---------------- Flask backend for the BATL CARLA Orchestrator", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "dashboard\\app.py", "file_type": "rationale", "degree": 1}, {"id": "app_rationale_52", "label": "Returns True if a scenario process is currently alive.", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Returns True if a scenario process is currently alive.", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "dashboard\\app.py", "file_type": "rationale", "degree": 1}, {"id": "app_rationale_136", "label": "Forces all CarlaUE4 processes to terminate.", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Forces all CarlaUE4 processes to terminate.", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "dashboard\\app.py", "file_type": "rationale", "degree": 1}, {"id": "app_rationale_153", "label": "Stops the Flask server itself.", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Stops the Flask server itself.", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "dashboard\\app.py", "file_type": "rationale", "degree": 1}, {"id": "dashboard_static_app_js", "label": "app.js", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 20.4, "font": {"size": 12, "color": "#ffffff"}, "title": "app.js", "community": 9, "community_name": "Dashboard Frontend (JS)", "source_file": "dashboard\\static\\app.js", "file_type": "code", "degree": 9}, {"id": "app_resetidletimer", "label": "resetIdleTimer()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "resetIdleTimer()", "community": 9, "community_name": "Dashboard Frontend (JS)", "source_file": "dashboard\\static\\app.js", "file_type": "code", "degree": 2}, {"id": "app_updatesimulatorstatus", "label": "updateSimulatorStatus()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "updateSimulatorStatus()", "community": 9, "community_name": "Dashboard Frontend (JS)", "source_file": "dashboard\\static\\app.js", "file_type": "code", "degree": 1}, {"id": "app_appendlog", "label": "appendLog()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "appendLog()", "community": 9, "community_name": "Dashboard Frontend (JS)", "source_file": "dashboard\\static\\app.js", "file_type": "code", "degree": 2}, {"id": "app_startstream", "label": "startStream()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 16.9, "font": {"size": 12, "color": "#ffffff"}, "title": "startStream()", "community": 9, "community_name": "Dashboard Frontend (JS)", "source_file": "dashboard\\static\\app.js", "file_type": "code", "degree": 6}, {"id": "app_rendershenrontelemetry", "label": "renderShenronTelemetry()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "renderShenronTelemetry()", "community": 9, "community_name": "Dashboard Frontend (JS)", "source_file": "dashboard\\static\\app.js", "file_type": "code", "degree": 3}, {"id": "app_updateshenronprogress", "label": "updateShenronProgress()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "updateShenronProgress()", "community": 9, "community_name": "Dashboard Frontend (JS)", "source_file": "dashboard\\static\\app.js", "file_type": "code", "degree": 2}, {"id": "app_chip", "label": "chip()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "chip()", "community": 9, "community_name": "Dashboard Frontend (JS)", "source_file": "dashboard\\static\\app.js", "file_type": "code", "degree": 2}, {"id": "app_setloadingstate", "label": "setLoadingState()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "setLoadingState()", "community": 9, "community_name": "Dashboard Frontend (JS)", "source_file": "dashboard\\static\\app.js", "file_type": "code", "degree": 2}, {"id": "app_loadscenarioparams", "label": "loadScenarioParams()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "loadScenarioParams()", "community": 9, "community_name": "Dashboard Frontend (JS)", "source_file": "dashboard\\static\\app.js", "file_type": "code", "degree": 1}, {"id": "scenarios_base_py", "label": "base.py", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 21.5, "font": {"size": 12, "color": "#ffffff"}, "title": "base.py", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "code", "degree": 10}, {"id": "base_scenariobase", "label": "ScenarioBase", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 40.0, "font": {"size": 12, "color": "#ffffff"}, "title": "ScenarioBase", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "code", "degree": 26}, {"id": "abc", "label": "ABC", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "ABC", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "", "file_type": "code", "degree": 2}, {"id": "base_scenariobase_init", "label": ".__init__()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": ".__init__()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "code", "degree": 1}, {"id": "base_name", "label": "name()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "name()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "code", "degree": 1}, {"id": "base_setup", "label": "setup()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "setup()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "code", "degree": 1}, {"id": "base_step", "label": "step()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "step()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "code", "degree": 1}, {"id": "base_cleanup", "label": "cleanup()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "cleanup()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "code", "degree": 1}, {"id": "base_scenariobase_log_frame", "label": ".log_frame()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 16.9, "font": {"size": 12, "color": "#ffffff"}, "title": ".log_frame()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "code", "degree": 6}, {"id": "base_weather", "label": "weather()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "weather()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "code", "degree": 1}, {"id": "base_max_frames", "label": "max_frames()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "max_frames()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "code", "degree": 1}, {"id": "base_ego_spawn_point", "label": "ego_spawn_point()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "ego_spawn_point()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "code", "degree": 1}, {"id": "base_scenariobase_on_ego_spawned", "label": ".on_ego_spawned()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": ".on_ego_spawned()", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "scenarios\\base.py", "file_type": "code", "degree": 3}, {"id": "base_scenariobase_get_scenario_metadata", "label": ".get_scenario_metadata()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".get_scenario_metadata()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "code", "degree": 2}, {"id": "base_scenariobase_apply_parameters", "label": ".apply_parameters()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": ".apply_parameters()", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "scenarios\\base.py", "file_type": "code", "degree": 3}, {"id": "base_scenariobase_destroy_actors", "label": "._destroy_actors()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 18.1, "font": {"size": 12, "color": "#ffffff"}, "title": "._destroy_actors()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "code", "degree": 7}, {"id": "base_scenariobase_get_waypoint_ahead", "label": "._get_waypoint_ahead()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 15.8, "font": {"size": 12, "color": "#ffffff"}, "title": "._get_waypoint_ahead()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "code", "degree": 5}, {"id": "base_rationale_1", "label": "scenarios/base.py ----------------- Abstract base class for all CARLA simulati", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "scenarios/base.py ----------------- Abstract base class for all CARLA simulati", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "rationale", "degree": 1}, {"id": "base_rationale_23", "label": "Abstract interface for all ADAS simulation scenarios. Lifecycle ----", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Abstract interface for all ADAS simulation scenarios. Lifecycle ----", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "rationale", "degree": 1}, {"id": "base_rationale_54", "label": "Human-readable scenario identifier (e.g. 'braking').", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "Human-readable scenario identifier (e.g. 'braking').", "community": 20, "community_name": "Community 20", "source_file": "scenarios\\base.py", "file_type": "rationale", "degree": 0}, {"id": "base_rationale_58", "label": "Initialise the scenario: - Store world / ego / tm references.", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "Initialise the scenario: - Store world / ego / tm references.", "community": 21, "community_name": "Community 21", "source_file": "scenarios\\base.py", "file_type": "rationale", "degree": 0}, {"id": "base_rationale_73", "label": "Per-tick logic executed inside the main simulation loop. Parameters", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "Per-tick logic executed inside the main simulation loop. Parameters", "community": 22, "community_name": "Community 22", "source_file": "scenarios\\base.py", "file_type": "rationale", "degree": 0}, {"id": "base_rationale_84", "label": "Destroy all actors spawned by this scenario. Always call this in a fina", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "Destroy all actors spawned by this scenario. Always call this in a fina", "community": 23, "community_name": "Community 23", "source_file": "scenarios\\base.py", "file_type": "rationale", "degree": 0}, {"id": "base_rationale_94", "label": "Unified 1:1 logging for all scenarios. This method ensures clean consol", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Unified 1:1 logging for all scenarios. This method ensures clean consol", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "rationale", "degree": 1}, {"id": "base_rationale_118", "label": "Override to request a specific weather preset for this scenario. If Non", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "Override to request a specific weather preset for this scenario. If Non", "community": 24, "community_name": "Community 24", "source_file": "scenarios\\base.py", "file_type": "rationale", "degree": 0}, {"id": "base_rationale_126", "label": "Override to request a specific duration for this scenario. If None, the", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "Override to request a specific duration for this scenario. If None, the", "community": 25, "community_name": "Community 25", "source_file": "scenarios\\base.py", "file_type": "rationale", "degree": 0}, {"id": "base_rationale_134", "label": "Override to request a specific spawn point for the ego vehicle. Returns", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "Override to request a specific spawn point for the ego vehicle. Returns", "community": 26, "community_name": "Community 26", "source_file": "scenarios\\base.py", "file_type": "rationale", "degree": 0}, {"id": "base_rationale_144", "label": "Called immediately after the ego vehicle is spawned. Override to react", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Called immediately after the ego vehicle is spawned. Override to react", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "scenarios\\base.py", "file_type": "rationale", "degree": 1}, {"id": "base_rationale_150", "label": "Return a dict that will be merged into every recorded frame's metadata", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Return a dict that will be merged into every recorded frame's metadata", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "rationale", "degree": 1}, {"id": "base_rationale_160", "label": "Allow the orchestrator to inject parameters parsed from CLI. This maps", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Allow the orchestrator to inject parameters parsed from CLI. This maps", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "scenarios\\base.py", "file_type": "rationale", "degree": 1}, {"id": "base_rationale_186", "label": "Convenience method: destroy all actors tracked in self._actors. Call th", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Convenience method: destroy all actors tracked in self._actors. Call th", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "rationale", "degree": 1}, {"id": "base_rationale_199", "label": "Return a waypoint `distance` metres ahead of the ego vehicle. lane_offs", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Return a waypoint `distance` metres ahead of the ego vehicle. lane_offs", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\base.py", "file_type": "rationale", "degree": 1}, {"id": "scenarios_braking_py", "label": "braking.py", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 14.6, "font": {"size": 12, "color": "#ffffff"}, "title": "braking.py", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\braking.py", "file_type": "code", "degree": 4}, {"id": "braking_brakingscenario", "label": "BrakingScenario", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 20.4, "font": {"size": 12, "color": "#ffffff"}, "title": "BrakingScenario", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\braking.py", "file_type": "code", "degree": 9}, {"id": "scenariobase", "label": "ScenarioBase", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 14.6, "font": {"size": 12, "color": "#ffffff"}, "title": "ScenarioBase", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "", "file_type": "code", "degree": 4}, {"id": "braking_brakingscenario_init", "label": ".__init__()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": ".__init__()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\braking.py", "file_type": "code", "degree": 1}, {"id": "braking_name", "label": "name()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "name()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\braking.py", "file_type": "code", "degree": 1}, {"id": "braking_ego_spawn_point", "label": "ego_spawn_point()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "ego_spawn_point()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\braking.py", "file_type": "code", "degree": 1}, {"id": "braking_brakingscenario_setup", "label": ".setup()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": ".setup()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\braking.py", "file_type": "code", "degree": 3}, {"id": "braking_brakingscenario_step", "label": ".step()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".step()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\braking.py", "file_type": "code", "degree": 2}, {"id": "braking_brakingscenario_cleanup", "label": ".cleanup()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".cleanup()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\braking.py", "file_type": "code", "degree": 2}, {"id": "braking_brakingscenario_get_scenario_metadata", "label": ".get_scenario_metadata()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": ".get_scenario_metadata()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\braking.py", "file_type": "code", "degree": 1}, {"id": "braking_rationale_1", "label": "scenarios/braking.py -------------------- Lead Vehicle Hard Braking Scenario. A", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "scenarios/braking.py -------------------- Lead Vehicle Hard Braking Scenario. A", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\braking.py", "file_type": "rationale", "degree": 2}, {"id": "braking_rationale_23", "label": "Scenario: Lead vehicle hard braking. Timeline -------- Frame 1 \u2026 BR", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Scenario: Lead vehicle hard braking. Timeline -------- Frame 1 \u2026 BR", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\braking.py", "file_type": "rationale", "degree": 2}, {"id": "scenarios_cutin_py", "label": "cutin.py", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 14.6, "font": {"size": 12, "color": "#ffffff"}, "title": "cutin.py", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\cutin.py", "file_type": "code", "degree": 4}, {"id": "cutin_cutinscenario", "label": "CutInScenario", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 20.4, "font": {"size": 12, "color": "#ffffff"}, "title": "CutInScenario", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\cutin.py", "file_type": "code", "degree": 9}, {"id": "cutin_cutinscenario_init", "label": ".__init__()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": ".__init__()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\cutin.py", "file_type": "code", "degree": 1}, {"id": "cutin_name", "label": "name()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "name()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\cutin.py", "file_type": "code", "degree": 1}, {"id": "cutin_ego_spawn_point", "label": "ego_spawn_point()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "ego_spawn_point()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\cutin.py", "file_type": "code", "degree": 1}, {"id": "cutin_cutinscenario_setup", "label": ".setup()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": ".setup()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\cutin.py", "file_type": "code", "degree": 3}, {"id": "cutin_cutinscenario_step", "label": ".step()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".step()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\cutin.py", "file_type": "code", "degree": 2}, {"id": "cutin_cutinscenario_cleanup", "label": ".cleanup()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".cleanup()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\cutin.py", "file_type": "code", "degree": 2}, {"id": "cutin_cutinscenario_get_scenario_metadata", "label": ".get_scenario_metadata()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": ".get_scenario_metadata()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\cutin.py", "file_type": "code", "degree": 1}, {"id": "cutin_rationale_1", "label": "scenarios/cutin.py ------------------ Adjacent Lane Cut-In Scenario. An NPC", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "scenarios/cutin.py ------------------ Adjacent Lane Cut-In Scenario. An NPC", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\cutin.py", "file_type": "rationale", "degree": 2}, {"id": "cutin_rationale_21", "label": "Scenario: Adjacent lane cut-in. Timeline -------- Frame 1 \u2026 CUT", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Scenario: Adjacent lane cut-in. Timeline -------- Frame 1 \u2026 CUT", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\cutin.py", "file_type": "rationale", "degree": 2}, {"id": "scenarios_obstacle_py", "label": "obstacle.py", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 14.6, "font": {"size": 12, "color": "#ffffff"}, "title": "obstacle.py", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\obstacle.py", "file_type": "code", "degree": 4}, {"id": "obstacle_obstaclescenario", "label": "ObstacleScenario", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 20.4, "font": {"size": 12, "color": "#ffffff"}, "title": "ObstacleScenario", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\obstacle.py", "file_type": "code", "degree": 9}, {"id": "obstacle_obstaclescenario_init", "label": ".__init__()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": ".__init__()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\obstacle.py", "file_type": "code", "degree": 1}, {"id": "obstacle_name", "label": "name()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "name()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\obstacle.py", "file_type": "code", "degree": 1}, {"id": "obstacle_ego_spawn_point", "label": "ego_spawn_point()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "ego_spawn_point()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\obstacle.py", "file_type": "code", "degree": 1}, {"id": "obstacle_obstaclescenario_setup", "label": ".setup()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": ".setup()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\obstacle.py", "file_type": "code", "degree": 3}, {"id": "obstacle_obstaclescenario_step", "label": ".step()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".step()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\obstacle.py", "file_type": "code", "degree": 2}, {"id": "obstacle_obstaclescenario_cleanup", "label": ".cleanup()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".cleanup()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\obstacle.py", "file_type": "code", "degree": 2}, {"id": "obstacle_obstaclescenario_get_scenario_metadata", "label": ".get_scenario_metadata()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".get_scenario_metadata()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\obstacle.py", "file_type": "code", "degree": 2}, {"id": "obstacle_rationale_1", "label": "scenarios/obstacle.py --------------------- Static Obstacle Scenario. A traffic", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "scenarios/obstacle.py --------------------- Static Obstacle Scenario. A traffic", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\obstacle.py", "file_type": "rationale", "degree": 2}, {"id": "obstacle_rationale_20", "label": "Scenario: Static obstacle on the ego lane. A prop is spawned on the road ah", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Scenario: Static obstacle on the ego lane. A prop is spawned on the road ah", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "scenarios\\obstacle.py", "file_type": "rationale", "degree": 2}, {"id": "scenarios_showcase_py", "label": "showcase.py", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 14.6, "font": {"size": 12, "color": "#ffffff"}, "title": "showcase.py", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "scenarios\\showcase.py", "file_type": "code", "degree": 4}, {"id": "showcase_showcasescenario", "label": "ShowcaseScenario", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 18.1, "font": {"size": 12, "color": "#ffffff"}, "title": "ShowcaseScenario", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "scenarios\\showcase.py", "file_type": "code", "degree": 7}, {"id": "showcase_name", "label": "name()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "name()", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "scenarios\\showcase.py", "file_type": "code", "degree": 1}, {"id": "showcase_ego_spawn_point", "label": "ego_spawn_point()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "ego_spawn_point()", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "scenarios\\showcase.py", "file_type": "code", "degree": 1}, {"id": "showcase_showcasescenario_setup", "label": ".setup()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 14.6, "font": {"size": 12, "color": "#ffffff"}, "title": ".setup()", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "scenarios\\showcase.py", "file_type": "code", "degree": 4}, {"id": "showcase_showcasescenario_get_steering_to_target", "label": "._get_steering_to_target()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "._get_steering_to_target()", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "scenarios\\showcase.py", "file_type": "code", "degree": 2}, {"id": "showcase_showcasescenario_step", "label": ".step()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 15.8, "font": {"size": 12, "color": "#ffffff"}, "title": ".step()", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "scenarios\\showcase.py", "file_type": "code", "degree": 5}, {"id": "showcase_showcasescenario_cleanup", "label": ".cleanup()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": ".cleanup()", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "scenarios\\showcase.py", "file_type": "code", "degree": 3}, {"id": "showcase_rationale_1", "label": "scenarios/showcase.py --------------------- Custom high-impact demo scene: Left", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "scenarios/showcase.py --------------------- Custom high-impact demo scene: Left", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "scenarios\\showcase.py", "file_type": "rationale", "degree": 2}, {"id": "showcase_rationale_25", "label": "Step 11: Deep Intersection Guidance for Ego.", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 11: Deep Intersection Guidance for Ego.", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "scenarios\\showcase.py", "file_type": "rationale", "degree": 2}, {"id": "showcase_rationale_83", "label": "Step 11: Multi-stage steering logic.", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 11: Multi-stage steering logic.", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "scenarios\\showcase.py", "file_type": "rationale", "degree": 2}, {"id": "scenarios_init_py", "label": "__init__.py", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "__init__.py", "community": 27, "community_name": "Community 27", "source_file": "scenarios\\__init__.py", "file_type": "code", "degree": 0}, {"id": "scripts_compare_metrology_py", "label": "compare_metrology.py", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "compare_metrology.py", "community": 14, "community_name": "Metrology Comparison", "source_file": "scripts\\compare_metrology.py", "file_type": "code", "degree": 1}, {"id": "compare_metrology_analyze_session", "label": "analyze_session()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "analyze_session()", "community": 14, "community_name": "Metrology Comparison", "source_file": "scripts\\compare_metrology.py", "file_type": "code", "degree": 1}, {"id": "scripts_data_to_mcap_py", "label": "data_to_mcap.py", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 16.9, "font": {"size": 12, "color": "#ffffff"}, "title": "data_to_mcap.py", "community": 10, "community_name": "MCAP Dataset Conversion", "source_file": "scripts\\data_to_mcap.py", "file_type": "code", "degree": 6}, {"id": "data_to_mcap_render_heatmap", "label": "render_heatmap()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 14.6, "font": {"size": 12, "color": "#ffffff"}, "title": "render_heatmap()", "community": 10, "community_name": "MCAP Dataset Conversion", "source_file": "scripts\\data_to_mcap.py", "file_type": "code", "degree": 4}, {"id": "data_to_mcap_postprocess_ra", "label": "postprocess_ra()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "postprocess_ra()", "community": 10, "community_name": "MCAP Dataset Conversion", "source_file": "scripts\\data_to_mcap.py", "file_type": "code", "degree": 3}, {"id": "data_to_mcap_scan_convert_ra", "label": "scan_convert_ra()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "scan_convert_ra()", "community": 10, "community_name": "MCAP Dataset Conversion", "source_file": "scripts\\data_to_mcap.py", "file_type": "code", "degree": 3}, {"id": "data_to_mcap_load_frames", "label": "load_frames()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "load_frames()", "community": 10, "community_name": "MCAP Dataset Conversion", "source_file": "scripts\\data_to_mcap.py", "file_type": "code", "degree": 2}, {"id": "data_to_mcap_convert_folder", "label": "convert_folder()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 18.1, "font": {"size": 12, "color": "#ffffff"}, "title": "convert_folder()", "community": 10, "community_name": "MCAP Dataset Conversion", "source_file": "scripts\\data_to_mcap.py", "file_type": "code", "degree": 7}, {"id": "data_to_mcap_main", "label": "main()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "main()", "community": 10, "community_name": "MCAP Dataset Conversion", "source_file": "scripts\\data_to_mcap.py", "file_type": "code", "degree": 2}, {"id": "data_to_mcap_rationale_88", "label": "Convert 2D array to colormapped B64 PNG with guide-compliant normalization.", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Convert 2D array to colormapped B64 PNG with guide-compliant normalization.", "community": 10, "community_name": "MCAP Dataset Conversion", "source_file": "scripts\\data_to_mcap.py", "file_type": "rationale", "degree": 1}, {"id": "data_to_mcap_rationale_112", "label": "Refined RA post-processing pipeline for Physical Realism. Restores the natu", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Refined RA post-processing pipeline for Physical Realism. Restores the natu", "community": 10, "community_name": "MCAP Dataset Conversion", "source_file": "scripts\\data_to_mcap.py", "file_type": "rationale", "degree": 1}, {"id": "data_to_mcap_rationale_135", "label": "Polar-to-Cartesian scan conversion following FIG / Guide logic. Converts RA", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Polar-to-Cartesian scan conversion following FIG / Guide logic. Converts RA", "community": 10, "community_name": "MCAP Dataset Conversion", "source_file": "scripts\\data_to_mcap.py", "file_type": "rationale", "degree": 1}, {"id": "scripts_generate_shenron_py", "label": "generate_shenron.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "generate_shenron.py", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\generate_shenron.py", "file_type": "code", "degree": 3}, {"id": "generate_shenron_get_gpu_info", "label": "_get_gpu_info()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "_get_gpu_info()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\generate_shenron.py", "file_type": "code", "degree": 3}, {"id": "generate_shenron_process_session", "label": "process_session()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 20.4, "font": {"size": 12, "color": "#ffffff"}, "title": "process_session()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\generate_shenron.py", "file_type": "code", "degree": 9}, {"id": "generate_shenron_main", "label": "main()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "main()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\generate_shenron.py", "file_type": "code", "degree": 2}, {"id": "generate_shenron_rationale_21", "label": "Retrieve GPU hardware info for telemetry display.", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Retrieve GPU hardware info for telemetry display.", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\generate_shenron.py", "file_type": "rationale", "degree": 2}, {"id": "scripts_get_pos_py", "label": "get_pos.py", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "get_pos.py", "community": 15, "community_name": "Community 15", "source_file": "scripts\\get_pos.py", "file_type": "code", "degree": 1}, {"id": "get_pos_get_pos", "label": "get_pos()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "get_pos()", "community": 15, "community_name": "Community 15", "source_file": "scripts\\get_pos.py", "file_type": "code", "degree": 1}, {"id": "scripts_spawn_at_spectator_py", "label": "spawn_at_spectator.py", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "spawn_at_spectator.py", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "scripts\\spawn_at_spectator.py", "file_type": "code", "degree": 1}, {"id": "spawn_at_spectator_spawn_here", "label": "spawn_here()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "spawn_here()", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "scripts\\spawn_at_spectator.py", "file_type": "code", "degree": 3}, {"id": "scripts_test_shenron_py", "label": "test_shenron.py", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 16.9, "font": {"size": 12, "color": "#ffffff"}, "title": "test_shenron.py", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "scripts\\test_shenron.py", "file_type": "code", "degree": 6}, {"id": "test_shenron_render_heatmap", "label": "render_heatmap()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 14.6, "font": {"size": 12, "color": "#ffffff"}, "title": "render_heatmap()", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "scripts\\test_shenron.py", "file_type": "code", "degree": 4}, {"id": "test_shenron_fastheatmapengine", "label": "FastHeatmapEngine", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 16.9, "font": {"size": 12, "color": "#ffffff"}, "title": "FastHeatmapEngine", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "scripts\\test_shenron.py", "file_type": "code", "degree": 6}, {"id": "test_shenron_fastheatmapengine_init", "label": ".__init__()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": ".__init__()", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "scripts\\test_shenron.py", "file_type": "code", "degree": 1}, {"id": "test_shenron_fastheatmapengine_render", "label": ".render()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": ".render()", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "scripts\\test_shenron.py", "file_type": "code", "degree": 3}, {"id": "test_shenron_postprocess_ra", "label": "postprocess_ra()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "postprocess_ra()", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "scripts\\test_shenron.py", "file_type": "code", "degree": 3}, {"id": "test_shenron_scan_convert_ra", "label": "scan_convert_ra()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "scan_convert_ra()", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "scripts\\test_shenron.py", "file_type": "code", "degree": 3}, {"id": "test_shenron_load_frames", "label": "load_frames()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "load_frames()", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "scripts\\test_shenron.py", "file_type": "code", "degree": 2}, {"id": "test_shenron_run_testbench", "label": "run_testbench()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 23.8, "font": {"size": 12, "color": "#ffffff"}, "title": "run_testbench()", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "scripts\\test_shenron.py", "file_type": "code", "degree": 12}, {"id": "test_shenron_rationale_138", "label": "Converts a 2D numpy array to a colormapped PNG base64 string.", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Converts a 2D numpy array to a colormapped PNG base64 string.", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "scripts\\test_shenron.py", "file_type": "rationale", "degree": 2}, {"id": "test_shenron_rationale_167", "label": "Stateful Matplotlib engine that reuses figure memory to achieve high-speed frame", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Stateful Matplotlib engine that reuses figure memory to achieve high-speed frame", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "scripts\\test_shenron.py", "file_type": "rationale", "degree": 2}, {"id": "test_shenron_rationale_208", "label": "Refined RA post-processing pipeline for Physical Realism. Restores th", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Refined RA post-processing pipeline for Physical Realism. Restores th", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "scripts\\test_shenron.py", "file_type": "rationale", "degree": 2}, {"id": "test_shenron_rationale_247", "label": "Polar-to-Cartesian scan conversion following FIG / Guide logic. Converts RA", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Polar-to-Cartesian scan conversion following FIG / Guide logic. Converts RA", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "scripts\\test_shenron.py", "file_type": "rationale", "degree": 2}, {"id": "scripts_test_shenron_model_py", "label": "test_shenron_model.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "test_shenron_model.py", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\test_shenron_model.py", "file_type": "code", "degree": 1}, {"id": "test_shenron_model_run_smoke_test", "label": "run_smoke_test()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "run_smoke_test()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\test_shenron_model.py", "file_type": "code", "degree": 3}, {"id": "scripts_track_full_state_py", "label": "track_full_state.py", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "track_full_state.py", "community": 16, "community_name": "Community 16", "source_file": "scripts\\track_full_state.py", "file_type": "code", "degree": 1}, {"id": "track_full_state_track_full_state", "label": "track_full_state()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "track_full_state()", "community": 16, "community_name": "Community 16", "source_file": "scripts\\track_full_state.py", "file_type": "code", "degree": 1}, {"id": "scripts_track_peaks_py", "label": "track_peaks.py", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "track_peaks.py", "community": 17, "community_name": "Community 17", "source_file": "scripts\\track_peaks.py", "file_type": "code", "degree": 1}, {"id": "track_peaks_get_peak_tracking", "label": "get_peak_tracking()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "get_peak_tracking()", "community": 17, "community_name": "Community 17", "source_file": "scripts\\track_peaks.py", "file_type": "code", "degree": 1}, {"id": "scripts_init_py", "label": "__init__.py", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "__init__.py", "community": 28, "community_name": "Community 28", "source_file": "scripts\\__init__.py", "file_type": "code", "degree": 0}, {"id": "scripts_analysis_compare_iterations_py", "label": "compare_iterations.py", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "compare_iterations.py", "community": 18, "community_name": "Community 18", "source_file": "scripts\\analysis\\compare_iterations.py", "file_type": "code", "degree": 1}, {"id": "compare_iterations_compare_folders", "label": "compare_folders()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "compare_folders()", "community": 18, "community_name": "Community 18", "source_file": "scripts\\analysis\\compare_iterations.py", "file_type": "code", "degree": 1}, {"id": "scripts_analysis_data_inspector_py", "label": "data_inspector.py", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 16.9, "font": {"size": 12, "color": "#ffffff"}, "title": "data_inspector.py", "community": 12, "community_name": "Data Quality Inspection", "source_file": "scripts\\analysis\\data_inspector.py", "file_type": "code", "degree": 6}, {"id": "data_inspector_load_frame", "label": "load_frame()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "load_frame()", "community": 12, "community_name": "Data Quality Inspection", "source_file": "scripts\\analysis\\data_inspector.py", "file_type": "code", "degree": 2}, {"id": "data_inspector_inspect_radar", "label": "inspect_radar()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "inspect_radar()", "community": 12, "community_name": "Data Quality Inspection", "source_file": "scripts\\analysis\\data_inspector.py", "file_type": "code", "degree": 1}, {"id": "data_inspector_inspect_lidar", "label": "inspect_lidar()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "inspect_lidar()", "community": 12, "community_name": "Data Quality Inspection", "source_file": "scripts\\analysis\\data_inspector.py", "file_type": "code", "degree": 1}, {"id": "data_inspector_inspect_gt", "label": "inspect_gt()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "inspect_gt()", "community": 12, "community_name": "Data Quality Inspection", "source_file": "scripts\\analysis\\data_inspector.py", "file_type": "code", "degree": 2}, {"id": "data_inspector_plot_radar", "label": "plot_radar()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "plot_radar()", "community": 12, "community_name": "Data Quality Inspection", "source_file": "scripts\\analysis\\data_inspector.py", "file_type": "code", "degree": 1}, {"id": "data_inspector_plot_lidar", "label": "plot_lidar()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "plot_lidar()", "community": 12, "community_name": "Data Quality Inspection", "source_file": "scripts\\analysis\\data_inspector.py", "file_type": "code", "degree": 1}, {"id": "scripts_analysis_deep_metrology_py", "label": "deep_metrology.py", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "deep_metrology.py", "community": 13, "community_name": "Deep Metrology Analysis", "source_file": "scripts\\analysis\\deep_metrology.py", "file_type": "code", "degree": 3}, {"id": "deep_metrology_power_law", "label": "power_law()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "power_law()", "community": 13, "community_name": "Deep Metrology Analysis", "source_file": "scripts\\analysis\\deep_metrology.py", "file_type": "code", "degree": 2}, {"id": "deep_metrology_analyze_iteration", "label": "analyze_iteration()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "analyze_iteration()", "community": 13, "community_name": "Deep Metrology Analysis", "source_file": "scripts\\analysis\\deep_metrology.py", "file_type": "code", "degree": 2}, {"id": "deep_metrology_run_metrology_suite", "label": "run_metrology_suite()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "run_metrology_suite()", "community": 13, "community_name": "Deep Metrology Analysis", "source_file": "scripts\\analysis\\deep_metrology.py", "file_type": "code", "degree": 3}, {"id": "scripts_analysis_plot_iterations_py", "label": "plot_iterations.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "plot_iterations.py", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\analysis\\plot_iterations.py", "file_type": "code", "degree": 2}, {"id": "plot_iterations_plot_comparison", "label": "plot_comparison()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "plot_comparison()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\analysis\\plot_iterations.py", "file_type": "code", "degree": 2}, {"id": "plot_iterations_rationale_59", "label": "# IMPORTANT: Use absolute path for artifacts in conversation dir", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "# IMPORTANT: Use absolute path for artifacts in conversation dir", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\analysis\\plot_iterations.py", "file_type": "rationale", "degree": 1}, {"id": "scripts_analysis_research_metrology_py", "label": "research_metrology.py", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "research_metrology.py", "community": 19, "community_name": "Community 19", "source_file": "scripts\\analysis\\research_metrology.py", "file_type": "code", "degree": 1}, {"id": "research_metrology_research_metrology", "label": "research_metrology()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "research_metrology()", "community": 19, "community_name": "Community 19", "source_file": "scripts\\analysis\\research_metrology.py", "file_type": "code", "degree": 1}, {"id": "scripts_analysis_sensitivity_sweep_py", "label": "sensitivity_sweep.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "sensitivity_sweep.py", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\analysis\\sensitivity_sweep.py", "file_type": "code", "degree": 1}, {"id": "sensitivity_sweep_run_sensitivity_sweep", "label": "run_sensitivity_sweep()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 14.6, "font": {"size": 12, "color": "#ffffff"}, "title": "run_sensitivity_sweep()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\analysis\\sensitivity_sweep.py", "file_type": "code", "degree": 4}, {"id": "scripts_analysis_sensitivity_sweep_207_py", "label": "sensitivity_sweep_207.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "sensitivity_sweep_207.py", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\analysis\\sensitivity_sweep_207.py", "file_type": "code", "degree": 1}, {"id": "sensitivity_sweep_207_run_sensitivity_sweep", "label": "run_sensitivity_sweep()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 14.6, "font": {"size": 12, "color": "#ffffff"}, "title": "run_sensitivity_sweep()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\analysis\\sensitivity_sweep_207.py", "file_type": "code", "degree": 4}, {"id": "scripts_analysis_verify_frame_py", "label": "verify_frame.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "verify_frame.py", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\analysis\\verify_frame.py", "file_type": "code", "degree": 1}, {"id": "verify_frame_verify_frame", "label": "verify_frame()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 14.6, "font": {"size": 12, "color": "#ffffff"}, "title": "verify_frame()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\analysis\\verify_frame.py", "file_type": "code", "degree": 4}, {"id": "scripts_analysis_verify_metrology_logic_py", "label": "verify_metrology_logic.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "verify_metrology_logic.py", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\analysis\\verify_metrology_logic.py", "file_type": "code", "degree": 1}, {"id": "verify_metrology_logic_verify_signal_flow", "label": "verify_signal_flow()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 15.8, "font": {"size": 12, "color": "#ffffff"}, "title": "verify_signal_flow()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\analysis\\verify_metrology_logic.py", "file_type": "code", "degree": 5}, {"id": "scripts_analysis_verify_tags_py", "label": "verify_tags.py", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "verify_tags.py", "community": 29, "community_name": "Community 29", "source_file": "scripts\\analysis\\verify_tags.py", "file_type": "code", "degree": 0}, {"id": "scripts_isolate_model_wrapper_py", "label": "model_wrapper.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "model_wrapper.py", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\model_wrapper.py", "file_type": "code", "degree": 1}, {"id": "model_wrapper_shenronradarmodel", "label": "ShenronRadarModel", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 35.4, "font": {"size": 12, "color": "#ffffff"}, "title": "ShenronRadarModel", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\model_wrapper.py", "file_type": "code", "degree": 22}, {"id": "model_wrapper_shenronradarmodel_init", "label": ".__init__()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 15.8, "font": {"size": 12, "color": "#ffffff"}, "title": ".__init__()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\model_wrapper.py", "file_type": "code", "degree": 5}, {"id": "model_wrapper_shenronradarmodel_sync_configs", "label": "._sync_configs()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 14.6, "font": {"size": 12, "color": "#ffffff"}, "title": "._sync_configs()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\model_wrapper.py", "file_type": "code", "degree": 4}, {"id": "model_wrapper_shenronradarmodel_process", "label": ".process()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 27.3, "font": {"size": 12, "color": "#ffffff"}, "title": ".process()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\model_wrapper.py", "file_type": "code", "degree": 15}, {"id": "model_wrapper_shenronradarmodel_get_last_metrology", "label": ".get_last_metrology()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 15.8, "font": {"size": 12, "color": "#ffffff"}, "title": ".get_last_metrology()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\model_wrapper.py", "file_type": "code", "degree": 5}, {"id": "model_wrapper_shenronradarmodel_get_signal_metrics", "label": ".get_signal_metrics()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 15.8, "font": {"size": 12, "color": "#ffffff"}, "title": ".get_signal_metrics()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\model_wrapper.py", "file_type": "code", "degree": 5}, {"id": "model_wrapper_shenronradarmodel_get_radar_specs", "label": ".get_radar_specs()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": ".get_radar_specs()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\model_wrapper.py", "file_type": "code", "degree": 3}, {"id": "model_wrapper_rationale_25", "label": "Initialize the Shenron Radar Model. Args: radar_", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "Initialize the Shenron Radar Model. Args: radar_", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\model_wrapper.py", "file_type": "rationale", "degree": 3}, {"id": "model_wrapper_rationale_57", "label": "Important: Sync global variables in sim_radar_utils to match current radar.obj", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "Important: Sync global variables in sim_radar_utils to match current radar.obj", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\model_wrapper.py", "file_type": "rationale", "degree": 3}, {"id": "model_wrapper_rationale_79", "label": "Process semantic LiDAR data to generate a rich radar point cloud.", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "Process semantic LiDAR data to generate a rich radar point cloud.", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\model_wrapper.py", "file_type": "rationale", "degree": 3}, {"id": "model_wrapper_rationale_131", "label": "Return the raw internal heatmaps and thresholds for the last processed frame.", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "Return the raw internal heatmaps and thresholds for the last processed frame.", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\model_wrapper.py", "file_type": "rationale", "degree": 3}, {"id": "model_wrapper_rationale_144", "label": "Calculates frame-level signal-to-noise ratio and noise floor metadata.", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "Calculates frame-level signal-to-noise ratio and noise floor metadata.", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\model_wrapper.py", "file_type": "rationale", "degree": 3}, {"id": "model_wrapper_rationale_224", "label": "Return radar hardware specs for dashboard telemetry.", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "Return radar hardware specs for dashboard telemetry.", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\model_wrapper.py", "file_type": "rationale", "degree": 3}, {"id": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_configureradar_py", "label": "ConfigureRadar.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "ConfigureRadar.py", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\ConfigureRadar.py", "file_type": "code", "degree": 1}, {"id": "configureradar_radar", "label": "radar", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 33.1, "font": {"size": 12, "color": "#ffffff"}, "title": "radar", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\ConfigureRadar.py", "file_type": "code", "degree": 20}, {"id": "configureradar_radar_init", "label": ".__init__()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": ".__init__()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\ConfigureRadar.py", "file_type": "code", "degree": 1}, {"id": "configureradar_radar_get_noise", "label": ".get_noise()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": ".get_noise()", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\ConfigureRadar.py", "file_type": "code", "degree": 3}, {"id": "configureradar_radar_load_antenna_luts", "label": ".load_antenna_luts()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".load_antenna_luts()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\ConfigureRadar.py", "file_type": "code", "degree": 2}, {"id": "configureradar_rationale_8", "label": "class to define the radar object with it's settings and to extract time interval", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "class to define the radar object with it's settings and to extract time interval", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\ConfigureRadar.py", "file_type": "rationale", "degree": 1}, {"id": "configureradar_rationale_170", "label": "Load normalized antenna gain LUTs (dB) from CSV files. Expected CSV f", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Load normalized antenna gain LUTs (dB) from CSV files. Expected CSV f", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\ConfigureRadar.py", "file_type": "rationale", "degree": 1}, {"id": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_lidar_py", "label": "lidar.py", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 15.8, "font": {"size": 12, "color": "#ffffff"}, "title": "lidar.py", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\lidar.py", "file_type": "code", "degree": 5}, {"id": "lidar_map_carla_semantic_lidar_latest", "label": "map_carla_semantic_lidar_latest()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "map_carla_semantic_lidar_latest()", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\lidar.py", "file_type": "code", "degree": 3}, {"id": "lidar_check_save_path", "label": "check_save_path()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "check_save_path()", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\lidar.py", "file_type": "code", "degree": 1}, {"id": "lidar_rotate_points", "label": "rotate_points()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "rotate_points()", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\lidar.py", "file_type": "code", "degree": 2}, {"id": "lidar_cropped_forradar", "label": "Cropped_forRadar()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 16.9, "font": {"size": 12, "color": "#ffffff"}, "title": "Cropped_forRadar()", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\lidar.py", "file_type": "code", "degree": 6}, {"id": "lidar_run_lidar", "label": "run_lidar()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 20.4, "font": {"size": 12, "color": "#ffffff"}, "title": "run_lidar()", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\lidar.py", "file_type": "code", "degree": 9}, {"id": "lidar_rationale_19", "label": "Function to map material column in the collected carla ray_cast_shenron to shenr", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Function to map material column in the collected carla ray_cast_shenron to shenr", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\lidar.py", "file_type": "rationale", "degree": 2}, {"id": "lidar_rationale_85", "label": "Removes Occlusions and calculates loss for each point", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Removes Occlusions and calculates loss for each point", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\lidar.py", "file_type": "rationale", "degree": 2}, {"id": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_lidar_utils_py", "label": "lidar_utils.py", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "lidar_utils.py", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\lidar_utils.py", "file_type": "code", "degree": 3}, {"id": "lidar_utils_create_digital_twin", "label": "create_digital_twin()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "create_digital_twin()", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\lidar_utils.py", "file_type": "code", "degree": 2}, {"id": "lidar_utils_map_material", "label": "map_material()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "map_material()", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\lidar_utils.py", "file_type": "code", "degree": 1}, {"id": "lidar_utils_new_map_material", "label": "new_map_material()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "new_map_material()", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\lidar_utils.py", "file_type": "code", "degree": 2}, {"id": "lidar_utils_rationale_12", "label": "Augments the input point cloud using the ground truth labels. Could densify", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Augments the input point cloud using the ground truth labels. Could densify", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\lidar_utils.py", "file_type": "rationale", "degree": 1}, {"id": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_main_py", "label": "main.py", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "main.py", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\main.py", "file_type": "code", "degree": 1}, {"id": "main_run_shenron", "label": "run_shenron()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "run_shenron()", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\main.py", "file_type": "code", "degree": 2}, {"id": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_map_carla_semantic_lidar_shenron_py", "label": "map_carla_semantic_lidar_shenron.py", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "map_carla_semantic_lidar_shenron.py", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\map_carla_semantic_lidar_shenron.py", "file_type": "code", "degree": 2}, {"id": "map_carla_semantic_lidar_shenron_check_save_path", "label": "check_save_path()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "check_save_path()", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\map_carla_semantic_lidar_shenron.py", "file_type": "code", "degree": 2}, {"id": "map_carla_semantic_lidar_shenron_main", "label": "main()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "main()", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\map_carla_semantic_lidar_shenron.py", "file_type": "code", "degree": 3}, {"id": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_path_config_py", "label": "path_config.py", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "path_config.py", "community": 30, "community_name": "Community 30", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\path_config.py", "file_type": "code", "degree": 0}, {"id": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_transform_dsp_utils_py", "label": "transform_dsp_utils.py", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 19.2, "font": {"size": 12, "color": "#ffffff"}, "title": "transform_dsp_utils.py", "community": 7, "community_name": "DSP & CFAR Detection", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\transform_dsp_utils.py", "file_type": "code", "degree": 8}, {"id": "transform_dsp_utils_separate_real_imag", "label": "separate_real_imag()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "separate_real_imag()", "community": 7, "community_name": "DSP & CFAR Detection", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\transform_dsp_utils.py", "file_type": "code", "degree": 1}, {"id": "transform_dsp_utils_separate_mag_phase", "label": "separate_mag_phase()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "separate_mag_phase()", "community": 7, "community_name": "DSP & CFAR Detection", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\transform_dsp_utils.py", "file_type": "code", "degree": 1}, {"id": "transform_dsp_utils_convert_adc_to_3d_fft", "label": "convert_adc_to_3d_fft()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "convert_adc_to_3d_fft()", "community": 7, "community_name": "DSP & CFAR Detection", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\transform_dsp_utils.py", "file_type": "code", "degree": 2}, {"id": "transform_dsp_utils_cart2polar", "label": "cart2polar()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "cart2polar()", "community": 7, "community_name": "DSP & CFAR Detection", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\transform_dsp_utils.py", "file_type": "code", "degree": 2}, {"id": "transform_dsp_utils_polar_to_cart", "label": "polar_to_cart()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "polar_to_cart()", "community": 7, "community_name": "DSP & CFAR Detection", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\transform_dsp_utils.py", "file_type": "code", "degree": 3}, {"id": "transform_dsp_utils_plot_data", "label": "plot_data()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "plot_data()", "community": 7, "community_name": "DSP & CFAR Detection", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\transform_dsp_utils.py", "file_type": "code", "degree": 1}, {"id": "transform_dsp_utils_cfar_filtered_output", "label": "CFAR_filtered_output()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "CFAR_filtered_output()", "community": 7, "community_name": "DSP & CFAR Detection", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\transform_dsp_utils.py", "file_type": "code", "degree": 1}, {"id": "transform_dsp_utils_ca_cfar", "label": "CA_CFAR", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 14.6, "font": {"size": 12, "color": "#ffffff"}, "title": "CA_CFAR", "community": 7, "community_name": "DSP & CFAR Detection", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\transform_dsp_utils.py", "file_type": "code", "degree": 4}, {"id": "transform_dsp_utils_ca_cfar_init", "label": ".__init__()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": ".__init__()", "community": 7, "community_name": "DSP & CFAR Detection", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\transform_dsp_utils.py", "file_type": "code", "degree": 1}, {"id": "transform_dsp_utils_ca_cfar_call", "label": ".__call__()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".__call__()", "community": 7, "community_name": "DSP & CFAR Detection", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\transform_dsp_utils.py", "file_type": "code", "degree": 2}, {"id": "transform_dsp_utils_rationale_28", "label": "Function to convert adc data to RA tensor Input: adcData:", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Function to convert adc data to RA tensor Input: adcData:", "community": 7, "community_name": "DSP & CFAR Detection", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\transform_dsp_utils.py", "file_type": "rationale", "degree": 1}, {"id": "transform_dsp_utils_rationale_68", "label": "convert a polar range angle tensor to cartesian array Input: RATe", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "convert a polar range angle tensor to cartesian array Input: RATe", "community": 7, "community_name": "DSP & CFAR Detection", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\transform_dsp_utils.py", "file_type": "rationale", "degree": 1}, {"id": "transform_dsp_utils_rationale_173", "label": "Description: ------------ Cell Averaging - Constant False Alarm Ra", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Description: ------------ Cell Averaging - Constant False Alarm Ra", "community": 7, "community_name": "DSP & CFAR Detection", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\transform_dsp_utils.py", "file_type": "rationale", "degree": 1}, {"id": "transform_dsp_utils_rationale_215", "label": "Description: ------------ Performs the automatic detection", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Description: ------------ Performs the automatic detection", "community": 7, "community_name": "DSP & CFAR Detection", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\transform_dsp_utils.py", "file_type": "rationale", "degree": 1}, {"id": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_init_py", "label": "__init__.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "__init__.py", "community": 31, "community_name": "Community 31", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\__init__.py", "file_type": "code", "degree": 0}, {"id": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_shenron_heatmap_gen_py", "label": "heatmap_gen.py", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "heatmap_gen.py", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\shenron\\heatmap_gen.py", "file_type": "code", "degree": 1}, {"id": "heatmap_gen_heatmap_gen", "label": "heatmap_gen()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "heatmap_gen()", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\shenron\\heatmap_gen.py", "file_type": "code", "degree": 2}, {"id": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_shenron_heatmap_gen_fast_py", "label": "heatmap_gen_fast.py", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "heatmap_gen_fast.py", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\shenron\\heatmap_gen_fast.py", "file_type": "code", "degree": 2}, {"id": "heatmap_gen_fast_get_gpu_id_most_avlbl_mem", "label": "get_gpu_id_most_avlbl_mem()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "get_gpu_id_most_avlbl_mem()", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\shenron\\heatmap_gen_fast.py", "file_type": "code", "degree": 2}, {"id": "heatmap_gen_fast_heatmap_gen", "label": "heatmap_gen()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 14.6, "font": {"size": 12, "color": "#ffffff"}, "title": "heatmap_gen()", "community": 6, "community_name": "LiDAR & Fast Heatmap Gen", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\shenron\\heatmap_gen_fast.py", "file_type": "code", "degree": 4}, {"id": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_shenron_sceneset_py", "label": "Sceneset.py", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 16.9, "font": {"size": 12, "color": "#ffffff"}, "title": "Sceneset.py", "community": 8, "community_name": "Scene Reconstruction", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\shenron\\Sceneset.py", "file_type": "code", "degree": 6}, {"id": "sceneset_cart2sph", "label": "cart2sph()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "cart2sph()", "community": 8, "community_name": "Scene Reconstruction", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\shenron\\Sceneset.py", "file_type": "code", "degree": 2}, {"id": "sceneset_sph2cart", "label": "sph2cart()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "sph2cart()", "community": 8, "community_name": "Scene Reconstruction", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\shenron\\Sceneset.py", "file_type": "code", "degree": 2}, {"id": "sceneset_sceneset", "label": "Sceneset", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 19.2, "font": {"size": 12, "color": "#ffffff"}, "title": "Sceneset", "community": 8, "community_name": "Scene Reconstruction", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\shenron\\Sceneset.py", "file_type": "code", "degree": 8}, {"id": "sceneset_sceneset_init", "label": ".__init__()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": ".__init__()", "community": 8, "community_name": "Scene Reconstruction", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\shenron\\Sceneset.py", "file_type": "code", "degree": 1}, {"id": "sceneset_sceneset_removeocclusion", "label": ".removeocclusion()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": ".removeocclusion()", "community": 8, "community_name": "Scene Reconstruction", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\shenron\\Sceneset.py", "file_type": "code", "degree": 3}, {"id": "sceneset_sceneset_removeocclusion_hiddenpoint", "label": ".removeocclusion_hiddenpoint()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": ".removeocclusion_hiddenpoint()", "community": 8, "community_name": "Scene Reconstruction", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\shenron\\Sceneset.py", "file_type": "code", "degree": 1}, {"id": "sceneset_sceneset_specularpoints", "label": ".specularpoints()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": ".specularpoints()", "community": 8, "community_name": "Scene Reconstruction", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\shenron\\Sceneset.py", "file_type": "code", "degree": 3}, {"id": "sceneset_get_loss", "label": "get_loss()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "get_loss()", "community": 8, "community_name": "Scene Reconstruction", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\shenron\\Sceneset.py", "file_type": "code", "degree": 1}, {"id": "sceneset_get_loss_2", "label": "get_loss_2()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "get_loss_2()", "community": 8, "community_name": "Scene Reconstruction", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\shenron\\Sceneset.py", "file_type": "code", "degree": 2}, {"id": "sceneset_get_loss_3", "label": "get_loss_3()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "get_loss_3()", "community": 8, "community_name": "Scene Reconstruction", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\shenron\\Sceneset.py", "file_type": "code", "degree": 3}, {"id": "sceneset_rationale_27", "label": "Class with all the functions to modify OSM scenario and thus generate the points", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Class with all the functions to modify OSM scenario and thus generate the points", "community": 8, "community_name": "Scene Reconstruction", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\shenron\\Sceneset.py", "file_type": "rationale", "degree": 2}, {"id": "sceneset_rationale_285", "label": "Note: angles should be used for power calculation as it is in reflecting surface", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Note: angles should be used for power calculation as it is in reflecting surface", "community": 8, "community_name": "Scene Reconstruction", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\shenron\\Sceneset.py", "file_type": "rationale", "degree": 2}, {"id": "sceneset_rationale_378", "label": "Note: angles should be used for power calculation as it is in reflecting surface", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Note: angles should be used for power calculation as it is in reflecting surface", "community": 8, "community_name": "Scene Reconstruction", "source_file": "scripts\\ISOLATE\\e2e_agent_sem_lidar2shenron_package\\shenron\\Sceneset.py", "file_type": "rationale", "degree": 2}, {"id": "scripts_isolate_sim_radar_utils_cfar_detector_py", "label": "cfar_detector.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "cfar_detector.py", "community": 11, "community_name": "Radar Signal Detection", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\cfar_detector.py", "file_type": "code", "degree": 1}, {"id": "cfar_detector_ca_cfar", "label": "CA_CFAR", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 20.4, "font": {"size": 12, "color": "#ffffff"}, "title": "CA_CFAR", "community": 11, "community_name": "Radar Signal Detection", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\cfar_detector.py", "file_type": "code", "degree": 9}, {"id": "cfar_detector_ca_cfar_init", "label": ".__init__()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": ".__init__()", "community": 11, "community_name": "Radar Signal Detection", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\cfar_detector.py", "file_type": "code", "degree": 1}, {"id": "cfar_detector_ca_cfar_call", "label": ".__call__()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".__call__()", "community": 11, "community_name": "Radar Signal Detection", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\cfar_detector.py", "file_type": "code", "degree": 2}, {"id": "cfar_detector_rationale_5", "label": "Description: ------------ Cell Averaging - Constant False Alarm Rate", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Description: ------------ Cell Averaging - Constant False Alarm Rate", "community": 11, "community_name": "Radar Signal Detection", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\cfar_detector.py", "file_type": "rationale", "degree": 1}, {"id": "cfar_detector_rationale_47", "label": "Description: ------------ Performs the automatic detection o", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Description: ------------ Performs the automatic detection o", "community": 11, "community_name": "Radar Signal Detection", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\cfar_detector.py", "file_type": "rationale", "degree": 1}, {"id": "scripts_isolate_sim_radar_utils_convert2d_img_py", "label": "convert2D_img.py", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "convert2D_img.py", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\convert2D_img.py", "file_type": "code", "degree": 3}, {"id": "convert2d_img_convert2d_img_func", "label": "convert2D_img_func()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 19.2, "font": {"size": 12, "color": "#ffffff"}, "title": "convert2D_img_func()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\convert2D_img.py", "file_type": "code", "degree": 8}, {"id": "convert2d_img_convert_sem_lidar_2d_img_func", "label": "convert_sem_lidar_2D_img_func()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 20.4, "font": {"size": 12, "color": "#ffffff"}, "title": "convert_sem_lidar_2D_img_func()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\convert2D_img.py", "file_type": "code", "degree": 9}, {"id": "convert2d_img_main", "label": "main()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "main()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\convert2D_img.py", "file_type": "code", "degree": 2}, {"id": "convert2d_img_rationale_23", "label": "converts the 3D radar raw data to 2d range-angle image of dimension 256X256", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "converts the 3D radar raw data to 2d range-angle image of dimension 256X256", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\convert2D_img.py", "file_type": "rationale", "degree": 2}, {"id": "convert2d_img_rationale_41", "label": "converts the semantic_lidar data to the range angle 2D image of dimension 256X25", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "converts the semantic_lidar data to the range angle 2D image of dimension 256X25", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\convert2D_img.py", "file_type": "rationale", "degree": 2}, {"id": "scripts_isolate_sim_radar_utils_radar_processor_py", "label": "radar_processor.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "radar_processor.py", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\radar_processor.py", "file_type": "code", "degree": 1}, {"id": "radar_processor_radarprocessor", "label": "RadarProcessor", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 33.1, "font": {"size": 12, "color": "#ffffff"}, "title": "RadarProcessor", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\radar_processor.py", "file_type": "code", "degree": 20}, {"id": "radar_processor_radarprocessor_init", "label": ".__init__()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".__init__()", "community": 11, "community_name": "Radar Signal Detection", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\radar_processor.py", "file_type": "code", "degree": 2}, {"id": "radar_processor_radarprocessor_cal_range_fft", "label": ".cal_range_fft()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 15.8, "font": {"size": 12, "color": "#ffffff"}, "title": ".cal_range_fft()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\radar_processor.py", "file_type": "code", "degree": 5}, {"id": "radar_processor_radarprocessor_cal_doppler_fft", "label": ".cal_doppler_fft()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": ".cal_doppler_fft()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\radar_processor.py", "file_type": "code", "degree": 3}, {"id": "radar_processor_radarprocessor_cal_angle_fft", "label": ".cal_angle_fft()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 14.6, "font": {"size": 12, "color": "#ffffff"}, "title": ".cal_angle_fft()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\radar_processor.py", "file_type": "code", "degree": 4}, {"id": "radar_processor_radarprocessor_convert_to_pcd", "label": ".convert_to_pcd()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".convert_to_pcd()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\radar_processor.py", "file_type": "code", "degree": 2}, {"id": "radar_processor_rationale_53", "label": "apply range window and doppler window and apply fft on each sample to get range", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "apply range window and doppler window and apply fft on each sample to get range", "community": 11, "community_name": "Radar Signal Detection", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\radar_processor.py", "file_type": "rationale", "degree": 2}, {"id": "radar_processor_rationale_57", "label": "apply fft on each chirp to get doppler profile", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "apply fft on each chirp to get doppler profile", "community": 11, "community_name": "Radar Signal Detection", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\radar_processor.py", "file_type": "rationale", "degree": 2}, {"id": "radar_processor_rationale_61", "label": "# apply fft on each antenna to get angle profile", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "# apply fft on each antenna to get angle profile", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\radar_processor.py", "file_type": "rationale", "degree": 2}, {"id": "scripts_isolate_sim_radar_utils_transform_utils_py", "label": "transform_utils.py", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "transform_utils.py", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\transform_utils.py", "file_type": "code", "degree": 3}, {"id": "transform_utils_get_range_angle", "label": "get_range_angle()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "get_range_angle()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\transform_utils.py", "file_type": "code", "degree": 3}, {"id": "transform_utils_cart2polar", "label": "cart2polar()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "cart2polar()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\transform_utils.py", "file_type": "code", "degree": 2}, {"id": "transform_utils_polar_to_cart", "label": "polar_to_cart()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 15.8, "font": {"size": 12, "color": "#ffffff"}, "title": "polar_to_cart()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\transform_utils.py", "file_type": "code", "degree": 5}, {"id": "transform_utils_rationale_19", "label": "convert a polar range angle tensor to cartesian array Input: RATe", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "convert a polar range angle tensor to cartesian array Input: RATe", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\transform_utils.py", "file_type": "rationale", "degree": 1}, {"id": "scripts_isolate_sim_radar_utils_utils_radar_py", "label": "utils_radar.py", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 25.0, "font": {"size": 12, "color": "#ffffff"}, "title": "utils_radar.py", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\utils_radar.py", "file_type": "code", "degree": 13}, {"id": "utils_radar_config_save_path", "label": "config_save_path()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "config_save_path()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\utils_radar.py", "file_type": "code", "degree": 1}, {"id": "utils_radar_create_folder", "label": "create_folder()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "create_folder()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\utils_radar.py", "file_type": "code", "degree": 1}, {"id": "utils_radar_read_time_stamp", "label": "read_time_stamp()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "read_time_stamp()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\utils_radar.py", "file_type": "code", "degree": 1}, {"id": "utils_radar_load_radar_cfg", "label": "load_radar_cfg()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "load_radar_cfg()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\utils_radar.py", "file_type": "code", "degree": 1}, {"id": "utils_radar_reformat_adc_shenron", "label": "reformat_adc_shenron()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 15.8, "font": {"size": 12, "color": "#ffffff"}, "title": "reformat_adc_shenron()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\utils_radar.py", "file_type": "code", "degree": 5}, {"id": "utils_radar_reformat_adc", "label": "reformat_adc()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "reformat_adc()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\utils_radar.py", "file_type": "code", "degree": 2}, {"id": "utils_radar_read_radar_data", "label": "read_radar_data()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "read_radar_data()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\utils_radar.py", "file_type": "code", "degree": 2}, {"id": "utils_radar_read_radar_data_shenron", "label": "read_radar_data_shenron()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "read_radar_data_shenron()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\utils_radar.py", "file_type": "code", "degree": 2}, {"id": "utils_radar_read_radar_pcd", "label": "read_radar_pcd()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "read_radar_pcd()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\utils_radar.py", "file_type": "code", "degree": 1}, {"id": "utils_radar_read_camera_img", "label": "read_camera_img()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "read_camera_img()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\utils_radar.py", "file_type": "code", "degree": 1}, {"id": "utils_radar_read_lidar_pcd", "label": "read_lidar_pcd()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "read_lidar_pcd()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\utils_radar.py", "file_type": "code", "degree": 1}, {"id": "utils_radar_plot_range_doppler", "label": "plot_range_doppler()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "plot_range_doppler()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\utils_radar.py", "file_type": "code", "degree": 1}, {"id": "utils_radar_plot_range_aoa", "label": "plot_range_aoa()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "plot_range_aoa()", "community": 4, "community_name": "Data Conversion Utilities", "source_file": "scripts\\ISOLATE\\sim_radar_utils\\utils_radar.py", "file_type": "code", "degree": 1}, {"id": "src_main_py", "label": "main.py", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "main.py", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "src\\main.py", "file_type": "code", "degree": 3}, {"id": "main_parse_args", "label": "parse_args()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "parse_args()", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "src\\main.py", "file_type": "code", "degree": 3}, {"id": "main_main", "label": "main()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 33.1, "font": {"size": 12, "color": "#ffffff"}, "title": "main()", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "src\\main.py", "file_type": "code", "degree": 20}, {"id": "main_rationale_1", "label": "src/main.py ----------- Scenario-agnostic orchestrator for the CARLA ADAS simu", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "src/main.py ----------- Scenario-agnostic orchestrator for the CARLA ADAS simu", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "src\\main.py", "file_type": "rationale", "degree": 3}, {"id": "src_recorder_py", "label": "recorder.py", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "recorder.py", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "src\\recorder.py", "file_type": "code", "degree": 1}, {"id": "recorder_recorder", "label": "Recorder", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 22.7, "font": {"size": 12, "color": "#ffffff"}, "title": "Recorder", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "src\\recorder.py", "file_type": "code", "degree": 11}, {"id": "recorder_recorder_init", "label": ".__init__()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": ".__init__()", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "src\\recorder.py", "file_type": "code", "degree": 1}, {"id": "recorder_recorder_async_save_image", "label": "._async_save_image()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "._async_save_image()", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "src\\recorder.py", "file_type": "code", "degree": 2}, {"id": "recorder_recorder_save", "label": ".save()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 22.7, "font": {"size": 12, "color": "#ffffff"}, "title": ".save()", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "src\\recorder.py", "file_type": "code", "degree": 11}, {"id": "recorder_recorder_close", "label": ".close()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 19.2, "font": {"size": 12, "color": "#ffffff"}, "title": ".close()", "community": 1, "community_name": "Radar Simulation & Processing", "source_file": "src\\recorder.py", "file_type": "code", "degree": 8}, {"id": "recorder_recorder_generate_videos", "label": "._generate_videos()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "._generate_videos()", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "src\\recorder.py", "file_type": "code", "degree": 3}, {"id": "recorder_recorder_get_actor_class", "label": "._get_actor_class()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "._get_actor_class()", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "src\\recorder.py", "file_type": "code", "degree": 3}, {"id": "recorder_recorder_calculate_relative_metrics", "label": "._calculate_relative_metrics()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 14.6, "font": {"size": 12, "color": "#ffffff"}, "title": "._calculate_relative_metrics()", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "src\\recorder.py", "file_type": "code", "degree": 4}, {"id": "recorder_recorder_to_local_location", "label": "._to_local_location()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "._to_local_location()", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "src\\recorder.py", "file_type": "code", "degree": 3}, {"id": "recorder_rationale_40", "label": "Helper to save image in a background thread.", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Helper to save image in a background thread.", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "src\\recorder.py", "file_type": "rationale", "degree": 1}, {"id": "recorder_rationale_224", "label": "Stitch captured frames into .mp4 files for easy viewing.", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Stitch captured frames into .mp4 files for easy viewing.", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "src\\recorder.py", "file_type": "rationale", "degree": 1}, {"id": "recorder_rationale_254", "label": "Categorise actor into broad ADAS classes.", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Categorise actor into broad ADAS classes.", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "src\\recorder.py", "file_type": "rationale", "degree": 1}, {"id": "recorder_rationale_265", "label": "Calculate relative range, azimuth, and closing velocity. Uses right-han", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Calculate relative range, azimuth, and closing velocity. Uses right-han", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "src\\recorder.py", "file_type": "rationale", "degree": 1}, {"id": "recorder_rationale_306", "label": "Helper to convert world location to transform-local location.", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Helper to convert world location to transform-local location.", "community": 3, "community_name": "Data Recording & Heatmaps", "source_file": "src\\recorder.py", "file_type": "rationale", "degree": 1}, {"id": "src_scenario_loader_py", "label": "scenario_loader.py", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "scenario_loader.py", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "src\\scenario_loader.py", "file_type": "code", "degree": 3}, {"id": "scenario_loader_list_scenarios", "label": "list_scenarios()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 15.8, "font": {"size": 12, "color": "#ffffff"}, "title": "list_scenarios()", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "src\\scenario_loader.py", "file_type": "code", "degree": 5}, {"id": "scenario_loader_load_scenario", "label": "load_scenario()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 15.8, "font": {"size": 12, "color": "#ffffff"}, "title": "load_scenario()", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "src\\scenario_loader.py", "file_type": "code", "degree": 5}, {"id": "scenario_loader_rationale_1", "label": "src/scenario_loader.py ---------------------- Dynamic scenario discovery and loa", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "src/scenario_loader.py ---------------------- Dynamic scenario discovery and loa", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "src\\scenario_loader.py", "file_type": "rationale", "degree": 2}, {"id": "scenario_loader_rationale_29", "label": "Discover all scenario modules inside the 'scenarios' package. Returns a sort", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Discover all scenario modules inside the 'scenarios' package. Returns a sort", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "src\\scenario_loader.py", "file_type": "rationale", "degree": 2}, {"id": "scenario_loader_rationale_46", "label": "Dynamically import scenario module 'scenarios.<name>' and return an instance", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Dynamically import scenario module 'scenarios.<name>' and return an instance", "community": 5, "community_name": "Web Dashboard & Loader", "source_file": "src\\scenario_loader.py", "file_type": "rationale", "degree": 2}, {"id": "src_sensors_py", "label": "sensors.py", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "sensors.py", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "src\\sensors.py", "file_type": "code", "degree": 1}, {"id": "sensors_sensormanager", "label": "SensorManager", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 22.7, "font": {"size": 12, "color": "#ffffff"}, "title": "SensorManager", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "src\\sensors.py", "file_type": "code", "degree": 11}, {"id": "sensors_sensormanager_init", "label": ".__init__()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": ".__init__()", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "src\\sensors.py", "file_type": "code", "degree": 1}, {"id": "sensors_sensormanager_spawn_sensors", "label": ".spawn_sensors()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 16.9, "font": {"size": 12, "color": "#ffffff"}, "title": ".spawn_sensors()", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "src\\sensors.py", "file_type": "code", "degree": 6}, {"id": "sensors_sensormanager_spawn_camera", "label": "._spawn_camera()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "._spawn_camera()", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "src\\sensors.py", "file_type": "code", "degree": 2}, {"id": "sensors_sensormanager_spawn_camera_tpp", "label": "._spawn_camera_tpp()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "._spawn_camera_tpp()", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "src\\sensors.py", "file_type": "code", "degree": 2}, {"id": "sensors_sensormanager_spawn_radar", "label": "._spawn_radar()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "._spawn_radar()", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "src\\sensors.py", "file_type": "code", "degree": 2}, {"id": "sensors_sensormanager_spawn_lidar", "label": "._spawn_lidar()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": "._spawn_lidar()", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "src\\sensors.py", "file_type": "code", "degree": 2}, {"id": "sensors_sensormanager_get_data", "label": ".get_data()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".get_data()", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "src\\sensors.py", "file_type": "code", "degree": 2}, {"id": "sensors_sensormanager_destroy", "label": ".destroy()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": ".destroy()", "community": 0, "community_name": "Scenario Framework & Maneuvers", "source_file": "src\\sensors.py", "file_type": "code", "degree": 3}, {"id": "src_utils_py", "label": "utils.py", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "utils.py", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "src\\utils.py", "file_type": "code", "degree": 1}, {"id": "utils_get_weather_preset", "label": "get_weather_preset()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.5, "font": {"size": 0, "color": "#ffffff"}, "title": "get_weather_preset()", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "src\\utils.py", "file_type": "code", "degree": 3}, {"id": "utils_rationale_4", "label": "Map names (case-insensitive, partial matching) to carla.WeatherParameters.", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.2, "font": {"size": 0, "color": "#ffffff"}, "title": "Map names (case-insensitive, partial matching) to carla.WeatherParameters.", "community": 2, "community_name": "Orchestration & Sensor Management", "source_file": "src\\utils.py", "file_type": "rationale", "degree": 1}, {"id": "tmp_check_lidar_py", "label": "check_lidar.py", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "check_lidar.py", "community": 32, "community_name": "Community 32", "source_file": "tmp\\check_lidar.py", "file_type": "code", "degree": 0}];
|
|
const RAW_EDGES = [{"from": "dashboard_app_py", "to": "app_pollingfilter", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_app_py", "to": "app_is_simulation_running", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_app_py", "to": "app_index", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_app_py", "to": "app_get_config", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_app_py", "to": "app_get_scenario_params", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_app_py", "to": "app_simulator_status", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_app_py", "to": "app_simulator_kill", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_app_py", "to": "app_shutdown", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_app_py", "to": "app_simulator_idle", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_app_py", "to": "app_simulator_wake", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_app_py", "to": "app_simulator_launch", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_app_py", "to": "app_stop_simulation", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_app_py", "to": "app_run_simulation", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_app_py", "to": "app_rationale_1", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_pollingfilter", "to": "app_pollingfilter_filter", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_pollingfilter_filter", "to": "braking_brakingscenario_setup", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_pollingfilter_filter", "to": "cutin_cutinscenario_setup", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_pollingfilter_filter", "to": "obstacle_obstaclescenario_setup", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_pollingfilter_filter", "to": "showcase_showcasescenario_setup", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_pollingfilter_filter", "to": "spawn_at_spectator_spawn_here", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_pollingfilter_filter", "to": "main_main", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_pollingfilter_filter", "to": "recorder_recorder_save", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_is_simulation_running", "to": "app_simulator_status", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_is_simulation_running", "to": "app_rationale_52", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_get_config", "to": "scenario_loader_list_scenarios", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_get_scenario_params", "to": "scenario_loader_load_scenario", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_simulator_kill", "to": "app_rationale_136", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_shutdown", "to": "app_rationale_153", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_shutdown", "to": "recorder_recorder_close", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "dashboard_static_app_js", "to": "app_resetidletimer", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_static_app_js", "to": "app_updatesimulatorstatus", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_static_app_js", "to": "app_appendlog", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_static_app_js", "to": "app_startstream", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_static_app_js", "to": "app_rendershenrontelemetry", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_static_app_js", "to": "app_updateshenronprogress", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_static_app_js", "to": "app_chip", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_static_app_js", "to": "app_setloadingstate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "dashboard_static_app_js", "to": "app_loadscenarioparams", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_resetidletimer", "to": "app_startstream", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_appendlog", "to": "app_startstream", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_startstream", "to": "app_setloadingstate", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_startstream", "to": "app_rendershenrontelemetry", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_startstream", "to": "app_updateshenronprogress", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_rendershenrontelemetry", "to": "app_chip", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_base_py", "to": "abc", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_base_py", "to": "base_scenariobase", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_base_py", "to": "base_name", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_base_py", "to": "base_setup", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_base_py", "to": "base_step", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_base_py", "to": "base_cleanup", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_base_py", "to": "base_weather", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_base_py", "to": "base_max_frames", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_base_py", "to": "base_ego_spawn_point", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_base_py", "to": "base_rationale_1", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base_scenariobase", "to": "abc", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base_scenariobase", "to": "base_scenariobase_init", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base_scenariobase", "to": "base_scenariobase_log_frame", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base_scenariobase", "to": "base_scenariobase_on_ego_spawned", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base_scenariobase", "to": "base_scenariobase_get_scenario_metadata", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base_scenariobase", "to": "base_scenariobase_apply_parameters", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base_scenariobase", "to": "base_scenariobase_destroy_actors", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base_scenariobase", "to": "base_scenariobase_get_waypoint_ahead", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base_scenariobase", "to": "base_rationale_23", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base_scenariobase", "to": "braking_brakingscenario", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase", "to": "braking_rationale_1", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase", "to": "braking_rationale_23", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase", "to": "cutin_cutinscenario", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase", "to": "cutin_rationale_1", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase", "to": "cutin_rationale_21", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase", "to": "obstacle_obstaclescenario", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase", "to": "obstacle_rationale_1", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase", "to": "obstacle_rationale_20", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase", "to": "showcase_showcasescenario", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase", "to": "showcase_rationale_1", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase", "to": "showcase_rationale_25", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase", "to": "showcase_rationale_83", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase", "to": "scenario_loader_rationale_1", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase", "to": "scenario_loader_rationale_29", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase", "to": "scenario_loader_rationale_46", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase_log_frame", "to": "base_rationale_94", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base_scenariobase_log_frame", "to": "braking_brakingscenario_step", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase_log_frame", "to": "cutin_cutinscenario_step", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase_log_frame", "to": "obstacle_obstaclescenario_step", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase_log_frame", "to": "showcase_showcasescenario_step", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase_on_ego_spawned", "to": "base_rationale_144", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base_scenariobase_on_ego_spawned", "to": "main_main", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase_get_scenario_metadata", "to": "base_rationale_150", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base_scenariobase_apply_parameters", "to": "base_rationale_160", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base_scenariobase_apply_parameters", "to": "main_main", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase_destroy_actors", "to": "base_rationale_186", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base_scenariobase_destroy_actors", "to": "sensors_sensormanager_destroy", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase_destroy_actors", "to": "braking_brakingscenario_cleanup", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase_destroy_actors", "to": "cutin_cutinscenario_cleanup", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase_destroy_actors", "to": "obstacle_obstaclescenario_cleanup", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase_destroy_actors", "to": "showcase_showcasescenario_cleanup", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase_get_waypoint_ahead", "to": "base_rationale_199", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base_scenariobase_get_waypoint_ahead", "to": "braking_brakingscenario_setup", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase_get_waypoint_ahead", "to": "cutin_cutinscenario_setup", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base_scenariobase_get_waypoint_ahead", "to": "obstacle_obstaclescenario_setup", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "scenarios_braking_py", "to": "braking_brakingscenario", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_braking_py", "to": "braking_name", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_braking_py", "to": "braking_ego_spawn_point", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_braking_py", "to": "braking_rationale_1", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "braking_brakingscenario", "to": "scenariobase", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "braking_brakingscenario", "to": "braking_brakingscenario_init", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "braking_brakingscenario", "to": "braking_brakingscenario_setup", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "braking_brakingscenario", "to": "braking_brakingscenario_step", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "braking_brakingscenario", "to": "braking_brakingscenario_cleanup", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "braking_brakingscenario", "to": "braking_brakingscenario_get_scenario_metadata", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "braking_brakingscenario", "to": "braking_rationale_23", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenariobase", "to": "cutin_cutinscenario", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenariobase", "to": "obstacle_obstaclescenario", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenariobase", "to": "showcase_showcasescenario", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_cutin_py", "to": "cutin_cutinscenario", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_cutin_py", "to": "cutin_name", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_cutin_py", "to": "cutin_ego_spawn_point", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_cutin_py", "to": "cutin_rationale_1", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cutin_cutinscenario", "to": "cutin_cutinscenario_init", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cutin_cutinscenario", "to": "cutin_cutinscenario_setup", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cutin_cutinscenario", "to": "cutin_cutinscenario_step", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cutin_cutinscenario", "to": "cutin_cutinscenario_cleanup", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cutin_cutinscenario", "to": "cutin_cutinscenario_get_scenario_metadata", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cutin_cutinscenario", "to": "cutin_rationale_21", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_obstacle_py", "to": "obstacle_obstaclescenario", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_obstacle_py", "to": "obstacle_name", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_obstacle_py", "to": "obstacle_ego_spawn_point", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_obstacle_py", "to": "obstacle_rationale_1", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "obstacle_obstaclescenario", "to": "obstacle_obstaclescenario_init", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "obstacle_obstaclescenario", "to": "obstacle_obstaclescenario_setup", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "obstacle_obstaclescenario", "to": "obstacle_obstaclescenario_step", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "obstacle_obstaclescenario", "to": "obstacle_obstaclescenario_cleanup", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "obstacle_obstaclescenario", "to": "obstacle_obstaclescenario_get_scenario_metadata", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "obstacle_obstaclescenario", "to": "obstacle_rationale_20", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "obstacle_obstaclescenario_get_scenario_metadata", "to": "main_main", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "scenarios_showcase_py", "to": "showcase_showcasescenario", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_showcase_py", "to": "showcase_name", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_showcase_py", "to": "showcase_ego_spawn_point", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenarios_showcase_py", "to": "showcase_rationale_1", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "showcase_showcasescenario", "to": "showcase_showcasescenario_setup", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "showcase_showcasescenario", "to": "showcase_showcasescenario_get_steering_to_target", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "showcase_showcasescenario", "to": "showcase_showcasescenario_step", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "showcase_showcasescenario", "to": "showcase_showcasescenario_cleanup", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "showcase_showcasescenario_setup", "to": "showcase_rationale_25", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "showcase_showcasescenario_setup", "to": "main_main", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "showcase_showcasescenario_get_steering_to_target", "to": "showcase_showcasescenario_step", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "showcase_showcasescenario_step", "to": "showcase_rationale_83", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "showcase_showcasescenario_step", "to": "main_main", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "showcase_showcasescenario_cleanup", "to": "main_main", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "scripts_compare_metrology_py", "to": "compare_metrology_analyze_session", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_data_to_mcap_py", "to": "data_to_mcap_render_heatmap", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_data_to_mcap_py", "to": "data_to_mcap_postprocess_ra", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_data_to_mcap_py", "to": "data_to_mcap_scan_convert_ra", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_data_to_mcap_py", "to": "data_to_mcap_load_frames", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_data_to_mcap_py", "to": "data_to_mcap_convert_folder", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_data_to_mcap_py", "to": "data_to_mcap_main", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "data_to_mcap_render_heatmap", "to": "data_to_mcap_convert_folder", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "data_to_mcap_render_heatmap", "to": "data_to_mcap_rationale_88", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "data_to_mcap_render_heatmap", "to": "recorder_recorder_save", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "data_to_mcap_postprocess_ra", "to": "data_to_mcap_convert_folder", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "data_to_mcap_postprocess_ra", "to": "data_to_mcap_rationale_112", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "data_to_mcap_scan_convert_ra", "to": "data_to_mcap_convert_folder", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "data_to_mcap_scan_convert_ra", "to": "data_to_mcap_rationale_135", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "data_to_mcap_load_frames", "to": "data_to_mcap_convert_folder", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "data_to_mcap_convert_folder", "to": "data_to_mcap_main", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "data_to_mcap_convert_folder", "to": "main_main", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "scripts_generate_shenron_py", "to": "generate_shenron_get_gpu_info", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_generate_shenron_py", "to": "generate_shenron_process_session", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_generate_shenron_py", "to": "generate_shenron_main", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "generate_shenron_get_gpu_info", "to": "generate_shenron_process_session", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "generate_shenron_get_gpu_info", "to": "generate_shenron_rationale_21", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "generate_shenron_process_session", "to": "generate_shenron_main", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "generate_shenron_process_session", "to": "model_wrapper_shenronradarmodel", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "generate_shenron_process_session", "to": "recorder_recorder_save", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "generate_shenron_process_session", "to": "model_wrapper_shenronradarmodel_get_radar_specs", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "generate_shenron_process_session", "to": "model_wrapper_shenronradarmodel_process", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "generate_shenron_process_session", "to": "model_wrapper_shenronradarmodel_get_last_metrology", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "generate_shenron_process_session", "to": "model_wrapper_shenronradarmodel_get_signal_metrics", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "generate_shenron_rationale_21", "to": "model_wrapper_shenronradarmodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "scripts_get_pos_py", "to": "get_pos_get_pos", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_spawn_at_spectator_py", "to": "spawn_at_spectator_spawn_here", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "spawn_at_spectator_spawn_here", "to": "main_parse_args", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "scripts_test_shenron_py", "to": "test_shenron_render_heatmap", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_test_shenron_py", "to": "test_shenron_fastheatmapengine", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_test_shenron_py", "to": "test_shenron_postprocess_ra", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_test_shenron_py", "to": "test_shenron_scan_convert_ra", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_test_shenron_py", "to": "test_shenron_load_frames", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_test_shenron_py", "to": "test_shenron_run_testbench", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "test_shenron_render_heatmap", "to": "test_shenron_run_testbench", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "test_shenron_render_heatmap", "to": "test_shenron_rationale_138", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "test_shenron_render_heatmap", "to": "recorder_recorder_save", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "test_shenron_fastheatmapengine", "to": "test_shenron_fastheatmapengine_init", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "test_shenron_fastheatmapengine", "to": "test_shenron_fastheatmapengine_render", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "test_shenron_fastheatmapengine", "to": "test_shenron_run_testbench", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "test_shenron_fastheatmapengine", "to": "test_shenron_rationale_167", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "test_shenron_fastheatmapengine", "to": "model_wrapper_shenronradarmodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "test_shenron_fastheatmapengine_render", "to": "test_shenron_run_testbench", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "test_shenron_fastheatmapengine_render", "to": "recorder_recorder_save", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "test_shenron_postprocess_ra", "to": "test_shenron_run_testbench", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "test_shenron_postprocess_ra", "to": "test_shenron_rationale_208", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "test_shenron_scan_convert_ra", "to": "test_shenron_run_testbench", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "test_shenron_scan_convert_ra", "to": "test_shenron_rationale_247", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "test_shenron_load_frames", "to": "test_shenron_run_testbench", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "test_shenron_run_testbench", "to": "model_wrapper_shenronradarmodel", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "test_shenron_run_testbench", "to": "recorder_recorder_save", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "test_shenron_run_testbench", "to": "model_wrapper_shenronradarmodel_process", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "test_shenron_run_testbench", "to": "model_wrapper_shenronradarmodel_get_last_metrology", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "test_shenron_run_testbench", "to": "model_wrapper_shenronradarmodel_get_signal_metrics", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "test_shenron_rationale_138", "to": "model_wrapper_shenronradarmodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "test_shenron_rationale_167", "to": "model_wrapper_shenronradarmodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "test_shenron_rationale_208", "to": "model_wrapper_shenronradarmodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "test_shenron_rationale_247", "to": "model_wrapper_shenronradarmodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "scripts_test_shenron_model_py", "to": "test_shenron_model_run_smoke_test", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "test_shenron_model_run_smoke_test", "to": "model_wrapper_shenronradarmodel", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "test_shenron_model_run_smoke_test", "to": "model_wrapper_shenronradarmodel_process", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "scripts_track_full_state_py", "to": "track_full_state_track_full_state", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_track_peaks_py", "to": "track_peaks_get_peak_tracking", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_analysis_compare_iterations_py", "to": "compare_iterations_compare_folders", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_analysis_data_inspector_py", "to": "data_inspector_load_frame", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_analysis_data_inspector_py", "to": "data_inspector_inspect_radar", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_analysis_data_inspector_py", "to": "data_inspector_inspect_lidar", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_analysis_data_inspector_py", "to": "data_inspector_inspect_gt", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_analysis_data_inspector_py", "to": "data_inspector_plot_radar", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_analysis_data_inspector_py", "to": "data_inspector_plot_lidar", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "data_inspector_load_frame", "to": "data_inspector_inspect_gt", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_analysis_deep_metrology_py", "to": "deep_metrology_power_law", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_analysis_deep_metrology_py", "to": "deep_metrology_analyze_iteration", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_analysis_deep_metrology_py", "to": "deep_metrology_run_metrology_suite", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "deep_metrology_power_law", "to": "deep_metrology_run_metrology_suite", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "deep_metrology_analyze_iteration", "to": "deep_metrology_run_metrology_suite", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_analysis_plot_iterations_py", "to": "plot_iterations_plot_comparison", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_analysis_plot_iterations_py", "to": "plot_iterations_rationale_59", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "plot_iterations_plot_comparison", "to": "recorder_recorder_close", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "scripts_analysis_research_metrology_py", "to": "research_metrology_research_metrology", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_analysis_sensitivity_sweep_py", "to": "sensitivity_sweep_run_sensitivity_sweep", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sensitivity_sweep_run_sensitivity_sweep", "to": "model_wrapper_shenronradarmodel", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "sensitivity_sweep_run_sensitivity_sweep", "to": "model_wrapper_shenronradarmodel_process", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "sensitivity_sweep_run_sensitivity_sweep", "to": "recorder_recorder_close", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "scripts_analysis_sensitivity_sweep_207_py", "to": "sensitivity_sweep_207_run_sensitivity_sweep", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sensitivity_sweep_207_run_sensitivity_sweep", "to": "model_wrapper_shenronradarmodel", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "sensitivity_sweep_207_run_sensitivity_sweep", "to": "model_wrapper_shenronradarmodel_process", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "sensitivity_sweep_207_run_sensitivity_sweep", "to": "recorder_recorder_close", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "scripts_analysis_verify_frame_py", "to": "verify_frame_verify_frame", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "verify_frame_verify_frame", "to": "model_wrapper_shenronradarmodel", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "verify_frame_verify_frame", "to": "model_wrapper_shenronradarmodel_process", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "verify_frame_verify_frame", "to": "recorder_recorder_close", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "scripts_analysis_verify_metrology_logic_py", "to": "verify_metrology_logic_verify_signal_flow", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "verify_metrology_logic_verify_signal_flow", "to": "model_wrapper_shenronradarmodel", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "verify_metrology_logic_verify_signal_flow", "to": "model_wrapper_shenronradarmodel_process", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "verify_metrology_logic_verify_signal_flow", "to": "model_wrapper_shenronradarmodel_get_last_metrology", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "verify_metrology_logic_verify_signal_flow", "to": "model_wrapper_shenronradarmodel_get_signal_metrics", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "scripts_isolate_model_wrapper_py", "to": "model_wrapper_shenronradarmodel", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "model_wrapper_shenronradarmodel", "to": "model_wrapper_shenronradarmodel_init", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "model_wrapper_shenronradarmodel", "to": "model_wrapper_shenronradarmodel_sync_configs", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "model_wrapper_shenronradarmodel", "to": "model_wrapper_shenronradarmodel_process", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "model_wrapper_shenronradarmodel", "to": "model_wrapper_shenronradarmodel_get_last_metrology", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "model_wrapper_shenronradarmodel", "to": "model_wrapper_shenronradarmodel_get_signal_metrics", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "model_wrapper_shenronradarmodel", "to": "model_wrapper_shenronradarmodel_get_radar_specs", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "model_wrapper_shenronradarmodel", "to": "configureradar_radar", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_shenronradarmodel", "to": "radar_processor_radarprocessor", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_shenronradarmodel_init", "to": "model_wrapper_shenronradarmodel_sync_configs", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "model_wrapper_shenronradarmodel_init", "to": "model_wrapper_rationale_25", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "model_wrapper_shenronradarmodel_init", "to": "configureradar_radar", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_shenronradarmodel_init", "to": "radar_processor_radarprocessor", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_shenronradarmodel_sync_configs", "to": "model_wrapper_shenronradarmodel_process", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "model_wrapper_shenronradarmodel_sync_configs", "to": "model_wrapper_rationale_57", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "model_wrapper_shenronradarmodel_process", "to": "model_wrapper_rationale_79", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "model_wrapper_shenronradarmodel_process", "to": "lidar_run_lidar", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_shenronradarmodel_process", "to": "utils_radar_reformat_adc_shenron", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_shenronradarmodel_process", "to": "radar_processor_radarprocessor_cal_range_fft", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_shenronradarmodel_process", "to": "radar_processor_radarprocessor_cal_doppler_fft", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_shenronradarmodel_process", "to": "radar_processor_radarprocessor_convert_to_pcd", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_shenronradarmodel_get_last_metrology", "to": "model_wrapper_rationale_131", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "model_wrapper_shenronradarmodel_get_signal_metrics", "to": "model_wrapper_rationale_144", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "model_wrapper_shenronradarmodel_get_radar_specs", "to": "model_wrapper_rationale_224", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "model_wrapper_rationale_25", "to": "configureradar_radar", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_rationale_25", "to": "radar_processor_radarprocessor", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_rationale_57", "to": "configureradar_radar", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_rationale_57", "to": "radar_processor_radarprocessor", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_rationale_79", "to": "configureradar_radar", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_rationale_79", "to": "radar_processor_radarprocessor", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_rationale_131", "to": "configureradar_radar", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_rationale_131", "to": "radar_processor_radarprocessor", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_rationale_144", "to": "configureradar_radar", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_rationale_144", "to": "radar_processor_radarprocessor", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_rationale_224", "to": "configureradar_radar", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "model_wrapper_rationale_224", "to": "radar_processor_radarprocessor", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_configureradar_py", "to": "configureradar_radar", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "configureradar_radar", "to": "configureradar_radar_init", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "configureradar_radar", "to": "configureradar_radar_get_noise", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "configureradar_radar", "to": "configureradar_radar_load_antenna_luts", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "configureradar_radar", "to": "configureradar_rationale_8", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "configureradar_radar", "to": "lidar_rationale_19", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "configureradar_radar", "to": "lidar_rationale_85", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "configureradar_radar", "to": "sceneset_sceneset", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "configureradar_radar", "to": "sceneset_rationale_27", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "configureradar_radar", "to": "sceneset_rationale_285", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "configureradar_radar", "to": "sceneset_rationale_378", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "configureradar_radar", "to": "lidar_run_lidar", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "configureradar_radar_get_noise", "to": "heatmap_gen_heatmap_gen", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "configureradar_radar_get_noise", "to": "heatmap_gen_fast_heatmap_gen", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "configureradar_radar_load_antenna_luts", "to": "configureradar_rationale_170", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_lidar_py", "to": "lidar_map_carla_semantic_lidar_latest", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_lidar_py", "to": "lidar_check_save_path", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_lidar_py", "to": "lidar_rotate_points", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_lidar_py", "to": "lidar_cropped_forradar", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_lidar_py", "to": "lidar_run_lidar", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "lidar_map_carla_semantic_lidar_latest", "to": "lidar_run_lidar", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "lidar_map_carla_semantic_lidar_latest", "to": "lidar_rationale_19", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "lidar_rotate_points", "to": "lidar_cropped_forradar", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "lidar_cropped_forradar", "to": "lidar_run_lidar", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "lidar_cropped_forradar", "to": "lidar_rationale_85", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "lidar_cropped_forradar", "to": "sceneset_sceneset", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "lidar_cropped_forradar", "to": "sceneset_sceneset_specularpoints", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "lidar_run_lidar", "to": "lidar_utils_new_map_material", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "lidar_run_lidar", "to": "heatmap_gen_fast_heatmap_gen", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "lidar_run_lidar", "to": "main_run_shenron", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "lidar_run_lidar", "to": "convert2d_img_convert_sem_lidar_2d_img_func", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_lidar_utils_py", "to": "lidar_utils_create_digital_twin", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_lidar_utils_py", "to": "lidar_utils_map_material", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_lidar_utils_py", "to": "lidar_utils_new_map_material", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "lidar_utils_create_digital_twin", "to": "lidar_utils_rationale_12", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_main_py", "to": "main_run_shenron", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_map_carla_semantic_lidar_shenron_py", "to": "map_carla_semantic_lidar_shenron_check_save_path", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_map_carla_semantic_lidar_shenron_py", "to": "map_carla_semantic_lidar_shenron_main", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "map_carla_semantic_lidar_shenron_check_save_path", "to": "map_carla_semantic_lidar_shenron_main", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "map_carla_semantic_lidar_shenron_main", "to": "recorder_recorder_save", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_transform_dsp_utils_py", "to": "transform_dsp_utils_separate_real_imag", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_transform_dsp_utils_py", "to": "transform_dsp_utils_separate_mag_phase", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_transform_dsp_utils_py", "to": "transform_dsp_utils_convert_adc_to_3d_fft", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_transform_dsp_utils_py", "to": "transform_dsp_utils_cart2polar", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_transform_dsp_utils_py", "to": "transform_dsp_utils_polar_to_cart", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_transform_dsp_utils_py", "to": "transform_dsp_utils_plot_data", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_transform_dsp_utils_py", "to": "transform_dsp_utils_cfar_filtered_output", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_transform_dsp_utils_py", "to": "transform_dsp_utils_ca_cfar", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "transform_dsp_utils_convert_adc_to_3d_fft", "to": "transform_dsp_utils_rationale_28", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "transform_dsp_utils_cart2polar", "to": "transform_dsp_utils_polar_to_cart", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "transform_dsp_utils_polar_to_cart", "to": "transform_dsp_utils_rationale_68", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "transform_dsp_utils_ca_cfar", "to": "transform_dsp_utils_ca_cfar_init", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "transform_dsp_utils_ca_cfar", "to": "transform_dsp_utils_ca_cfar_call", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "transform_dsp_utils_ca_cfar", "to": "transform_dsp_utils_rationale_173", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "transform_dsp_utils_ca_cfar_call", "to": "transform_dsp_utils_rationale_215", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_shenron_heatmap_gen_py", "to": "heatmap_gen_heatmap_gen", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_shenron_heatmap_gen_fast_py", "to": "heatmap_gen_fast_get_gpu_id_most_avlbl_mem", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_shenron_heatmap_gen_fast_py", "to": "heatmap_gen_fast_heatmap_gen", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "heatmap_gen_fast_get_gpu_id_most_avlbl_mem", "to": "heatmap_gen_fast_heatmap_gen", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_shenron_sceneset_py", "to": "sceneset_cart2sph", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_shenron_sceneset_py", "to": "sceneset_sph2cart", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_shenron_sceneset_py", "to": "sceneset_sceneset", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_shenron_sceneset_py", "to": "sceneset_get_loss", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_shenron_sceneset_py", "to": "sceneset_get_loss_2", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_e2e_agent_sem_lidar2shenron_package_shenron_sceneset_py", "to": "sceneset_get_loss_3", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sceneset_cart2sph", "to": "sceneset_sceneset_removeocclusion", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sceneset_sph2cart", "to": "sceneset_sceneset_removeocclusion", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sceneset_sceneset", "to": "sceneset_sceneset_init", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sceneset_sceneset", "to": "sceneset_sceneset_removeocclusion", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sceneset_sceneset", "to": "sceneset_sceneset_removeocclusion_hiddenpoint", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sceneset_sceneset", "to": "sceneset_sceneset_specularpoints", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sceneset_sceneset", "to": "sceneset_rationale_27", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sceneset_sceneset_specularpoints", "to": "sceneset_get_loss_3", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sceneset_get_loss_2", "to": "sceneset_rationale_285", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sceneset_get_loss_3", "to": "sceneset_rationale_378", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_cfar_detector_py", "to": "cfar_detector_ca_cfar", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cfar_detector_ca_cfar", "to": "cfar_detector_ca_cfar_init", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cfar_detector_ca_cfar", "to": "cfar_detector_ca_cfar_call", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cfar_detector_ca_cfar", "to": "cfar_detector_rationale_5", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cfar_detector_ca_cfar", "to": "radar_processor_radarprocessor", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "cfar_detector_ca_cfar", "to": "radar_processor_rationale_53", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "cfar_detector_ca_cfar", "to": "radar_processor_rationale_57", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "cfar_detector_ca_cfar", "to": "radar_processor_rationale_61", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "cfar_detector_ca_cfar", "to": "radar_processor_radarprocessor_init", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "cfar_detector_ca_cfar_call", "to": "cfar_detector_rationale_47", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_convert2d_img_py", "to": "convert2d_img_convert2d_img_func", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_convert2d_img_py", "to": "convert2d_img_convert_sem_lidar_2d_img_func", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_convert2d_img_py", "to": "convert2d_img_main", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "convert2d_img_convert2d_img_func", "to": "convert2d_img_rationale_23", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "convert2d_img_convert2d_img_func", "to": "radar_processor_radarprocessor", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "convert2d_img_convert2d_img_func", "to": "utils_radar_reformat_adc_shenron", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "convert2d_img_convert2d_img_func", "to": "radar_processor_radarprocessor_cal_range_fft", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "convert2d_img_convert2d_img_func", "to": "radar_processor_radarprocessor_cal_angle_fft", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "convert2d_img_convert2d_img_func", "to": "transform_utils_get_range_angle", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "convert2d_img_convert2d_img_func", "to": "transform_utils_polar_to_cart", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "convert2d_img_convert_sem_lidar_2d_img_func", "to": "convert2d_img_rationale_41", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "convert2d_img_convert_sem_lidar_2d_img_func", "to": "radar_processor_radarprocessor", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "convert2d_img_convert_sem_lidar_2d_img_func", "to": "utils_radar_reformat_adc_shenron", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "convert2d_img_convert_sem_lidar_2d_img_func", "to": "radar_processor_radarprocessor_cal_range_fft", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "convert2d_img_convert_sem_lidar_2d_img_func", "to": "radar_processor_radarprocessor_cal_angle_fft", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "convert2d_img_convert_sem_lidar_2d_img_func", "to": "transform_utils_get_range_angle", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "convert2d_img_convert_sem_lidar_2d_img_func", "to": "transform_utils_polar_to_cart", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "convert2d_img_main", "to": "radar_processor_radarprocessor", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "convert2d_img_rationale_23", "to": "radar_processor_radarprocessor", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "convert2d_img_rationale_41", "to": "radar_processor_radarprocessor", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "scripts_isolate_sim_radar_utils_radar_processor_py", "to": "radar_processor_radarprocessor", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "radar_processor_radarprocessor", "to": "radar_processor_radarprocessor_init", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "radar_processor_radarprocessor", "to": "radar_processor_radarprocessor_cal_range_fft", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "radar_processor_radarprocessor", "to": "radar_processor_radarprocessor_cal_doppler_fft", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "radar_processor_radarprocessor", "to": "radar_processor_radarprocessor_cal_angle_fft", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "radar_processor_radarprocessor", "to": "radar_processor_radarprocessor_convert_to_pcd", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "radar_processor_radarprocessor_cal_range_fft", "to": "radar_processor_rationale_53", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "radar_processor_radarprocessor_cal_doppler_fft", "to": "radar_processor_rationale_57", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "radar_processor_radarprocessor_cal_angle_fft", "to": "radar_processor_rationale_61", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_transform_utils_py", "to": "transform_utils_get_range_angle", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_transform_utils_py", "to": "transform_utils_cart2polar", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_transform_utils_py", "to": "transform_utils_polar_to_cart", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "transform_utils_cart2polar", "to": "transform_utils_polar_to_cart", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "transform_utils_polar_to_cart", "to": "transform_utils_rationale_19", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_utils_radar_py", "to": "utils_radar_config_save_path", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_utils_radar_py", "to": "utils_radar_create_folder", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_utils_radar_py", "to": "utils_radar_read_time_stamp", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_utils_radar_py", "to": "utils_radar_load_radar_cfg", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_utils_radar_py", "to": "utils_radar_reformat_adc_shenron", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_utils_radar_py", "to": "utils_radar_reformat_adc", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_utils_radar_py", "to": "utils_radar_read_radar_data", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_utils_radar_py", "to": "utils_radar_read_radar_data_shenron", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_utils_radar_py", "to": "utils_radar_read_radar_pcd", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_utils_radar_py", "to": "utils_radar_read_camera_img", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_utils_radar_py", "to": "utils_radar_read_lidar_pcd", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_utils_radar_py", "to": "utils_radar_plot_range_doppler", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scripts_isolate_sim_radar_utils_utils_radar_py", "to": "utils_radar_plot_range_aoa", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "utils_radar_reformat_adc_shenron", "to": "utils_radar_read_radar_data_shenron", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "utils_radar_reformat_adc", "to": "utils_radar_read_radar_data", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "src_main_py", "to": "main_parse_args", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "src_main_py", "to": "main_main", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "src_main_py", "to": "main_rationale_1", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "main_parse_args", "to": "main_main", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "main_main", "to": "scenario_loader_list_scenarios", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "main_main", "to": "scenario_loader_load_scenario", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "main_main", "to": "utils_get_weather_preset", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "main_main", "to": "sensors_sensormanager_destroy", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "main_main", "to": "sensors_sensormanager", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "main_main", "to": "sensors_sensormanager_spawn_sensors", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "main_main", "to": "recorder_recorder", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "main_main", "to": "sensors_sensormanager_get_data", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "main_main", "to": "recorder_recorder_save", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "main_main", "to": "recorder_recorder_close", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "main_rationale_1", "to": "sensors_sensormanager", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "main_rationale_1", "to": "recorder_recorder", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "src_recorder_py", "to": "recorder_recorder", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "recorder_recorder", "to": "recorder_recorder_init", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "recorder_recorder", "to": "recorder_recorder_async_save_image", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "recorder_recorder", "to": "recorder_recorder_save", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "recorder_recorder", "to": "recorder_recorder_close", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "recorder_recorder", "to": "recorder_recorder_generate_videos", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "recorder_recorder", "to": "recorder_recorder_get_actor_class", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "recorder_recorder", "to": "recorder_recorder_calculate_relative_metrics", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "recorder_recorder", "to": "recorder_recorder_to_local_location", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "recorder_recorder_async_save_image", "to": "recorder_rationale_40", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "recorder_recorder_save", "to": "recorder_recorder_calculate_relative_metrics", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "recorder_recorder_save", "to": "recorder_recorder_get_actor_class", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "recorder_recorder_close", "to": "recorder_recorder_generate_videos", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "recorder_recorder_generate_videos", "to": "recorder_rationale_224", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "recorder_recorder_get_actor_class", "to": "recorder_rationale_254", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "recorder_recorder_calculate_relative_metrics", "to": "recorder_recorder_to_local_location", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "recorder_recorder_calculate_relative_metrics", "to": "recorder_rationale_265", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "recorder_recorder_to_local_location", "to": "recorder_rationale_306", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "src_scenario_loader_py", "to": "scenario_loader_list_scenarios", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "src_scenario_loader_py", "to": "scenario_loader_load_scenario", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "src_scenario_loader_py", "to": "scenario_loader_rationale_1", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenario_loader_list_scenarios", "to": "scenario_loader_load_scenario", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenario_loader_list_scenarios", "to": "scenario_loader_rationale_29", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "scenario_loader_load_scenario", "to": "scenario_loader_rationale_46", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "src_sensors_py", "to": "sensors_sensormanager", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sensors_sensormanager", "to": "sensors_sensormanager_init", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sensors_sensormanager", "to": "sensors_sensormanager_spawn_sensors", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sensors_sensormanager", "to": "sensors_sensormanager_spawn_camera", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sensors_sensormanager", "to": "sensors_sensormanager_spawn_camera_tpp", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sensors_sensormanager", "to": "sensors_sensormanager_spawn_radar", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sensors_sensormanager", "to": "sensors_sensormanager_spawn_lidar", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sensors_sensormanager", "to": "sensors_sensormanager_get_data", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sensors_sensormanager", "to": "sensors_sensormanager_destroy", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sensors_sensormanager_spawn_sensors", "to": "sensors_sensormanager_spawn_camera", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sensors_sensormanager_spawn_sensors", "to": "sensors_sensormanager_spawn_camera_tpp", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sensors_sensormanager_spawn_sensors", "to": "sensors_sensormanager_spawn_radar", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "sensors_sensormanager_spawn_sensors", "to": "sensors_sensormanager_spawn_lidar", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "src_utils_py", "to": "utils_get_weather_preset", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "utils_get_weather_preset", "to": "utils_rationale_4", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}];
|
|
const LEGEND = [{"cid": 0, "color": "#4E79A7", "label": "Scenario Framework & Maneuvers", "count": 57}, {"cid": 1, "color": "#F28E2B", "label": "Radar Simulation & Processing", "count": 44}, {"cid": 2, "color": "#E15759", "label": "Orchestration & Sensor Management", "count": 33}, {"cid": 3, "color": "#76B7B2", "label": "Data Recording & Heatmaps", "count": 30}, {"cid": 4, "color": "#59A14F", "label": "Data Conversion Utilities", "count": 27}, {"cid": 5, "color": "#EDC948", "label": "Web Dashboard & Loader", "count": 24}, {"cid": 6, "color": "#B07AA1", "label": "LiDAR & Fast Heatmap Gen", "count": 21}, {"cid": 7, "color": "#FF9DA7", "label": "DSP & CFAR Detection", "count": 15}, {"cid": 8, "color": "#9C755F", "label": "Scene Reconstruction", "count": 14}, {"cid": 9, "color": "#BAB0AC", "label": "Dashboard Frontend (JS)", "count": 10}, {"cid": 10, "color": "#4E79A7", "label": "MCAP Dataset Conversion", "count": 10}, {"cid": 11, "color": "#F28E2B", "label": "Radar Signal Detection", "count": 9}, {"cid": 12, "color": "#E15759", "label": "Data Quality Inspection", "count": 7}, {"cid": 13, "color": "#76B7B2", "label": "Deep Metrology Analysis", "count": 4}, {"cid": 14, "color": "#59A14F", "label": "Metrology Comparison", "count": 2}, {"cid": 15, "color": "#EDC948", "label": "Community 15", "count": 2}, {"cid": 16, "color": "#B07AA1", "label": "Community 16", "count": 2}, {"cid": 17, "color": "#FF9DA7", "label": "Community 17", "count": 2}, {"cid": 18, "color": "#9C755F", "label": "Community 18", "count": 2}, {"cid": 19, "color": "#BAB0AC", "label": "Community 19", "count": 2}, {"cid": 20, "color": "#4E79A7", "label": "Community 20", "count": 1}, {"cid": 21, "color": "#F28E2B", "label": "Community 21", "count": 1}, {"cid": 22, "color": "#E15759", "label": "Community 22", "count": 1}, {"cid": 23, "color": "#76B7B2", "label": "Community 23", "count": 1}, {"cid": 24, "color": "#59A14F", "label": "Community 24", "count": 1}, {"cid": 25, "color": "#EDC948", "label": "Community 25", "count": 1}, {"cid": 26, "color": "#B07AA1", "label": "Community 26", "count": 1}, {"cid": 27, "color": "#FF9DA7", "label": "Community 27", "count": 1}, {"cid": 28, "color": "#9C755F", "label": "Community 28", "count": 1}, {"cid": 29, "color": "#BAB0AC", "label": "Community 29", "count": 1}, {"cid": 30, "color": "#4E79A7", "label": "Community 30", "count": 1}, {"cid": 31, "color": "#F28E2B", "label": "Community 31", "count": 1}, {"cid": 32, "color": "#E15759", "label": "Community 32", "count": 1}];
|
|
|
|
// HTML-escape helper — prevents XSS when injecting graph data into innerHTML
|
|
function esc(s) {
|
|
return String(s).replace(/&/g,'&').replace(/</g,'<').replace(/>/g,'>').replace(/"/g,'"').replace(/'/g,''');
|
|
}
|
|
|
|
// Build vis datasets
|
|
const nodesDS = new vis.DataSet(RAW_NODES.map(n => ({
|
|
id: n.id, label: n.label, color: n.color, size: n.size,
|
|
font: n.font, title: n.title,
|
|
_community: n.community, _community_name: n.community_name,
|
|
_source_file: n.source_file, _file_type: n.file_type, _degree: n.degree,
|
|
})));
|
|
|
|
const edgesDS = new vis.DataSet(RAW_EDGES.map((e, i) => ({
|
|
id: i, from: e.from, to: e.to,
|
|
label: '',
|
|
title: e.title,
|
|
dashes: e.dashes,
|
|
width: e.width,
|
|
color: e.color,
|
|
arrows: { to: { enabled: true, scaleFactor: 0.5 } },
|
|
})));
|
|
|
|
const container = document.getElementById('graph');
|
|
const network = new vis.Network(container, { nodes: nodesDS, edges: edgesDS }, {
|
|
physics: {
|
|
enabled: true,
|
|
solver: 'forceAtlas2Based',
|
|
forceAtlas2Based: {
|
|
gravitationalConstant: -60,
|
|
centralGravity: 0.005,
|
|
springLength: 120,
|
|
springConstant: 0.08,
|
|
damping: 0.4,
|
|
avoidOverlap: 0.8,
|
|
},
|
|
stabilization: { iterations: 200, fit: true },
|
|
},
|
|
interaction: {
|
|
hover: true,
|
|
tooltipDelay: 100,
|
|
hideEdgesOnDrag: true,
|
|
navigationButtons: false,
|
|
keyboard: false,
|
|
},
|
|
nodes: { shape: 'dot', borderWidth: 1.5 },
|
|
edges: { smooth: { type: 'continuous', roundness: 0.2 }, selectionWidth: 3 },
|
|
});
|
|
|
|
network.once('stabilizationIterationsDone', () => {
|
|
network.setOptions({ physics: { enabled: false } });
|
|
});
|
|
|
|
function showInfo(nodeId) {
|
|
const n = nodesDS.get(nodeId);
|
|
if (!n) return;
|
|
const neighborIds = network.getConnectedNodes(nodeId);
|
|
const neighborItems = neighborIds.map(nid => {
|
|
const nb = nodesDS.get(nid);
|
|
const color = nb ? nb.color.background : '#555';
|
|
return `<span class="neighbor-link" style="border-left-color:${esc(color)}" onclick="focusNode(${JSON.stringify(nid)})">${esc(nb ? nb.label : nid)}</span>`;
|
|
}).join('');
|
|
document.getElementById('info-content').innerHTML = `
|
|
<div class="field"><b>${esc(n.label)}</b></div>
|
|
<div class="field">Type: ${esc(n._file_type || 'unknown')}</div>
|
|
<div class="field">Community: ${esc(n._community_name)}</div>
|
|
<div class="field">Source: ${esc(n._source_file || '-')}</div>
|
|
<div class="field">Degree: ${n._degree}</div>
|
|
${neighborIds.length ? `<div class="field" style="margin-top:8px;color:#aaa;font-size:11px">Neighbors (${neighborIds.length})</div><div id="neighbors-list">${neighborItems}</div>` : ''}
|
|
`;
|
|
}
|
|
|
|
function focusNode(nodeId) {
|
|
network.focus(nodeId, { scale: 1.4, animation: true });
|
|
network.selectNodes([nodeId]);
|
|
showInfo(nodeId);
|
|
}
|
|
|
|
// Track hovered node — hover detection is more reliable than click params
|
|
let hoveredNodeId = null;
|
|
network.on('hoverNode', params => {
|
|
hoveredNodeId = params.node;
|
|
container.style.cursor = 'pointer';
|
|
});
|
|
network.on('blurNode', () => {
|
|
hoveredNodeId = null;
|
|
container.style.cursor = 'default';
|
|
});
|
|
container.addEventListener('click', () => {
|
|
if (hoveredNodeId !== null) {
|
|
showInfo(hoveredNodeId);
|
|
network.selectNodes([hoveredNodeId]);
|
|
}
|
|
});
|
|
network.on('click', params => {
|
|
if (params.nodes.length > 0) {
|
|
showInfo(params.nodes[0]);
|
|
} else if (hoveredNodeId === null) {
|
|
document.getElementById('info-content').innerHTML = '<span class="empty">Click a node to inspect it</span>';
|
|
}
|
|
});
|
|
|
|
const searchInput = document.getElementById('search');
|
|
const searchResults = document.getElementById('search-results');
|
|
searchInput.addEventListener('input', () => {
|
|
const q = searchInput.value.toLowerCase().trim();
|
|
searchResults.innerHTML = '';
|
|
if (!q) { searchResults.style.display = 'none'; return; }
|
|
const matches = RAW_NODES.filter(n => n.label.toLowerCase().includes(q)).slice(0, 20);
|
|
if (!matches.length) { searchResults.style.display = 'none'; return; }
|
|
searchResults.style.display = 'block';
|
|
matches.forEach(n => {
|
|
const el = document.createElement('div');
|
|
el.className = 'search-item';
|
|
el.textContent = n.label;
|
|
el.style.borderLeft = `3px solid ${n.color.background}`;
|
|
el.style.paddingLeft = '8px';
|
|
el.onclick = () => {
|
|
network.focus(n.id, { scale: 1.5, animation: true });
|
|
network.selectNodes([n.id]);
|
|
showInfo(n.id);
|
|
searchResults.style.display = 'none';
|
|
searchInput.value = '';
|
|
};
|
|
searchResults.appendChild(el);
|
|
});
|
|
});
|
|
document.addEventListener('click', e => {
|
|
if (!searchResults.contains(e.target) && e.target !== searchInput)
|
|
searchResults.style.display = 'none';
|
|
});
|
|
|
|
const hiddenCommunities = new Set();
|
|
const legendEl = document.getElementById('legend');
|
|
LEGEND.forEach(c => {
|
|
const item = document.createElement('div');
|
|
item.className = 'legend-item';
|
|
item.innerHTML = `<div class="legend-dot" style="background:${c.color}"></div>
|
|
<span class="legend-label">${c.label}</span>
|
|
<span class="legend-count">${c.count}</span>`;
|
|
item.onclick = () => {
|
|
if (hiddenCommunities.has(c.cid)) {
|
|
hiddenCommunities.delete(c.cid);
|
|
item.classList.remove('dimmed');
|
|
} else {
|
|
hiddenCommunities.add(c.cid);
|
|
item.classList.add('dimmed');
|
|
}
|
|
const updates = RAW_NODES
|
|
.filter(n => n.community === c.cid)
|
|
.map(n => ({ id: n.id, hidden: hiddenCommunities.has(c.cid) }));
|
|
nodesDS.update(updates);
|
|
};
|
|
legendEl.appendChild(item);
|
|
});
|
|
</script>
|
|
<script>
|
|
// Render hyperedges as shaded regions
|
|
const hyperedges = [];
|
|
// afterDrawing passes ctx already transformed to network coordinate space.
|
|
// Draw node positions raw — no manual pan/zoom/DPR math needed.
|
|
network.on('afterDrawing', function(ctx) {
|
|
hyperedges.forEach(h => {
|
|
const positions = h.nodes
|
|
.map(nid => network.getPositions([nid])[nid])
|
|
.filter(p => p !== undefined);
|
|
if (positions.length < 2) return;
|
|
ctx.save();
|
|
ctx.globalAlpha = 0.12;
|
|
ctx.fillStyle = '#6366f1';
|
|
ctx.strokeStyle = '#6366f1';
|
|
ctx.lineWidth = 2;
|
|
ctx.beginPath();
|
|
// Centroid and expanded hull in network coordinates
|
|
const cx = positions.reduce((s, p) => s + p.x, 0) / positions.length;
|
|
const cy = positions.reduce((s, p) => s + p.y, 0) / positions.length;
|
|
const expanded = positions.map(p => ({
|
|
x: cx + (p.x - cx) * 1.15,
|
|
y: cy + (p.y - cy) * 1.15
|
|
}));
|
|
ctx.moveTo(expanded[0].x, expanded[0].y);
|
|
expanded.slice(1).forEach(p => ctx.lineTo(p.x, p.y));
|
|
ctx.closePath();
|
|
ctx.fill();
|
|
ctx.globalAlpha = 0.4;
|
|
ctx.stroke();
|
|
// Label
|
|
ctx.globalAlpha = 0.8;
|
|
ctx.fillStyle = '#4f46e5';
|
|
ctx.font = 'bold 11px sans-serif';
|
|
ctx.textAlign = 'center';
|
|
ctx.fillText(h.label, cx, cy - 5);
|
|
ctx.restore();
|
|
});
|
|
});
|
|
</script>
|
|
</body>
|
|
</html>
|