三维模型预览图生成器

可永久使用
三个月内免费在线技术支持
三个月内免费版本升级
价格¥3999
立即下载

产品简介

三维模型预览图生成器是一种基于三维模型的专业化工具,旨在将三维模型转化为具有视觉效果和逼真度的预览图,帮助设计师和工程师更好地理解和评估模型设计作品。三维模型预览图生成服务,能够为游戏开发、电影制作、建筑设计等行业从业者提供帮助。

功能说明

三维模型预览图生成器是一个运行在服务端,为三维模型文件提供预览图生成和访问的完全独立的REST服务。

用户接口调用,即可生成三维模型对应的预览图片。通过设置不同的接口参数,可以生成两种效果的预览图: 模型基本图形360度全景预览图(雪碧图 sprites)。

模型基本图形为一张模型主视图静态png格式图片。模型基本图形样例图如下:

response

360度全景预览图是将模型前视图360度旋转拍摄,然后将多帧图像拼接在一起形成一张png图片,用户在前端开发过程中进行一些相应的设置,即可实现图片的水平滚动效果。360度全景预览图样例图如下:

2

支持格式

三维模型预览图生成服务根据模型格式支持的范围,分为基础版和扩展版,两种版本差异如下:

基本版支持将三维模型转换为基本图形或雪碧图,支持的格式范围:GLB,GLTF,STL。

扩展版也支持将三维模型转换为基本图形或雪碧图,扩展版在包含基础版的格式之外,扩展了很多其他格式,主要包括:OBJ,FBX,IFC,DAE,SHP,DXF,IGES/ IGS,3DXML,OFF,PLY,GEOJSON ,BREP,XAML,XYZ,PCD,PTS,ASC。

当前供下载的服务包为基本版(支持GLB、GLTF、STL),暂不提供扩展版服务包下载。如果您需要更多格式,请咨询在线客服。

服务包说明

在网站上完成支付后,即可进行服务包文件的下载。服务包文件下载完成,解压后内容如下:

2

解压后根目录四个文件主要内容如下:

file-previewer.tar是docker镜像文件。

docker-compose.yaml是包含docker-compose配置信息的文件。

db-init.sql是数据库初始化脚本文件。

api.doc是接口使用说明文档。

LICENSE.md是软件LICENSE说明文件,包含一些软件授权申明信息。

服务部署

部署方式

三维模型预览图生成服务的部署方式非常简单,其采用了docker容器化技术,服务包中提供了服务镜像文件,只需极少配置就能一键部署、运行。

### 导入docker镜像
docker load < file-previewr.tar 
### 运行docker容器
docker-compose up file-previewr -d

服务模式

三维模型预览图生成服务模式有两种,支持实时模式任务模式,默认情况任务模式是关闭的。两种服务模式的区别如下。

在实时模式下,调用者直接通过api调用预览服务,预览服务实时生成文件的预览图或雪碧图(Sprites),并且返回预览图。

在任务模式下,服务内部内置了一个任务调度器,通过任务调度器为文件生成预览图或雪碧图(Sprites),在任务模式下只需调用api将要处理的三维模型文件添加到任务调度器。

详细调用方法请查看接口文档。

使用方法

服务完成部署后,可以启动服务或停止服务,执行命令如下:

### 运行服务
docker-compose restart file-previewr
### 停止服务
docker-compose stop file-previewr 

接口文档

当前接口文档版本号为v1.0,更新日期为2023/11/17。

接口目录

服务包中提供4个访问接口,列表如下。

接口名称 访问url
实时生成预览图片 /previewer/base64
添加预览图生成任务 /previewer/task/add
查询任务信息 /previewer/task/:task_id
查询预览图 /previewer/img/:task_id/:angle

实时生成预览图片

通用调用[实时生成预览图片]接口,可以实时生成三维模型文件的预览图片。接口详细描述如下:

/previewer/base64

{
"file_url":"必填,文件地址, 如:http://server.cloud/files/rubit.glb"

"file_type":"必填,文件类型,如:glb"

"bgColor": "生成图片背景颜色,默认白色 #fff"

"width": "图片宽度,默认值700px"

"height": "图片高度, 默认值400"

"cameraUp": "设置相机是y/z轴向上,默认y轴向上,取值y|z"
}
 {

    "0":"0度预览图, base64格式"

    "all":"360度预览图(雪碧图),base64格式"

 }

添加预览图生成任务

通用调用[添加预览图生成任务]接口,可以向服务任务调度器中增加一个三维模型文件生成预览图的任务。接口详细描述如下:

/previewer/task/add

{
"task_id":"必填,任务id,获取是业务的id, 如果不传服务端会自动生成

"file_url":"必填,文件地址, 如:http://server.cloud/files/rubit.glb"

"params": { // 控制预览图生成的参数,不传会使用默认值

    bgColor: 生成图片背景颜色,默认白色#fff

    width: 图片宽度,默认值700px

    height: 图片高度, 默认值400

    cameraUp:设置相机是y/z轴向上,默认y轴向上,取值y|z

} 

"priority": "优先级,`number`, 默认是0,数值越大优先级越高"

"remark": "备注信息"
}
{ 
    code: 1, 
    data: { task_id :xxx }
 }

查询任务信息

通用调用[查询任务信息]接口,可以根据任务ID查询任务信息。接口详细描述如下:

/previewer/task/:task_id

{
task_id: 任务id
}
{ 
      code: number, 
      data: {
          "task_id": "任务id"
          "status": number 任务状态 0:新建,1:进行中,2:完成,3:失败
          "preview": {
              "0": "previewe_id"    // 0度预览图在previewes表中对应的id
              "all": "previewe_id"  // 360度预览图在previewes表中对应的id
          }
      }
   }

查询预览图

通用调用[查询查询预览图]接口,可以查询已经生成的预览图。接口详细描述如下:

/previewer/img/:task_id/:angle?

{
task_id:  必填, 任务id

angle: 角度 默认值0,支持取值 `0`|`all
}
{
 'Content-type': 'image/png'
  图片文件流
}
三维模型预览图生成器 - NSDT
联系客服