Files
UAV-CO2/FRONTEND_CONFIG_README.md

165 lines
4.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

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.

# 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)** - 插值核心参数
### 选项字段说明
每个配置选项包含以下字段:
```json
{
"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. 加载配置选项
```javascript
import configOptions from './frontend_config_options.json';
// 或通过API加载
fetch('/api/config-options')
.then(res => res.json())
.then(data => setConfigOptions(data));
```
### 2. 渲染下拉组件
```javascript
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. 应用空间模式默认值
当用户选择不同的空间处理模式时,自动应用推荐的默认参数:
```javascript
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官方文档设计如有更新请参考最新文档。*