According to https://github.com/wallabyway/OTG-client-sample, a new OTG format for the forge viewer has been released and it looks like it has siginificant improvement in performance as opposed to the traditional SVF format.
Currently,we are using model derivative API to translate RVT/NWD files to SVF and download it to our local machine using the extractor from the following link:
https://github.com/cyrillef/extract.autodesk.io
The question is that how do I to translate the model into OTG format and load it locally?
Thanks in advance!
As of now (end of August 2019), the OTG file format can only be obtained via a manual post-processing step through a series of unofficial API calls. However, we're planning on including the OTG output as part of the standard Model Derivative translation. Stay tuned to the blog and #AutodeskForge for updates!
Related
instead of using Model Derivative, is it possible to get file in SVF format directly from BIM360 model which has already been converted to SVF or SVF2 format? I mean not using MD service at all, thanks.
To download SVF dataset (no matter from your own bucket, or from BIM360), you need to use Forge Derivative API to get manifest (GET:manifest) info and metadata (GET:Metadata) info. The info will tell the relative cloud path of the *.svf, while *.svf stores the index of the dataset. Then download them one by one.
We have a few code that demo how to download SVF data to local. The most updated one I would recommend is my colleague Petr composed:
https://github.com/petrbroz/forge-convert-utils
It targets to convert SVF to glTF, but it has quite a few granule modules, one of which can download SVF data.
you could perform a simple test:
download the source code of the tool
run npm install
run npm run-script build
export your Forge client id and secret to env
run node samples/download-svf.js <your model urn of BIM360> <local path>
It will start the process to get manifest and download the SVF data one by one to local. This is a screenshot with my test. If you work with js, typescript, you could merge the module to your workflow.
In the context of BIM360, the uploaded models will be translated to SVF(s) automatically. So you can get the metadata, properties or load in Forge Viewer directly. This is a tutorial on how to work with BIM360 hub/project/folders/item/versions, in which no specific step to translate models.
https://learnforge.autodesk.io/#/tutorials/viewhubmodels
Pease note: this encourages the programmers, solution builders to provide extensible abilities for the end users of BIM360, adding more values for them. It does not mean to be an alterative to bypass model derivative when the solution is not for BIM360 users.
I following this tutorial
for import and work with viewpoint from Naviswork to Forge Viewer.
Do you know any solution or API on Naviswork to export this viewpoint data and saved it on my Database. Thank you in advance !
It sounds like a Navisworks API question, instead of Forge. Navisworks API does not provide a direct method to export to saved viewpoints like UI does. I happened to answer a similar question in the past. just copied here for your reference:
There is not a direct API, but with SavedViewpoint API, you could dump the data from the objects, and write to the XML yourself.
http://adndevblog.typepad.com/aec/2012/06/navisworks-net-api-2013-new-feature-saved-viewpoint.html
It might be possible not all properties in the standard xml have corresponding object with API, such as terminal_velocity, however it would not impact your workflow, as most properties (especially camera related) are available with API.
About data of redline, activate each saved viewpoint one by one (by DocumentSavedViewpoints.CurrentSavedViewpoint) , call Document.ActiveView.GetRedLines(). It can return all info of the annotations: line, eclipse, text etc in Json format.
About data of clip planes, you could use Document.ActiveView.GetClippingPlanes(). Similarly, in Json format.
Hope it helps.
The sqlite database file properties.db is usually the biggest file in the output from https://extract.autodesk.io/.
What is it used for in Forge Viewer, and if it's not used, why is it available in the ZIP file?
The reason this example is copying both is that the purpose of the sample is to demo how to extract the 'bubble' from the Autodesk server. The Design File' properties are extracted in 2 formats: aka json (json.gz) and sqlLite (sdb/db).
The Autodesk Viewer only uses the json format, but other systems may prefer using sqlLite. The json approach makes it easier when you code executes in client browsers.
It is fairly easier to modify the sample to exclude the sqlLite database if you are not interested to get this file. I can point you which code you need to modify if that's something you want to do.
That file contains the components properties as a sqlite database, which are also contained in objects_xxx.json.gz. The viewer only uses the json format.
That article shows how you can easily run the extraction code your your side, it doesn't extract the .db file:
Forge SVF Extractor in Node.js
I would like to build a CNC manufacturability analysis app using Autodesk Forge.
Setting the computational geometry algorithms aside, what kind of geometrical data can I extract from CAD files using this platform? also, is there an existing app I am unaware of?
Thanks
Depending on the input file format you can convert to different other formats:
Supported Translations
Though it's not obvious from the above list, all input formats support conversion to OBJ format, which can also be done at subcomponent level - so you don't have to export the whole model to OBJ.
Here is a sample that lets you access your files from A360 and convert them into whatever format is currently supported for them:
Model Derivative API sample
Source code: https://github.com/Autodesk-Forge/model.derivative-nodejs-sample
I want to render 3D graphics files of autodesk (.dwg and .dwf) using three.js but three.js requires 3D data to be in json format. So, I need to convert these files to three.js readable json format. I tried searching on the internet but couldn't find any solution. Can anyone tell me a good converter for these files?
Thanks in advance.
In fact Autodesk already have a converter & wegbl viewer. Go to http://developer.autodesk.com and get a key for View & Data API. There is a server side REST API that allow you to upload a CAD file and convert to a JSON stream. You can hook to it and get the output. Or, even easier, just use the JavaScript client side API to embed the viewer on your website/app
Update
The API was renamed to Model Derivative + Viewer, the first translates the source file (e.g. DWG, RVT and many others) to a web-friendly format that can be viewed on the second, which is based on Three.js (and can be customized).