如何解决Autodesk Forge Viewer:将片段材质连接到 Revit 模型数据
编辑:TLDR 目前无法知道片段级别的材料名称。
我想从节点的片段中读取材质并根据使用 Revit 材质名称作为键的贴图更改它们的材质。
我有以下来自模型节点的“材料和饰面”属性(通过 Viewer3D 检索):
有没有办法设置三种材料的名称以匹配模型数据(或完全使用它们)?
理想情况下,我可以将这三种材料与从该节点提取的以下材料相匹配:
解决方法
不幸的是,SVF 文件格式(由模型衍生服务生成并由 Forge Viewer 加载)不保留材料名称。片段只是根据其在列表中的索引与特定材料相关联。
“材料和饰面”数据基本上只是原始文件(在本例中为 Revit 模型)的特定属性,在其他文件格式中可能不可用。
编辑:我尝试查看 Materials.json.gz 文件,不幸的是,其中也不包含名称:
{
"name": "LMVTK Simple Materials","version": "1.0","scene": {
"SceneUnit": 8215,"YIsUp": 0
},"materials": {
"0": {
"version": 2,"userassets": ["0"],"materials": {
"0": {
"tag": "","proteinType": "","definition": "SimplePhong","properties": {
"integers": {
"mode": 4
},"booleans": {
"color_by_object": false,"generic_is_metal": false,"generic_backface_cull": true
},"scalars": {
"generic_transparency": {
"units": "","values": [0]
}
},"colors": {
"generic_diffuse": {
"values": [{
"r": 0,"g": 1,"b": 0,"a": 1
}]
}
}
},"transparent": false,"textures": {
}
}
}
},"1": {
"version": 2,"colors": {
"generic_diffuse": {
"values": [{
"r": 0.400000,"g": 0.400000,"b": 0.400000,"textures": {
}
}
}
}
...
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。