【问题标题】:Is there a way to control how the thumbnail are rendered?有没有办法控制缩略图的呈现方式?
【发布时间】:2017-01-10 03:48:26
【问题描述】:

使用衍生API我发现生成的缩略图很暗,这是查看器的截图:

这是自动生成的缩略图截图:

上传的文件是一个STL文件。

如何生成类似于预览的缩略图?

谢谢!

【问题讨论】:

    标签: autodesk-viewer autodesk-model-derivative


    【解决方案1】:

    遗憾的是,目前无法使用 Derivatives API 控制缩略图生成。

    我们有一个 Render-as-a-service API,它将在某个时候发布,但它还没有可用。

    目前唯一的解决方法是在查看器中加载模型并对其进行截图。有一个用于生成屏幕截图的 API,请参阅my blog post,因此该过程可以自动化,但模型必须在浏览器中呈现。

    希望有帮助

    【讨论】:

      【解决方案2】:

      在 Instructables.com(Autodesk 的资产之一),我们遇到了与衍生 API 相同的问题;我们还需要比 Forge API 提供的 400x400 图像更大的缩略图。

      如果您使用的是 Nodejs,您可以使用我们的开源缩略图器,它可以非常快速地在服务器端生成 STL 缩略图:

      https://www.npmjs.com/package/node-stl-thumbnailer

      这里的方法是在服务端创建一个threejs场景,然后使用CanvasRenderer和node-canvas进行渲染。因此,它不依赖于 Web 浏览器、GPU 或其他前端技术。因为它不是光线追踪器,所以它没有完整渲染服务的计算开销,但它也有限制。不支持阴影、光照或材质等问题。

      演示项目展示了一个快速的 expressjs 应用程序,它将接受 STL 的 URL,并同步返回请求大小的缩略图。

      代码如下所示:

      // index.js 
      var StlThumbnailer = require('node-stl-thumbnailer');
      var app = require("express")();
      
      app.get('/thumbnailer', function(req, res, next) {
          var thumbnailer = new StlThumbnailer({
              url: req.query.url,
              requestThumbnails: [
                  {
                      width: 500,
                      height: 500,
                  }
              ]   
          })
          .then(function(thumbnails){
                // thumbnails is an array (in matching order to your requests) of Canvas objects 
                // you can write them to disk, return them to web users, etc 
                thumbnails[0].toBuffer(function(err, buf){      
                res.contentType('image/png');
                res.send(buf)
              })
          })
          .catch(function(err){
              res.status(500);
              res.send("Error thumbnailing: "+err);
          });
      });
      
      app.listen(3000, function () {
        console.log('Listening on port 3000\n')
      });
      

      这是一个“渲染”示例:

      Sample Thumbnailer Output

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-11-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-05-27
        • 2023-03-15
        相关资源
        最近更新 更多