#javascript #openjscad
#javascript #openjscad
Вопрос:
Я хотел бы загрузить несколько файлов с помощью OpenJSCAD
. Я попробовал 1 без какого-либо успеха.
Я использую OpenJSCAD
с Firefox в Ubuntu 18.04. Я пробовал как автономную, так и онлайн-версии.
Комментарии:
1. Вам следует более подробно объяснить вашу проблему. Объясните, что вы пробовали, что вы сделали.
2. Я работаю над ответом, см. openjscad.nodebb.com/topic/6/dockerized-openjscad
3. смотрите также github.com/jscad/OpenJSCAD.org/issues/245
Ответ №1:
Я улучшил раздел о включении пользовательского руководства
Вы должны иметь возможность опробовать его с любым из трех упомянутых примеров, поместив файлы примеров в папку, а затем перетащив их в OpenJSCAD
Результат должен быть таким, как в https://openjscad.org/#examples/platonics
Ответ №2:
Добро пожаловать в мир, где сложные вещи просты, а простые вещи сложны!
Команда include в OpenJSCAD будет выполнять поиск включаемого файла относительно URL включаемого файла, и для этого существуют ограничения при попытке перетаскивания файлов через браузер, и поведение, похоже, сильно зависит от браузера.
Поэтому было бы проще, если бы ваше «рабочее пространство» с файлом, который вы хотели бы использовать, размещалось в веб-сервисе, который предлагает решение OpenJSCAD.
В разделе примеров OpenJSCAD, похоже, на данный момент существует одно использование инструкции «включить», см.:
https://www.openjscad.org/examples/globe.jscad
Вы можете попробовать это через https://www.openjscad.org/index.html#examples/globe.jscad
Пожалуйста, обратите внимание, что при обновлении вы получаете сообщение об ошибке:
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL /openjscad.jscadplatonics/maths_geodesic.jscad was not found on this server.</p>
<hr>
<address>Apache/2.4.25 (Debian) Server at www.openjscad.org Port 443</address>
</body></html>
Чтобы получить тот же эффект локально, вам пришлось бы создать дочерний каталог «examples» в вашей локальной установке. Это не сработает, если вы вызовете «index.html » с URL-адресом файла
file:///usr/local/lib/node_modules/@jscad/openjscad/index.html#examples/globe.jscad
Чтобы показать принцип работы каталога «workspace», я создал докеризованную версию OpenJSCAD, которая доступна по:
Он также доступен через Docker Hub, поэтому вы можете просто попробовать его, выполнив команду:
docker run --publish=8080:8080 --name openjscad bitplan/openjscad:latest
Теперь на вашем компьютере должен быть запущен OpenJSCAD в контейнере docker, который вы можете опробовать, например
и, в частности
- http://localhost:8080/index.html#examples/globe.jscad
- http://localhost:8080/index.html#examples/platonics
чтобы увидеть использование включения.
Теперь нам нужно применить этот принцип к каталогу workspace, который подготовлен в контейнере docker и готов к локальному монтированию.
Чтобы это заработало, необходимо соблюдать некоторые правила, которые в настоящее время обсуждаются на: https://openjscad.nodebb.com/topic/6/dockerized-openjscad
Смонтируйте каталог рабочей области
docker run
--publish=8080:8080
--name openjscad
--volume $HOME/openjscad/workspace:/openjscad/packages/web/examples/workspace
bitplan/openjscad:latest
теперь файл из вашей рабочей области должен быть доступен по соответствующему URL.
Чтобы попробовать, вы можете скопировать папку platonics из
https://github.com/jscad/OpenJSCAD.org/tree/master/packages/examples/platonics
перейдите в папку workspace и попробуйте получить доступ с помощью:
http://localhost:8080/index.html#examples/workspace/platonics
теперь у вас должно быть все готово для использования
include()
по запросу