Autodesk Forge 学习简谈 - 4

news/2023/12/1 6:23:50 标签: javascript, php

就上文提到的四类常见咨询内容,本文介绍第四类:离线模型的下载和部署。

这是个经典问题,主要和Forge模型上载,转换,网页查看模型几个API有关,尤其国内朋友最为关心。所以单独提出来介绍。

默认情况下,Forge转换后的数据放在Forge云端(目前在AWS美国),所以就有网络访问性能的考虑。转换后的数据在云端都有唯一的地址,Forge也允许下载,对于obj,stl等格式,下载很直接,这里有两篇文章介绍:

  • 转换模型为OBJ并下载

  • 转换模型为STL并下载

而挑战是SVF格式,也就支持网页浏览的格式。SVF不是单一文件,是一个数据包,包括了构件几何信息,属性包,有一个.svf的清单文件(二维模型是.F2D)。而Forge Viewer的JavaScript库对此数据进行解析和渲染。例如,下图是前面提到的Forge Viewer 课程系列(全英文)中使用到的离线数据包。目前,SVF数据格式并没有文档说明,不过,只要按清单文件下载到这些数据,用Viewer3D.js和其辅助*.js解析加载即可,倒不用一定要知道数据格式。而使用Forge Viewer相关js代码前提是数据包是由Forge的数据提取和转换服务而来。

图片描述

我们部门也提供了一个工具http://extract.autodesk.io/ ,专门用来上传,下载离线SVF包,而且这个工具还给您搭建了一个很简单的测试框架(Node.js和PHP两种)。

图片描述

很多朋友对于这个工具实现的转换下载非常感兴趣,但该工具很综合,流程较为复杂,不太容易弄清楚其逻辑。而由于相关下载过程现在并不是发布的云服务,所以没有文档以说明,所以我们的建议是,如果不能能研究清楚下载逻辑,就直接使用其转换结果即可,不用花太多时间在这上面。等待文档完善,或对应的SDK封装了下载端口,使用就更为方便了。

此工具网站是公开的,请不要上载您的机密模型,假设不慎上载了,可以通过删除按钮及时删掉。更建议把其源代码下载部署,在您的本地端去上载转换,这样。您的模型只需要和Forge云服务通信,保证了只有您能访问这些模型数据,并且在遇到故障的时候,易于调试。

最后,注意:使用Forge Viewer客户端的JavaScript代码,必须是从Forge数据提取和转换服务得到的的数据。


http://www.niftyadmin.cn/n/981302.html

相关文章

Mysql数据库初章--管理篇

文章目录1. 为什么要使用数据库一:Mysql基本操作命令1.1:查看数据库信息1.2:查看数据库中的表信息1.3:查看数据库的结构(字段)1.4:SQL语言概述二:创建数据库和表2.1:DDL语…

Linux小技巧之大文件切割

在日常运维工作中经常遇到比较大文件,由其是一些日志文件,动辄几个G。 这时想从日志中搜索的有用的信息,是比较耗时间和资源的。【尤其是一些小白喜欢直接VI】 split 命令可以直接帮助我们将文件切成不同等分,直接上干货&#xf…

使用 ES2015 编写 Gulp 构建

Gulp 自 v3.9.0 版本增加对 Babel 的支持,也就是说可以使用 ES2015 语法来编写 gulp 任务。 检查 gulp 版本 $ gulp -v 确保 gulp-cli 和 gulp 都是 v3.9.0 以上版本。 $ npm install gulp && npm install gulp -g 安装 babel 安装 babel-core 和 babel-pre…

JAVA中重写equals()方法为什么要重写hashcode()方法说明

重写hashCode()时最重要的原因就是:无论何时,对同一个对象调用hashCode()都应该生成同样的值。如果在将一个对象用put()方法添加进HashMap时产生一个hashCode()值,而用get()取出时却产生了另外一…

Linux小技巧之终端窗口screen

远程管理的时候,如果网络不好,经常会遇到执行的命令被中断。 比如:ssh 到一台服务器,执行一个imp命令,执行到一半,结果网络断了。前功尽弃。 这时候就是screen登场的时候。screen 会直接打开一个虚拟终端…

复习篇--lvm

LVM是 Logical Volume Manager(逻卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制,它由Heinz Mauelshagen在Linux 2.4内核上实现。一.基本概念及关系PV (物理卷) :可以是磁盘分区、硬盘本身或回环文件。物…

ajax中解析json数据的各种方法(返回类型为json或text)

对于json 从servlet中返回给ajax的dataType类型可以是text,json 1、在servlet中构造json文本,再response.getWriter()给ajax,返回json text文本 servlet中,一面一段写在doPost或doGet中,但要相互调用this.doGet(rq,rs)或this.doGe…

TDengine 最大打开文件数nofile不生效

在部署TDengine后,如果数据量比较大,很容易遇到达到最大打开文件数(Max open files)的问题。 可是调整 /etc/security/limits.conf 中的nofile,发现并不能解决问题。 造成以上问题的原因有几个: 1、RHEL7/CentOS7 以后的系统limi…

【Java每日一题】20170306

为什么80%的码农都做不了架构师?>>> 20170303问题解析请点击今日问题下方的“【Java每日一题】20170306”查看(问题解析在公众号首发,公众号ID:weknow619) package Mar2017; public class Ques0306 { …

TDengine 备份与恢复

目录TDengine 备份与恢复1.taosdump 介绍2.数据库备份2.1. 备份数据库2.2.备份超级表/普通表3.数据恢复3.1.恢复数据库3.2.恢复超级表/普通表TDengine 备份与恢复 以下操作均使用在CentOS7、 TDengine 2.4.0.7 下进行。 实验环境如下: ##服务端:ms06.d…

SQL 存储过程入门(事务)

本篇我们来讲一下事务处理技术。 为什么要使用事务呢,事务有什么用呢,举个例子。 假设我们现在有个业务,当做成功某件事情的时候要向2张表中插入数据,A表,B表,我们插入的顺序是先插入A,再插入B表…

关于TDengine资深DBA才会问的11个问题

目录Q1、是否需要开启大页(HugePage)?Q2、是否需要关闭NUMA?Q3、是否需要配置信号量sem?Q4、裸盘还是LVM?Q5、固态盘还是机械盘?Q6、是否需要配置资源限制?Q7、是否要关闭SELinuxQ8、EXT4 还是 XFS&#xf…

FreeBSD 10 + Nginx 1.4.4 + PHP 5.5.9 + MySQL 5.6.1

2019独角兽企业重金招聘Python工程师标准>>> FreeBSD 10 Nginx 1.4.4 PHP 5.5.9 MySQL 5.6.15 How to Install Nginx and PHP-FPM on FreeBSD 10 Mr. Neo Chen (netkiller), 陈景峰(BG7NYT) 中国广东省深圳市龙华新区民治街道溪山美地51813186 1311366889086 …

[转]Using NLog for ASP.NET Core to write custom information to the database

本文转自:https://github.com/NLog/NLog/issues/1366 In the previous versions of NLog it was easily possible to map custom log properties to custom database columns using LogEventInfo and ${event-properties} layout renderer: LogEventInfo evt new L…

InfluxDB 参数详解

InfluxDB 是老牌的时序数据了,DB-ranking 的 TOP 1。 相比之前提到的后起之秀 TDengine,应该是当之无愧的时序数据库(Time Series Database)总镖把子。 PrometheusInfluxDBGrafana 监控铁三角更是众所周知。很可惜的是 InfluxDB 的集群功能只有企业版采有…

MySQL四种事务隔离级的说明

MySQL四种事务隔离级的说明
最新文章