#!/usr/bin/env python
# coding: utf-8
# In[7]:
import os
from OCC.Core.gp import gp_Dir
from OCC.Display.WebGl.jupyter_renderer import JupyterRenderer
from OCC.Extend.DataExchange import read_step_file, export_shape_to_svg
from OCC.Display.WebGl.x3dom_renderer import X3DExporter
import OCC.Core.TopAbs as TopAbs
import ipywidgets as widgets
# widgets
file_picker = widgets.FileUpload(accept='.stp,.step',description='choose step file')
file_name = widgets.Text(placeholder='uploaded file')
color_picker = widgets.ColorPicker(
concise=False,
description='Pick a color',
value='white',
disabled=False)
vbox = widgets.VBox([widgets.HBox([file_picker, file_name]), color_picker])
def on_filepicker_change(change):
newValue = change['new']
for k, v in newValue.items():
print(k)
file_name.value = k
file_picker.observe(on_filepicker_change, names='value')
# In[8]:
vbox
# In[10]:
help(file_picker)
# In[3]:
shp = read_step_file(os.path.join('..','assets', 'step', 'as1_pe_203.stp'))
# In[25]:
x3dexp = X3DExporter(shp, None, None, False, (1,1,0), (0,0,0), 0, 0, (0,0,0), 2, 1)
# In[26]:
x3dexp.compute()
# In[27]:
len(x3dexp._triangle_sets)
# In[28]:
x3d=x3dexp.to_x3dfile_string(0)
# In[4]:
from OCC.Core.VrmlAPI import VrmlAPI_Writer
# In[6]:
myWriter = VrmlAPI_Writer()
# In[7]:
myWriter.Write(shp,'Vent.wrl')
# In[8]:
from subprocess import *
# In[9]:
run(['chmod','a+x','../bin/tovrmlx3d'])
# In[10]:
out=run(['../bin/tovrmlx3d','--encoding','xml','Vent.wrl'], stdout=PIPE)
# In[12]:
x3domHTML = '''
'''
# In[13]:
import xml.etree.ElementTree as ET
# In[14]:
from IPython.display import HTML
# In[15]:
x3domXML = ET.tostring(ET.XML(out.stdout), encoding="unicode", short_empty_elements=False)
# In[17]:
HTML(x3domHTML + x3domXML)
# In[18]:
shp.DumpJsonToString()
# In[28]:
TopAbs.topabs_ShapeTypeFromString('COMPOUND')
# In[ ]: