61 lines
2.0 KiB
C#
61 lines
2.0 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
|
|
namespace NavisworksTransport.Core.Models
|
|
{
|
|
/// <summary>
|
|
/// 批处理队列项 - 简化版,只包含一条路径的碰撞检测任务
|
|
/// </summary>
|
|
public class BatchQueueItem
|
|
{
|
|
public int Id { get; set; }
|
|
public string PathRouteId { get; set; }
|
|
public string PathRouteName { get; set; }
|
|
public BatchQueueStatus Status { get; set; }
|
|
public DateTime CreatedTime { get; set; }
|
|
public DateTime? StartTime { get; set; }
|
|
public DateTime? EndTime { get; set; }
|
|
public string ErrorMessage { get; set; }
|
|
|
|
// 动画配置
|
|
public int FrameRate { get; set; }
|
|
public double DurationSeconds { get; set; }
|
|
|
|
// 碰撞检测配置
|
|
public double DetectionToleranceMeters { get; set; }
|
|
|
|
// 运动物体配置
|
|
public bool IsVirtualVehicle { get; set; }
|
|
public double VirtualVehicleLength { get; set; }
|
|
public double VirtualVehicleWidth { get; set; }
|
|
public double VirtualVehicleHeight { get; set; }
|
|
|
|
// 碰撞检测配置
|
|
public bool DetectAllObjects { get; set; } = true;
|
|
|
|
// 角度修正配置
|
|
public double ObjectRotationCorrection { get; set; }
|
|
|
|
// 结果
|
|
public string ClashDetectiveTestName { get; set; }
|
|
public int? CollisionCount { get; set; }
|
|
|
|
// 注意:运动物体和碰撞检测目标都存储在 ModelItemReferences 表中
|
|
// 使用 BatchQueueItem.Id 作为 ReferenceId 进行查询
|
|
// Role = "Vehicle" 表示运动物体
|
|
// Role = "CollisionTarget" 表示碰撞检测目标
|
|
}
|
|
|
|
/// <summary>
|
|
/// 批处理队列项状态
|
|
/// </summary>
|
|
public enum BatchQueueStatus
|
|
{
|
|
All, // 全部(用于筛选)
|
|
Pending, // 等待执行
|
|
Running, // 正在执行
|
|
Completed, // 已完成
|
|
Failed, // 执行失败
|
|
Skipped // 已跳过
|
|
}
|
|
} |