Skip to content

DbcGenerator emits incomplete FLOAT custom property definitions #7

Description

@PengjiangXiao

问题描述

DbcGenerator 在输出 FLOAT 类型自定义属性定义时只写入:

FLOAT

但 DBC FLOAT 属性定义需要包含最小值和最大值,例如:

BA_DEF_ BO_ "ExampleFloat" FLOAT -10.5 100.5;

该问题会影响全局、节点、报文和信号上的 FLOAT 自定义属性。

确认环境:

  • 分支:master
  • 提交:a736f3b850bb454268093b8c1a409627649393e8
  • 文件:EasyDbc/Generators/DbcGenerator.cs

复现步骤

  1. 创建一个 FLOAT 类型自定义属性定义。
  2. 设置 Minimum 为 -10.5
  3. 设置 Maximum 为 100.5
  4. 使用 DbcGenerator 输出 DBC。

实际结果

生成结果中只包含:

BA_DEF_ BO_ "ExampleFloat" FLOAT;

最小值和最大值丢失,生成内容不能完整往返。

期望结果

应生成:

BA_DEF_ BO_ "ExampleFloat" FLOAT -10.5 100.5;

建议修复方式

objectType = string.Create(
    CultureInfo.InvariantCulture,
    $"FLOAT {definition.FloatCustomProperty.Minimum} " +
    $"{definition.FloatCustomProperty.Maximum}");

建议同时覆盖全局、节点、报文和信号四类属性定义。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions