Jupyter Forge is a powerful library that seamlessly integrates Autodesk Platform Services with Jupyter Notebooks, enabling interactive 3D viewing and exploration within your notebook environment.
- Show 3d viewer from Autodesk Platform Services
- Show 3d viewer from Autodesk Platform Services with object ids
- Show 3d viewer from Autodesk Platform Services with object ids and ajust width and height
- Zoom In, Zoom Out, Pan, Isolate,
- Clustering Viewer
- Search Object by Name
pip install jupyter-forge --upgrade
-
Python 3.9+
-
Setting Environment Variables, see Tutorial Create an App
Set Environment Variables
APS_CLIENT_ID=your_client_id
APS_CLIENT_SECRET=your_client_secret
from jupyter_forge import JupyterForge
from aps_toolkit import Auth
urn = "dXJuOmFkc2sud2lwcHJvZDpmcy5maWxlOnZmLlFsa1ZtVU5RUmYtanMtd3dLQ2dLM1E_dmVyc2lvbj0x"
token = Auth().auth2leg()
forge_viewer = JupyterForge(urn, token)
## CASE 1 : NONE OBJECTS IDS ISOLATE VIEWER
forge_viewer.show(width=800, height=600)
## CASE 2 : OBJECTS IDS ISOLATE VIEWER
# object id from derivative api
object_ids = [123, 456]
forge_viewer.show(object_ids, width=800, height=600)
This project is licensed under the Apache License - see the LICENSE file for details.
This is project just research in my free time and don't have any power to keep it up to date. If you want to contribute, please feel free to fork and submit a pull request.
Thanks JetBrains for providing a free All product IDE for this project.
- Jupyter Notebook
- Autodesk Platform Services
- Visual Studio Code
- JetBrains
- Python
- Create App APS Tutorial
- Understand About Derivative Urn APS
- Easy To Snoop Info Item From ACC
How can I get URN input?
- You can use
aps-toolkit
library to get URN of the item latest version.
from aps_toolkit import *
token = Auth().auth2leg()
bim360 = BIM360(token)
urn = bim360.get_latest_derivative_urn("<project_id>", "<folder_id>")
- You can batch report urn to dataframe from BIM360 class in
aps-toolkit
library.
from aps_toolkit import BIM360
from aps_toolkit import Auth
token = Auth().auth3leg()
bim360 = BIM360(token)
df = bim360.batch_report_items("<project_id>", "<folder_id>", ['.rvt'], is_sub_folder=False)
pip
install - e.
# start a server with dir
python -m http.server 54364 --directory D:\API\Forge\jupyter-forge\src\template
netstat -ano | findstr :54364
taskkill /F /PID 21008
- Kill all port relate to 54364
taskkill /F /PID 21008