This commit is contained in:
Ayzen
2026-06-11 19:51:30 +03:00
parent 9661504e51
commit f0d095de80
16 changed files with 1786 additions and 72 deletions
@@ -234,6 +234,48 @@ def build_processing_group(owner) -> QGroupBox:
owner._gpr_score_mode.addItems(["peak", "combined"])
owner._set_combo_current_text(owner._gpr_score_mode, gpr_live_defaults.score_mode)
owner._gpr_motion_mode = QComboBox()
owner._gpr_motion_mode.addItems(["int_minus", "int_focus"])
owner._set_combo_current_text(owner._gpr_motion_mode, gpr_live_defaults.motion_mode)
owner._gpr_motion_mode.setToolTip(
"Intra-sweep speed correction before the IFFT. int_minus: full correction; "
"int_focus: focusing residual only (no net Z shift)."
)
owner._gpr_look_angle_deg = QDoubleSpinBox()
owner._gpr_look_angle_deg.setDecimals(2)
owner._gpr_look_angle_deg.setRange(-90.0, 90.0)
owner._gpr_look_angle_deg.setSingleStep(0.5)
owner._gpr_look_angle_deg.setValue(float(gpr_live_defaults.look_angle_deg))
owner._gpr_look_angle_deg.setToolTip(
"Radar look angle vs the range axis (deg). Used by intra-sweep motion correction."
)
owner._gpr_direction_sign = QDoubleSpinBox()
owner._gpr_direction_sign.setDecimals(0)
owner._gpr_direction_sign.setRange(-1.0, 1.0)
owner._gpr_direction_sign.setSingleStep(2.0)
owner._gpr_direction_sign.setValue(float(gpr_live_defaults.direction_sign))
owner._gpr_direction_sign.setToolTip(
"Motion direction along range: +1 (later frequencies deeper) or -1 (shallower)."
)
owner._gpr_ignore_socket_speed_enabled = QCheckBox("Ignore socket speed")
owner._gpr_ignore_socket_speed_enabled.setChecked(bool(gpr_live_defaults.ignore_socket_speed_enabled))
owner._gpr_ignore_socket_speed_enabled.setToolTip(
"When checked, use the speed below for motion correction instead of the "
"value streamed over the locator socket."
)
owner._gpr_speed_m_s = QDoubleSpinBox()
owner._gpr_speed_m_s.setDecimals(3)
owner._gpr_speed_m_s.setRange(-100.0, 100.0)
owner._gpr_speed_m_s.setSingleStep(0.05)
owner._gpr_speed_m_s.setValue(float(gpr_live_defaults.speed_m_s))
owner._gpr_speed_m_s.setToolTip(
"Radar speed (m/s) used by intra-sweep motion correction when 'Ignore socket speed' is on."
)
owner._gpr_max_detected_objects_to_draw = QSpinBox()
owner._gpr_max_detected_objects_to_draw.setRange(0, 10_000)
owner._gpr_max_detected_objects_to_draw.setValue(int(gpr_live_defaults.max_detected_objects_to_draw))
@@ -317,6 +359,11 @@ def build_processing_group(owner) -> QGroupBox:
("Range comp power", owner._gpr_range_comp_power),
("Angle comp power", owner._gpr_angle_comp_power),
("Score mode", owner._gpr_score_mode),
("Motion mode", owner._gpr_motion_mode),
("Look angle deg", owner._gpr_look_angle_deg),
("Direction sign", owner._gpr_direction_sign),
owner._gpr_ignore_socket_speed_enabled,
("Speed m/s", owner._gpr_speed_m_s),
("Render mode", owner._gpr_render_mode),
("Min visible score", owner._gpr_min_visible_score),
("Max detected objects", owner._gpr_max_detected_objects_to_draw),
@@ -524,6 +571,11 @@ def build_processing_group(owner) -> QGroupBox:
owner._gpr_range_comp_power.valueChanged.connect(owner._on_processing_live_settings_changed)
owner._gpr_angle_comp_power.valueChanged.connect(owner._on_processing_live_settings_changed)
owner._gpr_score_mode.currentTextChanged.connect(owner._on_processing_live_settings_changed)
owner._gpr_motion_mode.currentTextChanged.connect(owner._on_processing_live_settings_changed)
owner._gpr_look_angle_deg.valueChanged.connect(owner._on_processing_live_settings_changed)
owner._gpr_direction_sign.valueChanged.connect(owner._on_processing_live_settings_changed)
owner._gpr_ignore_socket_speed_enabled.toggled.connect(owner._on_processing_live_settings_changed)
owner._gpr_speed_m_s.valueChanged.connect(owner._on_processing_live_settings_changed)
owner._gpr_start_freq_mhz.valueChanged.connect(owner._on_processing_live_settings_changed)
owner._gpr_stop_freq_mhz.valueChanged.connect(owner._on_processing_live_settings_changed)
owner._gpr_background_subtract_enabled.toggled.connect(owner._on_processing_live_settings_changed)