增加geometry4sharp的评估
This commit is contained in:
parent
bd7eeb3d46
commit
687b342e0f
1195
doc/design/2026/geometry3Sharp空间数据结构集成方案.md
Normal file
1195
doc/design/2026/geometry3Sharp空间数据结构集成方案.md
Normal file
File diff suppressed because it is too large
Load Diff
@ -1328,51 +1328,6 @@ namespace NavisworksTransport.Core.Animation
|
||||
return Transform3D.CreateTranslation(new Vector3D(center.X, center.Y, center.Z));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 使用 Clash Detective 集成进行碰撞检测并使用缓存的碰撞结果
|
||||
/// </summary>
|
||||
private void CheckAndHighlightCollisionsWithClashDetective()
|
||||
{
|
||||
try
|
||||
{
|
||||
if (_animatedObject == null)
|
||||
return;
|
||||
|
||||
// 使用 Clash Detective 集成进行碰撞检测,传递检测间隙参数
|
||||
var collisionResults = ClashDetectiveIntegration.Instance.DetectCollisions(_animatedObject, null, _detectionGap);
|
||||
|
||||
// 高亮显示碰撞对象
|
||||
ClashDetectiveIntegration.Instance.HighlightCollisions(collisionResults);
|
||||
|
||||
// 缓存碰撞结果,动画结束后统一处理
|
||||
if (collisionResults.Count > 0)
|
||||
{
|
||||
LogManager.Info($"=== [动画运行中] 检测到 {collisionResults.Count} 个碰撞,开始记录详细位置 ===");
|
||||
|
||||
// 缓存所有碰撞结果,包含位置信息
|
||||
var animatedObjectPosition = GetObjectPosition(_animatedObject);
|
||||
LogManager.Info($"[动画位置] 动画对象 {_animatedObject.DisplayName}: ({animatedObjectPosition.X:F2},{animatedObjectPosition.Y:F2},{animatedObjectPosition.Z:F2})");
|
||||
|
||||
int collisionIndex = 0;
|
||||
foreach (var collision in collisionResults)
|
||||
{
|
||||
collisionIndex++;
|
||||
var collisionObjectPosition = GetObjectPosition(collision.Item2);
|
||||
|
||||
ClashDetectiveIntegration.Instance.CacheCollisionDuringAnimation(_animatedObject, animatedObjectPosition, collision.Item2, collisionObjectPosition);
|
||||
}
|
||||
|
||||
LogManager.Info($"=== [动画运行中] 位置记录完成 ===");
|
||||
}
|
||||
|
||||
LogManager.Debug($"碰撞检测完成: {collisionResults.Count} 个碰撞 (已缓存)");
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
LogManager.Error($"碰撞检测失败: {ex.Message}");
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 设置动态碰撞检测(实时模式,集成 Clash Detective)
|
||||
/// </summary>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user