встраивание три. js в Колабе - PullRequest
1 голос
/ 29 марта 2020

Вот некоторые примеры двунаправленной связи между python и javascript в Google Colab: https://colab.research.google.com/notebooks/snippets/advanced_outputs.ipynb

Как мне получить эту простую тройку. js демо работает в колабе? https://threejs.org/examples/webgl_buffergeometry_lines.html

Исходный код кажется действительно простым, но я не могу заставить его работать в Colab.

Можем ли мы также отправлять обновленные данные BufferGeometry (эффективно, в двоичная форма) от python numpy массива до трех. js?

1 Ответ

1 голос
/ 29 марта 2020

Вот основная часть, которую я изменяю

import * as THREE from 'https://unpkg.com/three?module';
//import Stats from './jsm/libs/stats.module.js';

Я импортирую ТРИ из unpkg и удаляю часть статистики.

Вот рабочий блокнот .

JS вызов Python

Если вам нужно получить данные в ТРИ из Python, есть 2 сложных способа.

  1. invokeFunction: см. эти 3 примера . Ограничение состоит в том, что вы можете передавать только JSON данные.

  2. proxyPort API: см. это решение от @blois и мое упрощение . Вам нужно запустить веб-сервер. Вы можете обслуживать двоичные данные, указав заголовок content-length, как описано здесь . Используйте fetch и arrayBuffer на приемном конце. В настоящее время это решение, похоже, не работает с Firefox, но оно работает с Chrome.

...