fix: 新增态 效果

This commit is contained in:
Daniel
2026-03-05 15:53:10 +08:00
parent a3bf8abda5
commit af59d6367f
16 changed files with 1334 additions and 113 deletions

View File

@@ -91,8 +91,20 @@ export const EXTENDED_WAR_ZONES = {
// 真主党区域标注点(用于显示文字)
hezbollahLabelCenter: [35.7, 33.7] as [number, number],
// 真主党打击源(黎巴嫩南部,与势力范围一致,用于攻击矢量起点)[lng, lat]
// 库尔德武装势力区域标注点(叙/土/伊三区紫色带中心附近)
kurdishLabelCenter: [43.5, 36.3] as [number, number],
// 真主党打击源(黎巴嫩境内多处,随机选取作为攻击起点)[lng, lat]
hezbollahStrikeSource: [35.32, 33.28] as [number, number],
/** 黎巴嫩境内攻击源(提尔、西顿、巴勒贝克、贝鲁特南郊、纳巴提耶等),用于黎巴嫩→以色列动画 */
lebanonStrikeSources: [
[35.19, 33.27], // 提尔 Tyre
[35.37, 33.56], // 西顿 Sidon
[36.2, 34.01], // 巴勒贝克 Baalbek
[35.5, 33.86], // 贝鲁特南郊 Dahieh
[35.38, 33.38], // 纳巴提耶 Nabatiyeh
[35.85, 33.85], // 贝卡谷地
] as [number, number][],
// 3. 真主党当前攻击目标 (North Israel Targets)
activeAttacks: [
@@ -117,6 +129,139 @@ export const EXTENDED_WAR_ZONES = {
],
} as const
/** 跨国库尔德势力范围与钳形攻势 — 土(Bakur)/叙(Rojava)/伊(Bashur) 三区 + 北/南钳形箭头 */
const SYRIA_ROJAVA: [number, number][] = [
[36.0, 36.5],
[42.3, 37.1],
[42.0, 35.0],
[39.0, 34.5],
[38.0, 35.5],
[36.0, 36.5],
]
const TURKEY_BAKUR: [number, number][] = [
[39.5, 38.5],
[44.5, 38.2],
[44.8, 37.0],
[42.5, 37.0],
[40.0, 37.5],
[39.5, 38.5],
]
const IRAQ_BASHUR: [number, number][] = [
[42.5, 37.2],
[45.0, 37.3],
[46.2, 35.8],
[45.5, 34.5],
[43.5, 34.8],
[42.5, 36.0],
[42.5, 37.2],
]
/** 北/中/南三线进攻轴线起止点 [lng, lat],供生长动画与固定几何使用 */
export const PINCER_AXES = [
{ start: [43.6, 37.2] as [number, number], end: [46.27, 38.08] as [number, number], name: 'North Pincer (Tabriz)' },
{ start: [45.0, 35.4] as [number, number], end: [46.99, 35.31] as [number, number], name: 'Central Pincer (Sanandaj)' },
{ start: [45.6, 35.2] as [number, number], end: [47.07, 34.31] as [number, number], name: 'South Pincer (Kermanshah)' },
] as const
/** 以色列进攻黎巴嫩轴线 [lng, lat]:以色列北部 → 黎巴嫩南部/真主党势力方向 */
export const ISRAEL_LEBANON_AXIS = {
start: [35.25, 32.95] as [number, number],
end: [35.55, 33.45] as [number, number],
name: 'Israel → Lebanon',
} as const
/** 伊朗被库尔德武装进攻点防御线:大不里士→萨南达季→克尔曼沙赫,黄色虚线 */
export const KURDISH_ATTACK_DEFENSE_LINE: GeoJSON.Feature<GeoJSON.LineString> = {
type: 'Feature',
properties: { name: '伊朗西部防御线' },
geometry: {
type: 'LineString',
coordinates: [
[46.27, 38.08],
[46.99, 35.31],
[47.07, 34.31],
],
},
}
/** 三叉戟 18 点一笔画固定几何(不回头路径、槽位 t 小于主尖),与 PINCER_AXES 顺序一致:北 / 中 / 南 */
export const PINCER_TRIDENT_RINGS: [number, number][][] = [
[ // 北线 (Tabriz) — 彻底修复版
[43.45, 37.55], [43.75, 36.95], [43.85, 37.05], [43.55, 37.65],
[44.40, 37.35],
[45.10, 37.15], [46.15, 37.60], [45.40, 37.55],
[44.80, 37.70],
[45.50, 37.85], [46.27, 38.08], [45.40, 38.00],
[44.75, 37.95],
[45.05, 38.25], [46.00, 38.45], [45.20, 38.15],
[44.35, 37.60],
[43.45, 37.55],
],
[
[44.95, 35.70], [45.05, 35.10], [45.15, 35.15], [45.05, 35.75],
[45.60, 35.25], [46.20, 35.10], [46.85, 35.15], [46.20, 35.25],
[45.85, 35.31], [46.40, 35.25], [46.99, 35.31], [46.40, 35.38],
[45.85, 35.45], [46.25, 35.55], [46.80, 35.65], [46.25, 35.45],
[45.65, 35.55], [44.95, 35.70],
],
[
[45.85, 35.45], [45.35, 34.95], [45.45, 35.05], [45.95, 35.55],
[46.05, 34.85], [46.45, 34.50], [46.95, 34.15], [46.50, 34.35],
[46.25, 34.45], [46.65, 34.35], [47.07, 34.31], [46.75, 34.55],
[46.35, 34.75], [46.65, 34.85], [47.15, 34.65], [46.55, 34.95],
[46.30, 35.15], [45.85, 35.45],
],
]
export const KURDISH_FRONT_GEOJSON: GeoJSON.FeatureCollection = {
type: 'FeatureCollection',
features: [
{
type: 'Feature',
properties: {
name: 'Kurdish Tactical Range (Bakur / Rojava / Bashur)',
region_type: 'InfluenceZone',
description: '叙利亚东北部(SDF)、土耳其东南部、伊拉克 KRG 自治区,紫色弧形地带向 Rojhelat 钳形攻势',
},
geometry: {
type: 'MultiPolygon',
coordinates: [[SYRIA_ROJAVA], [TURKEY_BAKUR], [IRAQ_BASHUR]],
},
},
{
type: 'Feature',
properties: {
name: '大不里士 (Tabriz)',
region_type: 'Target',
status: 'Obj: CRITICAL',
showMarker: false,
},
geometry: { type: 'Point', coordinates: [46.27, 38.08] },
},
{
type: 'Feature',
properties: {
name: '萨南达季 (Sanandaj)',
region_type: 'Target',
status: 'Obj: HIGH',
showMarker: true,
},
geometry: { type: 'Point', coordinates: [46.99, 35.31] },
},
{
type: 'Feature',
properties: {
name: '克尔曼沙赫 (Kermanshah)',
region_type: 'Target',
status: 'Obj: STRATEGIC',
showMarker: true,
},
geometry: { type: 'Point', coordinates: [47.07, 34.31] },
},
],
}
// 战损评估点位(以色列打击黎巴嫩 & 联军打击伊朗本土)
export const STRIKE_DAMAGE_ASSESSMENT = {
lebanonFront: [