Files
UAV-CO2/FRONTEND_CONFIG_README.md

4.7 KiB
Raw Blame History

GasFlux前端配置下拉选项说明

本文档描述了如何在前端应用中使用GasFlux的配置下拉选项。

文件结构

  • frontend_config_options.json - 主要配置文件,包含所有下拉选项的定义
  • frontend_integration_example.js - React组件集成示例
  • FRONTEND_CONFIG_README.md - 本说明文档

配置结构说明

主要分类

配置选项按以下类别组织:

  1. 处理策略 (strategies) - 核心处理策略设置
  2. 背景校正算法 (algorithmic_baseline) - 基线校正算法选择
  3. 半变异函数设置 (semivariogram) - 克里金插值参数
  4. 普通克里金设置 (ordinary_kriging) - 插值核心参数

选项字段说明

每个配置选项包含以下字段:

{
  "key": "option_key",           // 配置键名
  "name": "中文名称",             // 中文显示名称
  "nameEn": "English Name",      // 英文显示名称
  "description": "中文描述",      // 中文描述
  "type": "select|boolean",      // 选项类型
  "required": true,              // 是否必填
  "default": "default_value",    // 默认值
  "options": [                   // 选项列表
    {
      "value": "option_value",   // 选项值
      "label": "显示标签",        // 显示标签
      "labelEn": "Label",        // 英文标签
      "description": "选项描述"   // 选项详细描述
    }
  ]
}

前端集成步骤

1. 加载配置选项

import configOptions from './frontend_config_options.json';

// 或通过API加载
fetch('/api/config-options')
  .then(res => res.json())
  .then(data => setConfigOptions(data));

2. 渲染下拉组件

const renderSelect = (category, option) => {
  return (
    <select
      value={currentValue}
      onChange={(e) => handleChange(category.id, option.key, e.target.value)}
    >
      {option.options.map(opt => (
        <option key={opt.value} value={opt.value}>
          {opt.label} - {opt.labelEn}
        </option>
      ))}
    </select>
  );
};

3. 应用空间模式默认值

当用户选择不同的空间处理模式时,自动应用推荐的默认参数:

const applySpatialModeDefaults = (spatialMode) => {
  const defaults = configOptions.validation.spatial_mode_defaults[spatialMode];
  if (defaults) {
    // 应用半变异函数和克里金参数的默认值
    updateConfig({
      semivariogram_settings: defaults.semivariogram_settings,
      ordinary_kriging_settings: defaults.ordinary_kriging_settings
    });
  }
};

具体选项说明

1. 空间处理模式 (strategies.spatial)

  • curtain: 平面模式,适用于直线或平行航线
  • spiral: 螺旋模式,适用于螺旋或圆形飞行路径

选择不同模式会自动调整相关的半变异函数和克里金参数。

2. 背景校正算法 (algorithmic_baseline.algorithm)

  • fastchrom: FastChrom算法推荐适用于大多数情况
  • dietrich: Dietrich算法基于多项式拟合
  • fabc: FABC算法全自动基线校正
  • golotvin: Golotvin算法分段式基线校正

3. 半变异函数模型 (semivariogram.model)

  • spherical: 球面模型,适用于大多数地理数据
  • gaussian: 高斯模型,适用于平滑变化的数据
  • exponential: 指数模型,适用于螺旋模式数据

4. 切割地面选项 (ordinary_kriging.cut_ground)

  • true: 切割地面以下的负值
  • false: 保留所有插值结果

验证规则

必填字段

所有标记为 required: true 的选项都是必填的。

空间模式默认值

配置中包含了针对不同空间模式的推荐参数:

  • 平面模式 (curtain):

    • 半变异函数容差: 15°
    • 最大滞后距离: 80m
    • 网格分辨率: 200
  • 螺旋模式 (spiral):

    • 半变异函数容差: 30°
    • 最大滞后距离: 100m
    • 网格分辨率: 500

使用建议

  1. 界面设计: 为每个选项提供清晰的标签和描述
  2. 默认值: 总是显示并应用合理的默认值
  3. 联动更新: 空间模式改变时自动更新相关参数
  4. 验证: 在提交前验证所有必填字段
  5. 保存: 支持配置的保存和加载功能

扩展配置

对于不在下拉选项中的参数(如数值范围、路径等),建议使用:

  • 数值输入框: 带范围验证的数字输入
  • 文本输入框: 文件路径、自定义名称等
  • 滑块组件: 百分比、比例等数值调整
  • 复选框组: 多选配置项

版本控制

  • 版本: 1.0
  • 最后更新: 2025-02-09
  • 兼容性: 支持GasFlux配置文档v1.0

此配置系统基于GasFlux官方文档设计如有更新请参考最新文档。