﻿# 为什么模型替换/更新后发生了错位？

关键字：替换｜更新｜错位｜位置变动｜坐标系

## 解决方案

  1. 可以在导入模型后第一时间，将模型“同步坐标系”，之后再更新模型。  
这样，即使模型整体的范围（boundingbox）发生了改变，模型也会保持在原位。
  2. 如果使用的D5转换器在同步工作流中，则不会发生错位的问题。

![image](https://docs-static.d5render.cn/t/18217684-957c-4109-9021-5866cc58cc60/u/b2b089df-cb81-4043-b79c-df8b2dc9bba1/1675395709178/aab60b0d-4f7d-454d-bbd7-e6a135001d83.png)

## 问题产生的原因

直读导入D5的模型的坐标系是默认在模型的底部中心的 A 点，如果替换前后的模型整体的范围（boundingbox）发生了改变，坐标轴的位置重新计算后会发生了改变（B点），就会出现错位的情况。  
而选中模型并将其“同步坐标系”后，模型会直接恢复到绝对建模坐标的位置。

![image](https://docs-static.d5render.cn/t/18217684-957c-4109-9021-5866cc58cc60/u/b2b089df-cb81-4043-b79c-df8b2dc9bba1/1671522651137/e59ed504-f7b2-4eb9-bcfc-03e6ef53cdcd.png)

例如有正方形、圆形、长方形 三个模型，模型的坐标原点在A点（D5的坐标轴默认在模型的底部中央）。删除了一个长方形，这个时候模型的坐标原点发生了变动，变成了B点。

![image](https://docs-static.d5render.cn/t/18217684-957c-4109-9021-5866cc58cc60/u/b2b089df-cb81-4043-b79c-df8b2dc9bba1/1671522684772/baa04749-d634-43e4-bc47-85c2c05be9f6.png)

如果将坐标轴位置对齐，可发现 模型发生了相对移动，即坐标位置没变但模型的位置改变。

![image](https://docs-static.d5render.cn/t/18217684-957c-4109-9021-5866cc58cc60/u/b2b089df-cb81-4043-b79c-df8b2dc9bba1/1671522734509/image.png)

使用“同步坐标系”功能，会将模型会移动到建模软件中坐标的位置。

![image](https://docs-static.d5render.cn/t/18217684-957c-4109-9021-5866cc58cc60/u/b2b089df-cb81-4043-b79c-df8b2dc9bba1/1677217499089/image.png)

此时再修改模型（以小老虎为参照物），可发现并没有发生错位！

::: warning 请注意
若 _导入模型为带组结构的.d5a，请在首次导入模型后 &替换模型后，分别执行“同步坐标系”命令_。
:::


![image](https://docs-static.d5render.cn/t/18217684-957c-4109-9021-5866cc58cc60/u/10a66288-31af-4b72-adee-8249db06c5f0/1730809573694/tongbuzuobiaox2_compressed.gif)

组结构替换模型，需再首次导入模型后&替换模型后，分别“同步坐标系”
