模型对比可以对两个文件/模型进行差异性分析,确定两个文件/模型之间构件的几何和属性差异,包括增加的构件、删除的构件和修改的构件。 模型对应可以用于进行文件/模型的版本对比。
- 几何对比
几何数据的对比的粒度为构件级,即只要构件的某一部分几何数据或材质发生改变,就认为整个构件发生变化。
几何差异,是指:文件A相对于文件B,到底在显示方面有哪些几何图形发生了变化。 为了清晰描述几何差异,我们通过举例来详细说明:
- 假设文件A中,包含有5个构件,分别是:1、2、3、4、5;
- 假设文件A经过修改后,保存为文件B,其包含的构件为:2、3、4'、5、6、7。
通过对比,我们知道:文件B相对于文件A,删除了构件 1,新增了构件 6、7,修改构件4变成了构件4'。 因此,经过对比计算,几何差异保留了如下信息:
- 删除的构件1;
- 修改构件中,修改前的构件4。
特别注意:在几何差异中,保留的是文件A相对于文件B的修改内容,因此,新增的构件6、7,和修改构件中修改后的构件4',并没有包含在几何差异内。
- 属性对比
属性对比的粒度为构件的属性级,即对两个文件中的相同ID的构件挨个属性值进行对比。
变更构件指的是文件B相对于文件A新增、删除和修改的构件;变更的属性指的是构件修改前后,其属性值发生的变化。 在对比完成之后,您可以调用2个服务端的API获取变更构件的列表,和修改前后发生变化的构件属性列表。
1. 获取模型对比结果
您可以调用服务端“获取模型对比结果”API,其返回的结果是一个列表,列表中详细列出了新增、删除、修改构件的ID和名称,并按照专业、类型进行了分组;
2. 获取修改构件属性差异
您可以调用服务端“获取修改构件属性差异”API,其返回的结果也是一个列表,仅针对修改的构件(不包含新增、删除的构件),是指对于一个修改过的构件ID,其修改前后分别新增、删除了哪些属性,或是属性值发生了变化。
如何显示模型对比结果的几何图形部分
- 完整显示文件B;
- 在此基础上显示几何差异;
- 隔离未变更的构件(如:半透明未变更的构件);
- 对新增、删除、修改前后的构件进行着色。 如下图,在界面中呈现的构件,应该表达为如下结果:
下面介绍BIMFACE提供的服务端API来获取模型对比的所有结果。
请求地址:GET https://api.bimface.com/data/v2/comparisons/{comparisonId}/diff
说明:分页获取模型对比结果
参数:
请求 path(示例):https://api.bimface.com/data/v2/comparisons/1136906400211168/diff
请求 header(示例):"Authorization: Bearer dc671840-bacc-4dc5-a134-97c1918d664b"
HTTP响应示例(200):
{
"code" : "success",
"data" : {
"data" : [ {
"categoryId" : "-2001320",
"categoryName" : "framework",
"diffType" : "CHANGE",
"elementId" : "",
"elementName" : "250 x 600 mm",
"family" : "framework 1",
"followingFileId" : "",
"id" : "",
"previousFileId" : "",
"specialty" : "civil"
} ],
"page" : ,
"total" :
},
"message" : ""
}
C#实现方法:
/// <summary>
/// 获取模型对比的所有结果
/// </summary>
/// <param name="accessToken">【必填】令牌</param>
/// <param name="compareId">【必填】对比ID</param>
/// <param name="elementName">构件名称</param>
/// <param name="family">族名称</param>
/// <returns></returns>
public ModelCompareDiffResponse GetModelCompareDiffAll(string accessToken, long compareId, string elementName = "", string family = "")
{
return GetModelCompareDiff(accessToken, compareId, elementName, family, , Int32.MaxValue);
}
调用了分页查询的方法 GetModelCompareDiff(),实现如下:
/// <summary>
/// 分页获取模型对比结果
/// </summary>
/// <param name="accessToken">【必填】令牌</param>
/// <param name="compareId">【必填】对比ID</param>
/// <param name="elementName">构件名称</param>
/// <param name="family">族名称</param>
/// <param name="page">页码。默认第1页</param>
/// <param name="pageSize">每页记录数。默认50</param>
/// <returns></returns>
public virtual ModelCompareDiffResponse GetModelCompareDiff(string accessToken, long compareId,
string elementName = "", string family = "",
int page = , int pageSize = )
{
// GET https://api.bimface.com/data/v2/comparisons/{comparisonId}/diff
string url = string.Format(BimfaceConstants.API_HOST + "/data/v2/comparisons/{0}/diff", compareId);
if (page <= )
{
page = ;
} if (page <= )
{
page = ;
} url += "?page=" + page;
url += "&pageSize=" + pageSize; if (elementName.IsNotNullAndWhiteSpace())
{
url += "&elementName=" + elementName;
}
if (family.IsNotNullAndWhiteSpace())
{
url += "&family=" + family;
} BimFaceHttpHeaders headers = new BimFaceHttpHeaders();
headers.AddOAuth2Header(accessToken); try
{
ModelCompareDiffResponse response; HttpManager httpManager = new HttpManager(headers);
HttpResult httpResult = httpManager.Get(url);
if (httpResult.Status == HttpResult.STATUS_SUCCESS)
{
response = httpResult.Text.DeserializeJsonToObject<ModelCompareDiffResponse>();
}
else
{
response = new ModelCompareDiffResponse
{
Message = httpResult.RefText
};
} return response;
}
catch (Exception ex)
{
throw new Exception("[分页获取模型对比结果]发生异常!", ex);
}
}
方法的返回结果类ModelCompareDiffResponse如下:
/// <summary>
/// 分页获取模型对比结果的响应类
/// </summary>
public class ModelCompareDiffResponse : GeneralResponse<PaginationModelCompareDiff>
{ } public class PaginationModelCompareDiff
{
/// <summary>
/// 模型对比差异类数组
/// </summary>
[JsonProperty("data", NullValueHandling = NullValueHandling.Ignore)]
public ModelCompareDiff[] Data { get; set; } /// <summary>
/// 当前页码
/// </summary>
[JsonProperty("page", NullValueHandling = NullValueHandling.Ignore)]
public int Page { get; set; } /// <summary>
/// 总页数
/// </summary>
[JsonProperty("total", NullValueHandling = NullValueHandling.Ignore)]
public int Total { get; set; }
} /// <summary>
/// 模型对比差异类
/// </summary>
public class ModelCompareDiff
{
/// <summary>
/// 对比差异构件所属类别ID。样例 : "-2001320"
/// </summary>
[JsonProperty("categoryId", NullValueHandling = NullValueHandling.Ignore)]
public string CategoryId { get; set; } /// <summary>
/// 对比差异构件所属类别名称。样例 : "framework"
/// </summary>
[JsonProperty("categoryName", NullValueHandling = NullValueHandling.Ignore)]
public string CategoryName { get; set; } /// <summary>
/// 对比差异构件差异类型。 NEW、DELETE、CHANGE
/// </summary>
[JsonProperty("diffType", NullValueHandling = NullValueHandling.Ignore)]
public string DiffType { get; set; } /// <summary>
/// 对比差异构件ID。样例 : "296524"
/// </summary>
[JsonProperty("elementId", NullValueHandling = NullValueHandling.Ignore)]
public string ElementId { get; set; } /// <summary>
/// 对比差异构件名称
/// </summary>
[JsonProperty("elementName", NullValueHandling = NullValueHandling.Ignore)]
public string ElementName { get; set; } /// <summary>
/// 对比差异构件的族名称。样例 : "framework 1"
/// </summary>
[JsonProperty("family", NullValueHandling = NullValueHandling.Ignore)]
public string Family { get; set; } /// <summary>
/// 对比差异构件来源构件ID。样例 : "0213154515478"
/// </summary>
[JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)]
public string Id { get; set; } /// <summary>
/// 对比差异构件变更文件ID,即(当前)变更后的文件ID。样例 : "1136893002033344"
/// </summary>
[JsonProperty("followingFileId", NullValueHandling = NullValueHandling.Ignore)]
public string FollowingFileId { get; set; } /// <summary>
/// 对比差异构件来源文件ID,即 (历史)变更前的文件ID。样例 : "0213154515478"
/// </summary>
[JsonProperty("previousFileId", NullValueHandling = NullValueHandling.Ignore)]
public string PreviousFileId { get; set; } /// <summary>
/// 对比差异构件所属专业。样例 : "civil"
/// </summary>
[JsonProperty("specialty", NullValueHandling = NullValueHandling.Ignore)]
public string Specialty { get; set; }
}
代码中使用的 HttpManager 类请参考我的博客文章《C# HTTP系列 HttpWebRequest 与 HttpWebResponse》。
测试代码:
/// <summary>
/// 获取模型对比结果(所有)
/// </summary>
protected void btnGetModelCompareDiffAll_Click(object sender, EventArgs e)
{
txtResult.Text = string.Empty; long compareId = txtCompareID.Text.ToLong();
IModelCompareApi api = new ModelCompareApi();
ModelCompareDiffResponse response = api.GetModelCompareDiffAll(txtAccessToken.Text, compareId); txtResult.Text = response.SerializeToJson(true);
}
测试结果:
该结果列表中详细列出了新增、删除、修改构件的ID和名称,并按照专业、类型进行了分组。完整的对比结果如下:
{
"code": "success",
"message": null,
"data": {
"data": [
{
"categoryId": "-2001000",
"categoryName": "橱柜",
"diffType": "CHANGE",
"elementId": "",
"elementName": "4500_Kitchen Island",
"family": "4500_Kitchen Island",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001000",
"categoryName": "橱柜",
"diffType": "CHANGE",
"elementId": "",
"elementName": "4500_Kitchen Island_DW",
"family": "4500_Kitchen Island_DW",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Bar Chair",
"family": "Bar Chair",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Bar Chair",
"family": "Bar Chair",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Bar Chair",
"family": "Bar Chair",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Bar Chair",
"family": "Bar Chair",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Bar Chair",
"family": "Bar Chair",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Bar Chair",
"family": "Bar Chair",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "W1500XD400XH530",
"family": "Cabinet 1",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001160",
"categoryName": "卫浴装置",
"diffType": "CHANGE",
"elementId": "",
"elementName": "5000L 3500x900x1860",
"family": "DC_Tankworks_PLM_5000L",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001160",
"categoryName": "卫浴装置",
"diffType": "CHANGE",
"elementId": "",
"elementName": "5000L 3500x900x1860",
"family": "DC_Tankworks_PLM_5000L",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Dining Chair (3)",
"family": "Dining Chair (3)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Dining Chair (3)",
"family": "Dining Chair (3)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Dining Chair (3)",
"family": "Dining Chair (3)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Dining Chair (3)",
"family": "Dining Chair (3)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Dining Chair (3)",
"family": "Dining Chair (3)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Dining Chair (3)",
"family": "Dining Chair (3)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Dining Chair (3)",
"family": "Dining Chair (3)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Dining Chair (3)",
"family": "Dining Chair (3)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001160",
"categoryName": "卫浴装置",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Standard",
"family": "Lavatory-TOTO-Luminist_Rectangle_Vessel_LLT151",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001160",
"categoryName": "卫浴装置",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Standard",
"family": "Lavatory-TOTO-Luminist_Rectangle_Vessel_LLT151",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001160",
"categoryName": "卫浴装置",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Standard",
"family": "Lavatory-TOTO-Luminist_Rectangle_Vessel_LLT151",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001160",
"categoryName": "卫浴装置",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Standard",
"family": "Lavatory-TOTO-Luminist_Rectangle_Vessel_LLT151",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001330",
"categoryName": "结构柱",
"diffType": "CHANGE",
"elementId": "",
"elementName": "M_1000",
"family": "M_Concrete-Round-Column with Drop Caps",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600 x 600 x 900mm",
"family": "M_Pile Cap-600 Pile",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600 x 600 x 900mm",
"family": "M_Pile Cap-600 Pile",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600 x 600 x 900mm",
"family": "M_Pile Cap-600 Pile",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600 x 600 x 900mm",
"family": "M_Pile Cap-600 Pile",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600 x 600 x 900mm",
"family": "M_Pile Cap-600 Pile",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600 x 600 x 900mm",
"family": "M_Pile Cap-600 Pile",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600 x 600 x 900mm",
"family": "M_Pile Cap-600 Pile",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600 x 600 x 900mm",
"family": "M_Pile Cap-600 Pile",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600 x 600 x 900mm",
"family": "M_Pile Cap-600 Pile",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600 x 600 x 900mm",
"family": "M_Pile Cap-600 Pile",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600 x 600 x 900mm",
"family": "M_Pile Cap-600 Pile",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600mm Diameter",
"family": "M_Pile-Steel Pipe",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600mm Diameter",
"family": "M_Pile-Steel Pipe",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600mm Diameter",
"family": "M_Pile-Steel Pipe",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600mm Diameter",
"family": "M_Pile-Steel Pipe",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600mm Diameter",
"family": "M_Pile-Steel Pipe",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600mm Diameter",
"family": "M_Pile-Steel Pipe",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600mm Diameter",
"family": "M_Pile-Steel Pipe",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600mm Diameter",
"family": "M_Pile-Steel Pipe",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600mm Diameter",
"family": "M_Pile-Steel Pipe",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600mm Diameter",
"family": "M_Pile-Steel Pipe",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001300",
"categoryName": "结构基础",
"diffType": "CHANGE",
"elementId": "",
"elementName": "600mm Diameter",
"family": "M_Pile-Steel Pipe",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001370",
"categoryName": "环境",
"diffType": "CHANGE",
"elementId": "",
"elementName": "M_RPC Beetle",
"family": "M_RPC Beetle",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "0810mm",
"family": "M_TV - Flat Screen",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001260",
"categoryName": "场地",
"diffType": "CHANGE",
"elementId": "",
"elementName": "9 Meters High",
"family": "M_Wind Power Generator",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001260",
"categoryName": "场地",
"diffType": "CHANGE",
"elementId": "",
"elementName": "9 Meters High",
"family": "M_Wind Power Generator",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001260",
"categoryName": "场地",
"diffType": "CHANGE",
"elementId": "",
"elementName": "9 Meters High",
"family": "M_Wind Power Generator",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001350",
"categoryName": "专用设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Miele Microwave M 8260-2",
"family": "Miele Built-in Microwave M 8260-2",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001350",
"categoryName": "专用设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Rangehood DA-2210",
"family": "Miele Built-in Rangehood DA 2210",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Miele Built-under Dishwasher G 4101 U CS",
"family": "Miele Built-under Dishwasher G 4101 U CS",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Miele Induction Cooktop 6350 LPT",
"family": "Miele Induction Cooktop KM 6350 LPT",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001350",
"categoryName": "专用设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Miele Fridge/Freezer KF 1911 Vi",
"family": "Miele MasterCool KF 1911 Vi",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001350",
"categoryName": "专用设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Miele Oven H 5681 BP",
"family": "Miele Oven H 5681 BP",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001350",
"categoryName": "专用设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Miele Tumble Dryer T 7944 C",
"family": "Miele Tumble Dryer T 7944 C",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Miele Washing Machine W 5820 WPS",
"family": "Miele Washing Machine W 5820 WPS",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001040",
"categoryName": "电气设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Solarworld Sunmodule Plus",
"family": "Photovoltaic-Panel-SolarWorld-SunModule-(235-240)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001040",
"categoryName": "电气设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Solarworld Sunmodule Plus",
"family": "Photovoltaic-Panel-SolarWorld-SunModule-(235-240)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001040",
"categoryName": "电气设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Solarworld Sunmodule Plus",
"family": "Photovoltaic-Panel-SolarWorld-SunModule-(235-240)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001040",
"categoryName": "电气设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Solarworld Sunmodule Plus",
"family": "Photovoltaic-Panel-SolarWorld-SunModule-(235-240)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001040",
"categoryName": "电气设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Solarworld Sunmodule Plus",
"family": "Photovoltaic-Panel-SolarWorld-SunModule-(235-240)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001040",
"categoryName": "电气设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Solarworld Sunmodule Plus",
"family": "Photovoltaic-Panel-SolarWorld-SunModule-(235-240)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001040",
"categoryName": "电气设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Solarworld Sunmodule Plus",
"family": "Photovoltaic-Panel-SolarWorld-SunModule-(235-240)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001040",
"categoryName": "电气设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Solarworld Sunmodule Plus",
"family": "Photovoltaic-Panel-SolarWorld-SunModule-(235-240)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001040",
"categoryName": "电气设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Solarworld Sunmodule Plus",
"family": "Photovoltaic-Panel-SolarWorld-SunModule-(235-240)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001040",
"categoryName": "电气设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Solarworld Sunmodule Plus",
"family": "Photovoltaic-Panel-SolarWorld-SunModule-(235-240)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001040",
"categoryName": "电气设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Solarworld Sunmodule Plus",
"family": "Photovoltaic-Panel-SolarWorld-SunModule-(235-240)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001040",
"categoryName": "电气设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Solarworld Sunmodule Plus",
"family": "Photovoltaic-Panel-SolarWorld-SunModule-(235-240)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001370",
"categoryName": "环境",
"diffType": "CHANGE",
"elementId": "",
"elementName": "YinYin",
"family": "RPC Female",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001370",
"categoryName": "环境",
"diffType": "CHANGE",
"elementId": "",
"elementName": "YinYin",
"family": "RPC Female",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001370",
"categoryName": "环境",
"diffType": "CHANGE",
"elementId": "",
"elementName": "YinYin",
"family": "RPC Female",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001370",
"categoryName": "环境",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Alex",
"family": "RPC Male",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001360",
"categoryName": "植物",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Hawthorn - 25'",
"family": "RPC Tree - Deciduous",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001360",
"categoryName": "植物",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Honey Locust - 25'",
"family": "RPC Tree - Deciduous",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001360",
"categoryName": "植物",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Honey Locust - 25'",
"family": "RPC Tree - Deciduous",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001360",
"categoryName": "植物",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Honey Locust - 25'",
"family": "RPC Tree - Deciduous",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001360",
"categoryName": "植物",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Honey Locust - 25'",
"family": "RPC Tree - Deciduous",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001360",
"categoryName": "植物",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Honey Locust - 25'",
"family": "RPC Tree - Deciduous",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001360",
"categoryName": "植物",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Honey Locust - 25'",
"family": "RPC Tree - Deciduous",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001360",
"categoryName": "植物",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Honey Locust - 25'",
"family": "RPC Tree - Deciduous",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001360",
"categoryName": "植物",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Honey Locust - 25'",
"family": "RPC Tree - Deciduous",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001360",
"categoryName": "植物",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Largetooth Aspen - 25'",
"family": "RPC Tree - Deciduous",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001360",
"categoryName": "植物",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Lombardy Poplar - 40'",
"family": "RPC Tree - Deciduous",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001360",
"categoryName": "植物",
"diffType": "DELETE",
"elementId": "",
"elementName": "Red Ash - 25'",
"family": "RPC Tree - Deciduous",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001360",
"categoryName": "植物",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Red Maple - 30'",
"family": "RPC Tree - Deciduous",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001360",
"categoryName": "植物",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Red Maple - 30'",
"family": "RPC Tree - Deciduous",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001360",
"categoryName": "植物",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Scarlet Oak - 42'",
"family": "RPC Tree - Deciduous",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001360",
"categoryName": "植物",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Scarlet Oak - 42'",
"family": "RPC Tree - Deciduous",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Model with Island",
"family": "Seat - Single with Island",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Seating - Artemis - Lounge chair",
"family": "Seating - Artemis - Lounge chair",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Seating - Artemis - Lounge chair",
"family": "Seating - Artemis - Lounge chair",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Side Table 2 (2)",
"family": "Side Table 2 (2)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Side Table 2 (2)",
"family": "Side Table 2 (2)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "W600XD600",
"family": "Sofa - Ottoman",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "W600XD600",
"family": "Sofa - Ottoman",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "W600XD600",
"family": "Sofa - Ottoman",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "W600XD600",
"family": "Sofa - Ottoman",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "W600XD600",
"family": "Sofa - Ottoman",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "W600XD600 2",
"family": "Sofa - Ottoman",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "W600XD600 2",
"family": "Sofa - Ottoman",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "1800 x 900 mm",
"family": "Table-Dining 01 (M)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000080",
"categoryName": "家具",
"diffType": "CHANGE",
"elementId": "",
"elementName": "1800 x 900 mm",
"family": "Table-Dining 01 (M)",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001120",
"categoryName": "照明设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Trck_BswySystms_Cooper_RSA_Profile Series_AR111 Closed Back Integral Xfmr",
"family": "Trck_BswySystms_Cooper_RSA_Profile Series_AR111 Closed Back Integral Xfmr",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001120",
"categoryName": "照明设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Trck_BswySystms_Cooper_RSA_Profile Series_AR111 Closed Back Integral Xfmr",
"family": "Trck_BswySystms_Cooper_RSA_Profile Series_AR111 Closed Back Integral Xfmr",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001120",
"categoryName": "照明设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Trck_BswySystms_Cooper_RSA_Profile Series_AR111 Closed Back Integral Xfmr",
"family": "Trck_BswySystms_Cooper_RSA_Profile Series_AR111 Closed Back Integral Xfmr",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001120",
"categoryName": "照明设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Trck_BswySystms_Cooper_RSA_Profile Series_AR111 Closed Back Integral Xfmr",
"family": "Trck_BswySystms_Cooper_RSA_Profile Series_AR111 Closed Back Integral Xfmr",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001120",
"categoryName": "照明设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Trck_BswySystms_Cooper_RSA_Profile Series_AR111 Closed Back Integral Xfmr",
"family": "Trck_BswySystms_Cooper_RSA_Profile Series_AR111 Closed Back Integral Xfmr",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001120",
"categoryName": "照明设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Trck_BswySystms_Cooper_RSA_Profile Series_AR111 Closed Back Integral Xfmr",
"family": "Trck_BswySystms_Cooper_RSA_Profile Series_AR111 Closed Back Integral Xfmr",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001120",
"categoryName": "照明设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Trck_BswySystms_Cooper_RSA_Profile Series_AR111 Closed Back Integral Xfmr",
"family": "Trck_BswySystms_Cooper_RSA_Profile Series_AR111 Closed Back Integral Xfmr",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001120",
"categoryName": "照明设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Trck_BswySystms_Cooper_RSA_Profile Series_AR111 Closed Back Integral Xfmr",
"family": "Trck_BswySystms_Cooper_RSA_Profile Series_AR111 Closed Back Integral Xfmr",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001350",
"categoryName": "专用设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Vase (3)-with Flower",
"family": "Vase (3)-with Flower",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Walvit",
"family": "Walvit_Hung Bowl_604118 W",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Walvit",
"family": "Walvit_Hung Bowl_604118 W",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Walvit",
"family": "Walvit_Hung Bowl_604118 W",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Walvit",
"family": "Walvit_Hung Bowl_604118 W",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Water Glass",
"family": "Water Glass",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Water Glass",
"family": "Water Glass",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Water Glass",
"family": "Water Glass",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Water Glass",
"family": "Water Glass",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Water Glass",
"family": "Water Glass",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Water Glass",
"family": "Water Glass",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Water Glass",
"family": "Water Glass",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Water Glass",
"family": "Water Glass",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Fine China - Plate",
"family": "White Porcelain Plate",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Fine China - Plate",
"family": "White Porcelain Plate",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Fine China - Plate",
"family": "White Porcelain Plate",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Fine China - Plate",
"family": "White Porcelain Plate",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Fine China - Plate",
"family": "White Porcelain Plate",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Fine China - Plate",
"family": "White Porcelain Plate",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Fine China - Plate",
"family": "White Porcelain Plate",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Fine China - Plate",
"family": "White Porcelain Plate",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001350",
"categoryName": "专用设备",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Wine Bottles",
"family": "Wine Bottles",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "CHANGE",
"elementId": "",
"elementName": "White",
"family": "aalto vase - tall",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "NEW",
"elementId": "",
"elementName": "fire place hang",
"family": "fire place hang",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "CL_W1",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "CL_W1",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "CL_W1",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "CL_W1",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "CL_W1",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "CL_W1",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Cavity wall_sliders",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Foundation - 300mm Concrete",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Interior - 165 Partition (1-hr)",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Interior - 165 Partition (1-hr)",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Interior - 165 Partition (1-hr)",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Interior - Partition",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Interior - Partition",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Interior - Partition",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Interior - Partition",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Interior - Partition",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Interior - Partition",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Interior - Partition",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Interior - Partition",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Interior - Partition",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Interior - Partition",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Interior - Partition",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Interior - Partition",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Interior - Partition",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Interior - Partition",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Retaining - 300mm Concrete",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Retaining - 300mm Concrete",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Retaining - 300mm Concrete",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Retaining - 300mm Concrete",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Retaining - 300mm Concrete",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Retaining - 300mm Concrete",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Retaining - 300mm Concrete",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Retaining - 300mm Concrete",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Retaining - 300mm Concrete",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Retaining - 300mm Concrete",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "SIP 202mm Wall - conc clad",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "SIP 202mm Wall - conc clad",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "SIP 202mm Wall - conc clad",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "SIP 202mm Wall - conc clad",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Wall - Timber Clad",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Wall - Timber Clad",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Wall - Timber Clad",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Wall - Timber Clad",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Wall - Timber Clad",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Wall - Timber Clad",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Wall - Timber Clad",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Wall - Timber Clad",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000011",
"categoryName": "墙",
"diffType": "DELETE",
"elementId": "",
"elementName": "Wall - Timber Clad 2",
"family": "基本墙",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000151",
"categoryName": "常规模型",
"diffType": "DELETE",
"elementId": "",
"elementName": "宣传画",
"family": "宣传画",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2001263",
"categoryName": "建筑地坪",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Pad 2",
"family": "建筑地坪",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000126",
"categoryName": "栏杆扶手",
"diffType": "CHANGE",
"elementId": "",
"elementName": "SH_1100mm",
"family": "栏杆扶手",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000126",
"categoryName": "栏杆扶手",
"diffType": "CHANGE",
"elementId": "",
"elementName": "SH_1100mm",
"family": "栏杆扶手",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000126",
"categoryName": "栏杆扶手",
"diffType": "CHANGE",
"elementId": "",
"elementName": "SH_1100mm",
"family": "栏杆扶手",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000126",
"categoryName": "栏杆扶手",
"diffType": "CHANGE",
"elementId": "",
"elementName": "SH_1100mm",
"family": "栏杆扶手",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000126",
"categoryName": "栏杆扶手",
"diffType": "CHANGE",
"elementId": "",
"elementName": "SH_1100mm",
"family": "栏杆扶手",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000126",
"categoryName": "栏杆扶手",
"diffType": "CHANGE",
"elementId": "",
"elementName": "SH_1100mm",
"family": "栏杆扶手",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000126",
"categoryName": "栏杆扶手",
"diffType": "CHANGE",
"elementId": "",
"elementName": "SH_1100mm",
"family": "栏杆扶手",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000126",
"categoryName": "栏杆扶手",
"diffType": "CHANGE",
"elementId": "",
"elementName": "SH_1100mm",
"family": "栏杆扶手",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000126",
"categoryName": "栏杆扶手",
"diffType": "CHANGE",
"elementId": "",
"elementName": "SH_1100mm",
"family": "栏杆扶手",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000126",
"categoryName": "栏杆扶手",
"diffType": "CHANGE",
"elementId": "",
"elementName": "SH_1100mm",
"family": "栏杆扶手",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000032",
"categoryName": "楼板",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Concrete-Domestic 425mm",
"family": "楼板",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000032",
"categoryName": "楼板",
"diffType": "CHANGE",
"elementId": "",
"elementName": "Generic 150mm",
"family": "楼板",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000120",
"categoryName": "楼梯",
"diffType": "CHANGE",
"elementId": "",
"elementName": "楼梯",
"family": "组合楼梯",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000120",
"categoryName": "楼梯",
"diffType": "CHANGE",
"elementId": "",
"elementName": "楼梯",
"family": "预浇注楼梯",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
},
{
"categoryId": "-2000120",
"categoryName": "楼梯",
"diffType": "CHANGE",
"elementId": "",
"elementName": "楼梯",
"family": "预浇注楼梯",
"followingFileId": "",
"previousFileId": "",
"specialty": ""
}
],
"page": ,
"total":
}
}