Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/autodesk-forge/forge-viewhubs
Build tree view of content: Using the jsTree library, this sample shows you how to build a basic tree view of Hubs, Projects, Folders and Items. Supports menus and reloading among other features
https://github.com/autodesk-forge/forge-viewhubs
autodesk-bim360 autodesk-data-management autodesk-viewer civil3d csharp net-core
Last synced: 3 months ago
JSON representation
Build tree view of content: Using the jsTree library, this sample shows you how to build a basic tree view of Hubs, Projects, Folders and Items. Supports menus and reloading among other features
- Host: GitHub
- URL: https://github.com/autodesk-forge/forge-viewhubs
- Owner: Autodesk-Forge
- License: mit
- Created: 2017-02-23T18:43:06.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2023-03-04T00:12:49.000Z (almost 2 years ago)
- Last Synced: 2024-04-09T21:50:09.884Z (10 months ago)
- Topics: autodesk-bim360, autodesk-data-management, autodesk-viewer, civil3d, csharp, net-core
- Language: C#
- Homepage:
- Size: 25.6 MB
- Stars: 25
- Watchers: 7
- Forks: 16
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# View models on hubs (BIM 360 or Fusion Team)
![Platforms](https://img.shields.io/badge/platform-Windows|MacOS-lightgray.svg)
![.NET](https://img.shields.io/badge/.NET%20Core-3.1-blue.svg)
[![License](http://img.shields.io/:license-MIT-blue.svg)](http://opensource.org/licenses/MIT)[![oAuth2](https://img.shields.io/badge/oAuth2-v1-green.svg)](http://developer.autodesk.com/)
[![Data-Management](https://img.shields.io/badge/Data%20Management-v1-green.svg)](http://developer.autodesk.com/)
[![Viewer](https://img.shields.io/badge/Viewer-v6-green.svg)](http://developer.autodesk.com/)
[![BIM-360](https://img.shields.io/badge/BIM%20360-v1-green.svg)](http://developer.autodesk.com/)![Intermediate](https://img.shields.io/badge/Level-Intermediate-blue.svg)
# Description
This sample show a basic tree view with Hubs, Projects, Folders and Items. It does not use the ASP.NET native [TreeView](https://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.treeview.aspx) due its limitations, but the [jsTree](https://www.jstree.com/) library, that have support for menus, reload, among other features. This sample is based on the [Learn Forge](http://learnforge.autodesk.io) tutorial.
The tree view will display personal enterprise (shared) hubs, with respective projects. For Civil 3D drawings with Alignments, the **Alignment Design Check** toolbar icon list aligments and compare its curves with a minimum radius value. The following image demonstrate a tipical tree view:
## Thumbnail
![thumbnail](/thumbnail.gif)
## Live version
[forgedatamanagement.herokuapp.com](https://forgedatamanagement.herokuapp.com)
# Setup
## Prerequisites
1. **BIM 360 Account**: (optional) must be Account Admin to add the app integration. [Learn about provisioning](https://forge.autodesk.com/blog/bim-360-docs-provisioning-forge-apps).
2. **Forge Account**: Learn how to create a Forge Account, activate subscription and create an app at [this tutorial](http://learnforge.autodesk.io/#/account/).
3. **Visual Studio**: Either Community (Windows) or Code (Windows, MacOS).
4. **.NET Core** basic knowledge with C#
5. **JavaScript** basic knowledge with **jQuery**## Running locally
Clone this project or download it. It's recommended to install [GitHub desktop](https://desktop.github.com/). To clone it via command line, use the following (**Terminal** on MacOSX/Linux, **Git Shell** on Windows):
git clone https://github.com/Autodesk-Forge/forge-viewhubs
**Visual Studio 2022** (Windows):
Right-click on the project, then go to **Debug**. Click on `Open debug launch profiles UI`. Adjust the settings as shown below.
![](forgeSample/wwwroot/img/readme/debug_settings_1.png)
Finally scroll down the same window to `enable SSL` and `Anonymous Authentication`. Make sure they are both checked.
![](forgeSample/wwwroot/img/readme/debug_settings_2.png)
**Visual Code** (Windows, MacOS):
Open the folder, at the bottom-right, select **Yes** and **Restore**. This restores the packages (e.g. Autodesk.Forge) and creates the launch.json file. See *Tips & Tricks* for .NET Core on MacOS.
![](forgeSample/wwwroot/img/readme/visual_code_restore.png)
**ngrok**
For webhooks service to send notifications to your localhost server, you may want to use ngrok. Check this link on [how to configure ngrok](https://forge.autodesk.com/en/docs/webhooks/v1/tutorials/configuring-your-server/). You can find more information on about ngrok [here](https://ngrok.com).
**Environment variables**
At the `.vscode\launch.json`, find the env vars and add your Forge Client ID, Secret and callback URL. Also define the `ASPNETCORE_URLS` variable. The end result should be as shown below:
```json
"env": {
"ASPNETCORE_ENVIRONMENT": "Development",
"ASPNETCORE_URLS" : "http://localhost:3000",
"FORGE_CLIENT_ID": "your id here",
"FORGE_CLIENT_SECRET": "your secret here",
"FORGE_CALLBACK_URL": "http://localhost:3000/api/forge/callback/oauth",
"FORGE_WEBHOOK_URL": "your ngrok address", e.g https://34e2-105-27-239-221.in.ngrok.io
},
```## Deployment
To deploy this application to Heroku, the **Callback URL** for Forge must use your `.herokuapp.com` address. After clicking on the button below, at the Heroku Create New App page, set your Client ID, Secret and Callback URL for Forge.
[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy)
Watch [this video](https://www.youtube.com/watch?v=Oqa9O20Gj0c) on how deploy samples to Heroku.
# Further Reading
Documentation:
- [BIM 360 API](https://developer.autodesk.com/en/docs/bim360/v1/overview/) and [App Provisioning](https://forge.autodesk.com/blog/bim-360-docs-provisioning-forge-apps)
- [Data Management API](https://developer.autodesk.com/en/docs/data/v2/overview/)
- [Viewer](https://developer.autodesk.com/en/docs/viewer/v6)Tutorials:
- [Learn Forge](http://learnforge.autodesk.io)
- [View BIM 360 Models](http://learnforge.autodesk.io/#/tutorials/viewhubmodels)### Tips & Tricks
This sample uses .NET Core and works fine on both Windows and MacOS, see [this tutorial for MacOS](https://github.com/augustogoncalves/dotnetcoreheroku).
### Troubleshooting
1. **Cannot see my BIM 360 projects**: Make sure to provision the Forge App Client ID within the BIM 360 Account, [learn more here](https://forge.autodesk.com/blog/bim-360-docs-provisioning-forge-apps). This requires the Account Admin permission.
2. **error setting certificate verify locations** error: may happen on Windows, use the following: `git config --global http.sslverify "false"`
## License
This sample is licensed under the terms of the [MIT License](http://opensource.org/licenses/MIT). Please see the [LICENSE](LICENSE) file for full details.
## Written by
Augusto Goncalves [@augustomaia](https://twitter.com/augustomaia), [Forge Partner Development](http://forge.autodesk.com)