prithivMLmods commited on
Commit
63c6557
·
verified ·
1 Parent(s): a29f7c2

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +13 -2
app.py CHANGED
@@ -332,11 +332,22 @@ def generate(
332
  num_steps=64,
333
  randomize_seed=True,
334
  )
335
- # Convert the GLB file to a base64 data URL and embed it in an HTML <model-viewer> tag.
336
  data_url = glb_to_data_url(glb_path)
 
337
  html_output = f'''
338
- <model-viewer src="{data_url}" alt="3D Model" auto-rotate camera-controls style="width: 100%; height: 400px;"></model-viewer>
339
  <script type="module" src="https://unpkg.com/@google/model-viewer/dist/model-viewer.min.js"></script>
 
 
 
 
 
 
 
 
 
 
 
340
  '''
341
  yield gr.HTML(html_output)
342
  return
 
332
  num_steps=64,
333
  randomize_seed=True,
334
  )
335
+ # Convert the GLB file to a base64 data URL.
336
  data_url = glb_to_data_url(glb_path)
337
+ # Create an HTML snippet that loads model-viewer and converts the data URL to a Blob URL.
338
  html_output = f'''
 
339
  <script type="module" src="https://unpkg.com/@google/model-viewer/dist/model-viewer.min.js"></script>
340
+ <model-viewer id="model-viewer" alt="3D Model" auto-rotate camera-controls
341
+ style="width: 100%; height: 400px;"></model-viewer>
342
+ <script>
343
+ (async () => {{
344
+ const response = await fetch("{data_url}");
345
+ const arrayBuffer = await response.arrayBuffer();
346
+ const blob = new Blob([arrayBuffer], {{type: 'model/gltf-binary'}});
347
+ const blobUrl = URL.createObjectURL(blob);
348
+ document.getElementById("model-viewer").src = blobUrl;
349
+ }})();
350
+ </script>
351
  '''
352
  yield gr.HTML(html_output)
353
  return