Доработка. Добавление отображения сектора запрета от КАПСРПБ
This commit is contained in:
@@ -37,14 +37,48 @@ func set_band_colors(val: Array): material.set('shader_parameter/ant_band_c', va
|
||||
|
||||
|
||||
## Добавляет сектор запрета[br]
|
||||
## [param fc] - Центральная частота[br]
|
||||
## [param fw] - Ширина диапазона[br]
|
||||
## [param ac] - Угол центра[br]
|
||||
## [param aw] - Ширина по углу[br]
|
||||
func add_seczap(id: int, fc: float, fw: float, ac: float, aw: float):
|
||||
var sec_zap = SecZap.instantiate()
|
||||
sec_zap.name = 'SECZAP%d' % id
|
||||
add_child(sec_zap)
|
||||
## [param id] - Индекс сектора запрета.[br]
|
||||
## [param szv.x] - Центральная частота (198...546).[br]
|
||||
## [param szv.w] - Ширина диапазона (198...546).[br]
|
||||
## [param szv.y] - Угол центра (0...360).[br]
|
||||
## [param szv.z] - Ширина по углу (0...360).[br]
|
||||
func add_seczap(id: int, szv: Vector4):
|
||||
var seczap: = SecZap.instantiate()
|
||||
seczap.name = StringName('SECZAP%d' % id)
|
||||
seczap.position = $строб.position
|
||||
seczap.set_instance_shader_parameter('dir', szv.y - 90.0)
|
||||
seczap.set_instance_shader_parameter('width', szv.z)
|
||||
seczap.set_instance_shader_parameter('band', sv(szv.w))
|
||||
seczap.set_instance_shader_parameter('radius', sv(szv.x))
|
||||
add_child(seczap)
|
||||
|
||||
|
||||
## Удаляет сектор запрета[br]
|
||||
## [param id] - Индекс сектора запрета[br]
|
||||
func remove_seczap(id: int):
|
||||
var seczap: = get_node_or_null('SECZAP%d' % id)
|
||||
if not seczap: return
|
||||
remove_child(seczap)
|
||||
seczap.queue_free()
|
||||
|
||||
|
||||
## Изменяет сектор запрета[br]
|
||||
## [param id] - Индекс сектора запрета[br]
|
||||
## [param szv.x] - Центральная частота[br]
|
||||
## [param szv.w] - Ширина диапазона[br]
|
||||
## [param szv.y] - Угол центра[br]
|
||||
## [param szv.z] - Ширина по углу[br]
|
||||
func set_seczap(id: int, szv: Vector4):
|
||||
var seczap: = get_node('SECZAP%d' % id)
|
||||
seczap.set_instance_shader_parameter('dir', szv.y)
|
||||
seczap.set_instance_shader_parameter('width', szv.z)
|
||||
seczap.set_instance_shader_parameter('band', sv(szv.w))
|
||||
seczap.set_instance_shader_parameter('radius', sv(szv.x))
|
||||
|
||||
|
||||
func set_seczap_color(id: int, color: Color):
|
||||
var seczap: = get_node('SECZAP%d' % id)
|
||||
seczap.set_instance_shader_parameter('color', color)
|
||||
|
||||
|
||||
func set_view_mode(val: int):
|
||||
|
||||
Reference in New Issue
Block a user