Files
usa/map.md
2026-03-01 19:23:48 +08:00

284 lines
6.0 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[
{
"name": "USS Abraham Lincoln CSG",
"type": "Aircraft Carrier Strike Group",
"lat": 12.5,
"lng": 50.0,
"region": "Arabian Sea SE of Socotra"
},
{
"name": "Destroyer (Gulf of Oman)",
"type": "Destroyer",
"lat": 25.2,
"lng": 58.0,
"region": "Gulf of Oman"
},
{
"name": "Coast Guard Ship 1 (Gulf of Oman)",
"type": "Coast Guard",
"lat": 25.4,
"lng": 58.2,
"region": "Gulf of Oman"
},
{
"name": "Coast Guard Ship 2 (Gulf of Oman)",
"type": "Coast Guard",
"lat": 25.0,
"lng": 57.8,
"region": "Gulf of Oman"
},
{
"name": "Destroyer (Northern Persian Gulf)",
"type": "Destroyer",
"lat": 26.5,
"lng": 51.0,
"region": "Persian Gulf"
},
{
"name": "Frigate 1 (Persian Gulf)",
"type": "Frigate",
"lat": 26.7,
"lng": 50.6,
"region": "Persian Gulf"
},
{
"name": "Frigate 2 (Persian Gulf)",
"type": "Frigate",
"lat": 27.0,
"lng": 50.2,
"region": "Persian Gulf"
},
{
"name": "Frigate 3 (Persian Gulf)",
"type": "Frigate",
"lat": 26.3,
"lng": 50.8,
"region": "Persian Gulf"
},
{
"name": "Auxiliary Ship 1",
"type": "Auxiliary",
"lat": 26.0,
"lng": 51.2,
"region": "Persian Gulf"
},
{
"name": "Auxiliary Ship 2",
"type": "Auxiliary",
"lat": 25.8,
"lng": 51.5,
"region": "Persian Gulf"
},
{
"name": "Auxiliary Ship 3",
"type": "Auxiliary",
"lat": 26.2,
"lng": 50.9,
"region": "Persian Gulf"
}
]
卡塔尔
Al Udeid Air Base
Camp As Sayliyah
🇧🇭 巴林
Naval Support Activity Bahrain
🇰🇼 科威特
Camp Arifjan
Ali Al Salem Air Base
Camp Buehring
🇦🇪 阿联酋
Al Dhafra Air Base
🇸🇦 沙特阿拉伯
Prince Sultan Air Base
Eskan Village
🇮🇶 伊拉克
Al Asad Airbase
Erbil Air Base
Baghdad Diplomatic Support Center
Camp Taji
Ain al-Asad (部分文献与 Al Asad 同义但可单列展示)
🇸🇾 叙利亚(驻点)
Al-Tanf Garrison
Rmelan Landing Zone
Shaddadi Base
Conoco Gas Field Base
🇯🇴 约旦
Muwaffaq Salti Air Base
🇹🇷 土耳其
Incirlik Air Base
Kürecik Radar Station
🇮🇱 以色列(合作设施)
Nevatim Air Base (美军设施区)
Ramon Air Base (协作区)
🇴🇲 阿曼
Thumrait Air Base
Masirah Air Base
🇪🇬 埃及(区域支援)
West Cairo Air Base
🇩🇯 吉布提(非波斯湾但中东行动关键)
地图基础设置
中心:
center: [52.5, 26.5]
zoom: 5.2
style: "mapbox://styles/mapbox/dark-v11"
二、27 个基地完整 JSON 数据
[
{ "id": 1, "name": "Al Udeid Air Base", "country": "Qatar", "lat": 25.117, "lng": 51.314 },
{ "id": 2, "name": "Camp As Sayliyah", "country": "Qatar", "lat": 25.275, "lng": 51.520 },
{ "id": 3, "name": "Naval Support Activity Bahrain", "country": "Bahrain", "lat": 26.236, "lng": 50.608 },
{ "id": 4, "name": "Camp Arifjan", "country": "Kuwait", "lat": 28.832, "lng": 47.799 },
{ "id": 5, "name": "Ali Al Salem Air Base", "country": "Kuwait", "lat": 29.346, "lng": 47.520 },
{ "id": 6, "name": "Camp Buehring", "country": "Kuwait", "lat": 29.603, "lng": 47.456 },
{ "id": 7, "name": "Al Dhafra Air Base", "country": "UAE", "lat": 24.248, "lng": 54.547 },
{ "id": 8, "name": "Prince Sultan Air Base", "country": "Saudi Arabia", "lat": 24.062, "lng": 47.580 },
{ "id": 9, "name": "Eskan Village", "country": "Saudi Arabia", "lat": 24.774, "lng": 46.738 },
{ "id": 10, "name": "Al Asad Airbase", "country": "Iraq", "lat": 33.785, "lng": 42.441 },
{ "id": 11, "name": "Erbil Air Base", "country": "Iraq", "lat": 36.237, "lng": 43.963 },
{ "id": 12, "name": "Baghdad Diplomatic Support Center", "country": "Iraq", "lat": 33.315, "lng": 44.366 },
{ "id": 13, "name": "Camp Taji", "country": "Iraq", "lat": 33.556, "lng": 44.256 },
{ "id": 14, "name": "Ain al-Asad", "country": "Iraq", "lat": 33.800, "lng": 42.450 },
{ "id": 15, "name": "Al-Tanf Garrison", "country": "Syria", "lat": 33.490, "lng": 38.618 },
{ "id": 16, "name": "Rmelan Landing Zone", "country": "Syria", "lat": 37.015, "lng": 41.885 },
{ "id": 17, "name": "Shaddadi Base", "country": "Syria", "lat": 36.058, "lng": 40.730 },
{ "id": 18, "name": "Conoco Gas Field Base", "country": "Syria", "lat": 35.336, "lng": 40.295 },
{ "id": 19, "name": "Muwaffaq Salti Air Base", "country": "Jordan", "lat": 32.356, "lng": 36.259 },
{ "id": 20, "name": "Incirlik Air Base", "country": "Turkey", "lat": 37.002, "lng": 35.425 },
{ "id": 21, "name": "Kurecik Radar Station", "country": "Turkey", "lat": 38.354, "lng": 37.794 },
{ "id": 22, "name": "Nevatim Air Base", "country": "Israel", "lat": 31.208, "lng": 35.012 },
{ "id": 23, "name": "Ramon Air Base", "country": "Israel", "lat": 30.776, "lng": 34.666 },
{ "id": 24, "name": "Thumrait Air Base", "country": "Oman", "lat": 17.666, "lng": 54.024 },
{ "id": 25, "name": "Masirah Air Base", "country": "Oman", "lat": 20.675, "lng": 58.890 },
{ "id": 26, "name": "West Cairo Air Base", "country": "Egypt", "lat": 30.915, "lng": 30.298 },
{ "id": 27, "name": "Camp Lemonnier", "country": "Djibouti", "lat": 11.547, "lng": 43.159 }
]
三、状态模型
type BaseStatus = "operational" | "damaged" | "attacked"
interface BaseAttackStatus {
id: number
status: BaseStatus
damageLevel: 1 | 2 | 3
attackTime?: number
}
四、可视化规则
1⃣ 状态颜色
operational → 绿色稳定点
damaged → 橙色闪烁
attacked → 红色脉冲扩散动画
2⃣ 红色脉冲动画
2 秒循环
扩散半径 0 → 40px
opacity 1 → 0
3⃣ 伊朗攻击源
固定发射源坐标:
const IRAN_SOURCE = [51.3890, 35.6892] // Tehran
攻击动画使用抛物线 LineLayer
颜色:#ff0000
线宽2px
飞行时间1200ms
五、大屏右侧态势面板
显示:
总基地数27
被袭击X
严重损毁X
中度损毁X
轻度损毁X
每 5 秒自动刷新统计。
六、性能要求
使用 requestAnimationFrame
禁止重复创建 marker
所有动画走 WebGL 图层
禁止 DOM 动画