Create an html with three.js that contains the given .obj file.
Project description
You can use that lib to create html file from a .obj path:
from obj2html import obj2html
obj2html('model.obj', 'index.html')
# firefox index.html
Use in a Jupyter notebook to display a .obj 3D file:
! pip install obj2html
! wget https://gitlab.com/nicolalandro/obj2html/-/raw/main/test/assets/model.obj
from obj2html import obj2html
from IPython.display import display, HTML
obj2html('model.obj', 'index.html')
display(HTML('index.html'))
Use in streamlit app to display a .obj 3D file and create download button:
import streamlit as st
import streamlit.components.v1 as components
from obj2html import obj2html
html_string = obj2html("model.obj", html_elements_only=True)
components.html(html_string)
with open("model.obj") as f:
st.download_button('Download model.obj', f, file_name="download_name.obj")
It is also possible to set the scale factor, light and camera options:
camera={
"fov": 45,
"aspect": 2,
"near": 0.1,
"far": 100,
"pos_x": 0,
"pos_y": 10,
"pos_z": 20,
"orbit_x": 0,
"orbit_y": 5,
"orbit_z": 0,
},
light={
"color": "0xFFFFFF",
"intensity": 1,
"pos_x": 0,
"pos_y": 10,
"pos_z": 0,
"target_x": -5,
"target_y": 0,
"target_z": 0,
},
obj_options={
"scale_x": 30,
"scale_y": 30,
"scale_z": 30,
}
obj2html('model.obj', 'index.html', camera, light, obj_options)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
obj2html-0.14.tar.gz
(3.7 kB
view hashes)