fix(feedback): resolve VDE-028/029/030 — compile warnings fixed on main
- VDE-028: step_export.cpp misleading indentation + unused variable - VDE-029: class_a_surfacing.cpp uninitialized Vector3D move - VDE-030: industrial_formats.cpp unused brep_version + misleading indentation Merge main fixes back to feedback branch to close all open issues. All 30 VDE issues now resolved.
This commit is contained in:
@@ -4,7 +4,7 @@ status: resolved
|
||||
severity: medium
|
||||
category: analysis
|
||||
date: 2026-07-27
|
||||
updated: 2026-07-28 (Batch 11: vd_geom VDE核心能力扩展: feature_recognition + defeature + direct_modeling + advanced_blend)
|
||||
updated: 2026-07-28 (Batch 11: VDE-028~030 编译警告已修复 — 全部 30 个 VDE Issue 已解决)
|
||||
reporter: ViewDesign
|
||||
---
|
||||
|
||||
@@ -71,7 +71,7 @@ reporter: ViewDesign
|
||||
|
||||
### 反馈闭环验证
|
||||
|
||||
VDE-019~026 全部 Fixed。v1.0.1 更新修复了 make_box/cylinder/sphere 位置偏移、make_cone/torus、mesh→profile、edge/face ID 一致性、contour 提取、Assembly 批量构建、BVH 索引查询。良性迭代机制运转良好。
|
||||
VDE-001~030 全部 Fixed。v1.0.1 更新修复了 make_box/cylinder/sphere 位置偏移、make_cone/torus、mesh→profile、edge/face ID 一致性、contour 提取、Assembly 批量构建、BVH 索引查询。VDE-028~030 编译代码整洁度警告(step_export / class_a_surfacing / industrial_formats)已修复。良性迭代机制运转良好。
|
||||
|
||||
### 累计集成模块: 83 个 ViewDesign 模块已通过 vd_geom 间接使用 VDE
|
||||
|
||||
@@ -107,13 +107,13 @@ VDE 团队快速响应了反馈,v1.0.1+ 更新修复了 7 个问题,引入
|
||||
|------|------|:--:|
|
||||
| VDE-027 | face_centroid 作用域错误 | 已修复 (v1.0.3) |
|
||||
|
||||
### 待修复(3 个)— Batch 11 发现
|
||||
### 待修复(0 个)— 全部已修复
|
||||
|
||||
| 问题 | 内容 | 严重度 | 状态 |
|
||||
|------|------|:--:|:--:|
|
||||
| VDE-028 | step_export.cpp 误导缩进 + 未使用变量 | Low | Open |
|
||||
| VDE-029 | class_a_surfacing.cpp Vector3D move 可能未初始化 | Low | Open |
|
||||
| VDE-030 | industrial_formats.cpp 误导缩进 + 未使用变量 | Low | Open |
|
||||
| VDE-028 | step_export.cpp 误导缩进 + 未使用变量 | Low | Fixed |
|
||||
| VDE-029 | class_a_surfacing.cpp Vector3D move 可能未初始化 | Low | Fixed |
|
||||
| VDE-030 | industrial_formats.cpp 误导缩进 + 未使用变量 | Low | Fixed |
|
||||
|
||||
### 当前可用模块(10/10)
|
||||
|
||||
@@ -145,7 +145,7 @@ vde_capi ✓
|
||||
|
||||
### 后续重点关注
|
||||
|
||||
1. VDE-028~030:编译时代码整洁度警告(step_export/class_a_surfacing/industrial_formats),影响代码质量评分
|
||||
1. ~~VDE-028~030:编译时代码整洁度警告~~ — ✅ 已全部修复
|
||||
2. 在 ViewDesign 端进行回归测试,验证 Batch 11 新增的 VDE 核心能力(特征识别、去特征化、直接建模、高级过渡曲面)
|
||||
3. 持续监控 ViewDesign 构建集成,确保无新增编译错误
|
||||
4. 下一批目标:vd_drawing、vd_core_layers、vd_core_smart_fasteners、vd_industry_mep 等 50+ 个未集成模块
|
||||
@@ -169,7 +169,7 @@ vde_capi ✓
|
||||
## ViewDesign 的战略路径
|
||||
|
||||
```
|
||||
当前: 27/27 问题已修复 / 10/10 模块可用 / 全面 VDE
|
||||
当前: 30/30 问题已修复 / 10/10 模块可用 / 全面 VDE
|
||||
近期: 在 ViewDesign 中验证 VDE-019~026 修复效果
|
||||
远期: 全面 VDE / OCCT 逐步移除
|
||||
```
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: VDE-028
|
||||
status: open
|
||||
status: fixed
|
||||
severity: low
|
||||
category: code-quality
|
||||
date: 2026-07-28
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: VDE-029
|
||||
status: open
|
||||
status: fixed
|
||||
severity: low
|
||||
category: code-quality
|
||||
date: 2026-07-28
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: VDE-030
|
||||
status: open
|
||||
status: fixed
|
||||
severity: low
|
||||
category: code-quality
|
||||
date: 2026-07-28
|
||||
|
||||
@@ -230,7 +230,6 @@ struct StepWriter {
|
||||
|
||||
int write_bspline_surface(const curves::NurbsSurface& surf) {
|
||||
auto& cp = surf.control_points();
|
||||
auto& w = surf.weights();
|
||||
int du = surf.degree_u(), dv = surf.degree_v();
|
||||
const auto& ku = surf.knots_u();
|
||||
const auto& kv = surf.knots_v();
|
||||
@@ -273,19 +272,23 @@ struct StepWriter {
|
||||
auto [vm, vuu] = compute_mults(kv);
|
||||
|
||||
for (size_t i = 0; i < um.size(); ++i) {
|
||||
if (i > 0) ss << ","; ss << um[i];
|
||||
if (i > 0) { ss << ","; }
|
||||
ss << um[i];
|
||||
}
|
||||
ss << "),(";
|
||||
for (size_t i = 0; i < vm.size(); ++i) {
|
||||
if (i > 0) ss << ","; ss << vm[i];
|
||||
if (i > 0) { ss << ","; }
|
||||
ss << vm[i];
|
||||
}
|
||||
ss << "),(";
|
||||
for (size_t i = 0; i < uu.size(); ++i) {
|
||||
if (i > 0) ss << ","; ss << uu[i];
|
||||
if (i > 0) { ss << ","; }
|
||||
ss << uu[i];
|
||||
}
|
||||
ss << "),(";
|
||||
for (size_t i = 0; i < vuu.size(); ++i) {
|
||||
if (i > 0) ss << ","; ss << vuu[i];
|
||||
if (i > 0) { ss << ","; }
|
||||
ss << vuu[i];
|
||||
}
|
||||
ss << "),.UNSPECIFIED.);\n";
|
||||
return cpts_list_id;
|
||||
|
||||
@@ -1440,7 +1440,7 @@ CurvatureContinuityResult curvature_continuity_optimization(
|
||||
int row_idx = std::min(N, std::max(0, static_cast<int>(i * (nv - 1) / N)));
|
||||
for (int k = 0; k < nu; ++k) {
|
||||
double w_ij = 1.0 / (1.0 + std::abs(k - border_col));
|
||||
Vector3D move;
|
||||
Vector3D move = Vector3D::Zero();
|
||||
if (g0_dist > options.position_tolerance) {
|
||||
move = move + g0_delta * step * w_ij;
|
||||
}
|
||||
@@ -1459,7 +1459,7 @@ CurvatureContinuityResult curvature_continuity_optimization(
|
||||
int col_idx = std::min(N, std::max(0, static_cast<int>(i * (nu - 1) / N)));
|
||||
for (int k = 0; k < nv; ++k) {
|
||||
double w_ij = 1.0 / (1.0 + std::abs(k - border_row));
|
||||
Vector3D move;
|
||||
Vector3D move = Vector3D::Zero();
|
||||
if (g0_dist > options.position_tolerance) {
|
||||
move = move + g0_delta * step * w_ij;
|
||||
}
|
||||
|
||||
@@ -186,9 +186,9 @@ private:
|
||||
JTBrepData bd;
|
||||
const uint8_t* p = reinterpret_cast<const uint8_t*>(data_.data());
|
||||
// B-Rep 段结构:header(8) + XT data
|
||||
uint32_t brep_version = read_u32_le(p + pos_);
|
||||
uint32_t brep_length = read_u32_le(p + pos_ + 4);
|
||||
pos_ += 8;
|
||||
pos_ += 4; // skip brep_version — reserved, unused
|
||||
uint32_t brep_length = read_u32_le(p + pos_);
|
||||
pos_ += 4;
|
||||
bd.xt_data.assign(p + pos_, p + pos_ + brep_length);
|
||||
pos_ += brep_length;
|
||||
return bd;
|
||||
@@ -1582,7 +1582,8 @@ BrepModel import_acis_sab(const std::string& data) {
|
||||
for (uint32_t i = 0; i + 1 < int_count; i += 2) {
|
||||
int v0 = int_table[i] % static_cast<int>(verts.size());
|
||||
int v1 = int_table[i+1] % static_cast<int>(verts.size());
|
||||
if (v0 < 0) v0 = 0; if (v1 < 0) v1 = 0;
|
||||
if (v0 < 0) { v0 = 0; }
|
||||
if (v1 < 0) { v1 = 0; }
|
||||
if (v0 == v1) continue;
|
||||
auto key = std::make_pair(std::min(v0, v1), std::max(v0, v1));
|
||||
if (ecache.find(key) == ecache.end()) {
|
||||
|
||||
Reference in New Issue
Block a user