#pragma once #include #include "IDatasetChartStrategy.hpp" // geopro::controller namespace geopro::app { // ERT 电极坐标轨迹(dd_trajectory_data)策略:地图 / 列表 / 高程 三页签(页签序对齐原版)。 // 地图(默认/首位)= WebMap(QWebEngineView + Leaflet + 天地图瓦片;traj.map 产 MapPayload, // 端点 trajectory/line,electrodeCoordinate → 经纬点)。 // 列表 = Table(懒加载,gridHeaderDisplay+rowList → TablePayload)。 // 高程 = LineProfile(平滑折线,electrodeNo→elevation)。 // 列表与高程同端点 trajectory/rows,loaderKey 不同(traj.rows 产 TablePayload / traj.elev 产 LinePayload)。 struct TrajectoryStrategy : controller::IDatasetChartStrategy { std::string ddCode() const override { return "dd_trajectory_data"; } std::vector tabs() const override { return { {QStringLiteral("地图"), controller::ViewKind::WebMap, QStringLiteral("traj.map"), /*lazy*/ false, /*paginated*/ false}, {QStringLiteral("列表"), controller::ViewKind::Table, QStringLiteral("traj.rows"), /*lazy*/ true, /*paginated*/ false}, {QStringLiteral("高程"), controller::ViewKind::LineProfile, QStringLiteral("traj.elev"), /*lazy*/ false, /*paginated*/ false}, }; } }; } // namespace geopro::app