修改模型 Autodesk-Forge 的属性
Modify Properties of a Model Autodesk-Forge
我正在开发一个应用程序来上传模型,然后检索并允许用户通过 Excel/CSV/JSON 修改其属性。我看到 here 模型是只读的,PATCH 不允许直接修改模型对象属性,而是更侧重于文档。
这个理解对吗?
如果可以,Forge 主机可以吗 JSON?
目前的计划是导出数据,在excel、upload/convert中修改为JSON,存储(某处),然后在Forge中显示来自[=的属性22=] 数据。但是我们正在寻找一个简单的地方来托管新的外部数据库。
是的,所有通过 Forge Model Derivative API 提取的文件都是只读的!不,您必须自己托管这样的 Web API 服务器,Forge 没有能力托管客户的 Web 服务器。
您可以查看我的自定义道具面板演示 here 及其截屏视频:
关键概念是:
- 制作一个 Web API 托管您的 属性 数据,我在此演示中使用模拟 JSON API 服务器,请参阅 forge-au-sample/mock-server。
在自定义 属性 面板中获取您自己的 属性 服务,请参阅 properties/scripts/AdnPropsPanel.js
的 line 33
getRemoteProps( dbId ) {
return new Promise(( resolve, reject ) => {
const srvUrl = getServerUrl();
fetch( `${ srvUrl }/api/props?_expand=dataType&dbId=${ dbId }`, {
method: 'get',
headers: new Headers({
'Content-Type': 'application/json'
})
})
.then( ( response ) => {
if( response.status === 200 ) {
return response.json();
} else {
return reject( new Error( response.statusText ) );
}
})
.then( ( data ) => {
if( !data ) return reject( new Error( 'Failed to fetch properties from the server' ) );
return resolve( data );
})
.catch( ( error ) => reject( new Error( error ) ) );
});
}
我正在开发一个应用程序来上传模型,然后检索并允许用户通过 Excel/CSV/JSON 修改其属性。我看到 here 模型是只读的,PATCH 不允许直接修改模型对象属性,而是更侧重于文档。
这个理解对吗?
如果可以,Forge 主机可以吗 JSON?
目前的计划是导出数据,在excel、upload/convert中修改为JSON,存储(某处),然后在Forge中显示来自[=的属性22=] 数据。但是我们正在寻找一个简单的地方来托管新的外部数据库。
是的,所有通过 Forge Model Derivative API 提取的文件都是只读的!不,您必须自己托管这样的 Web API 服务器,Forge 没有能力托管客户的 Web 服务器。
您可以查看我的自定义道具面板演示 here 及其截屏视频:
关键概念是:
- 制作一个 Web API 托管您的 属性 数据,我在此演示中使用模拟 JSON API 服务器,请参阅 forge-au-sample/mock-server。
在自定义 属性 面板中获取您自己的 属性 服务,请参阅 properties/scripts/AdnPropsPanel.js
的 line 33getRemoteProps( dbId ) { return new Promise(( resolve, reject ) => { const srvUrl = getServerUrl(); fetch( `${ srvUrl }/api/props?_expand=dataType&dbId=${ dbId }`, { method: 'get', headers: new Headers({ 'Content-Type': 'application/json' }) }) .then( ( response ) => { if( response.status === 200 ) { return response.json(); } else { return reject( new Error( response.statusText ) ); } }) .then( ( data ) => { if( !data ) return reject( new Error( 'Failed to fetch properties from the server' ) ); return resolve( data ); }) .catch( ( error ) => reject( new Error( error ) ) ); }); }