Имя: Пароль:
1C
1С v8
на чем сделать 3д визуализатор в 1с
,
0 vde69
 
10.05.22
12:40
есть желание сделать 3д визуализацию простых каркасных тел, что-то вроде схем к сопромату.

Собственно вопрос - какой обьект 1с взять для вывода на форме результата.
У меня пока требований только 2
1. Понятная внутреннея структура (вроде DOM модели)
2. Адекватная скорость перерисовки одиночного изменения (ну, что-бы не нужно было все перерисовывать и можно было бы делать простую анимацию)

желательно присутствие в ней декартовых координат (не 2d а именно 3d)

Понятно, что можно юзать реквизит с типом строка и отображением ПолеHTMLДокумента, но как я понимаю при изменении строки будет полная перерисовка.
1 Garykom
 
гуру
10.05.22
15:26
>можно юзать реквизит с типом строка и отображением ПолеHTMLДокумента, но как я понимаю при изменении строки будет полная перерисовка.

нет, почитай про JS
2 Salimbek
 
10.05.22
15:27
(0) На 1cpp.ru кто-то писал, аж для 7.7. Использовал для отрисовки HTML-поле и внутри на SVG вроде бы...
3 Garykom
 
гуру
10.05.22
15:27
(1)+ https://developer.mozilla.org/ru/docs/Web/API/WebGL_API/Tutorial/Creating_3D_objects_using_WebGL
есть куча готового но уже сам ищи
4 Garykom
 
гуру
10.05.22
15:29
5 Salimbek
 
10.05.22
15:30
Оказывается svg в 1С-ку встроили:
SVG  в 1с 8.3
6 Salimbek
 
10.05.22
15:37
Ну и еще одна ссылка на любопытное применение SVG: https://infostart.ru/public/1402414/
7 vde69
 
10.05.22
17:03
svg - интересная штука, но мне ее будет сложно применить.

пока попробую на базе "ГрафическаяСхема" порисовать
8 sikuda
 
11.05.22
09:58
(7) Вообще все от 1С не предназначено для подобной работы, раньше в html использовался встроенный в Windows движок браузера и там были технологии от Microsoft
Теперь 1С встроила движок Webkit, но из не стандартной библиотеки а из сторонней поэтому нет уверенности что будет полная поддержка WebGL
Хотя всегда можно проверить - http://html5test.com/

У меня в 1С не запустился - https://madebyevan.com/webgl-water/
9 vde69
 
11.05.22
12:28
короче покрутил разные решения, все-же буду делать на SVG, тут возможности реально практически любые, да и в целом лично мне тема вполне понятна (ибо HTML делал многократно)
10 sikuda
 
11.05.22
14:13
(9) Ты конечно человек уважаемый, но
SVG - это спец. разметка https://www.w3schools.com/graphics/svg_intro.asp
Canvas - это двухмерное свободное рисование - https://www.w3schools.com/graphics/canvas_intro.asp
WebGL - это как раз трехмерное моделирование - https://developer.mozilla.org/ru/docs/Web/API/WebGL_API/Tutorial/Getting_started_with_WebGL
11 Garykom
 
гуру
11.05.22
14:32
(10) сравни свою последнюю ссылку с моей из (3) :)
12 Garykom
 
гуру
11.05.22
14:33
И да если надо именно рисовать - в смысле отображать на экране то однозначно WebGL мучать
Вот если надо переносить куда то тогда еще может быть полезным SVG, чтобы в чем то другом открывать
13 sikuda
 
11.05.22
14:51
(12) Ну да, но внутри 1С WebGL большинство не работает примеров не работает - например
https://mdn.github.io/webgl-examples/tutorial/sample5/
14 Garykom
 
гуру
11.05.22
16:17
(13) может у кого то руки не оттуда или платформа не та?

https://i2.paste.pics/260b7a5eda47460877d7872635fdd552.png
15 Garykom
 
гуру
11.05.22
16:18
(14)+ плохой скрин

этот лучше https://i2.paste.pics/fbf76d1dcfd78f6f58c603db68121df1.png
16 Garykom
 
гуру
11.05.22
16:19
&НаКлиенте
Процедура Команда1(Команда)
    
    ЭтаФорма.HTML = "https://mdn.github.io/webgl-examples/tutorial/sample5/";
    
КонецПроцедуры
17 Kassern
 
11.05.22
16:26
18 Kassern
 
11.05.22
16:26
1С:Предприятие 8.3 (8.3.19.1264)
19 Garykom
 
гуру
11.05.22
17:07
(17) эээ оно же пишет поставь D3D
DirectX короче
20 Kassern
 
11.05.22
17:08
(19) А почему тогда в браузере норм отрабатывает?) DirectX стоит 12
21 Garykom
 
гуру
11.05.22
17:09
(20) А хз какой DirectX надо встроенной в 1С WebKit
22 Garykom
 
гуру
11.05.22
17:11
(20) браузер подозреваю с собой тянет все нужные либы в отличие от 1с
23 Kassern
 
11.05.22
17:13
(21) дома еще попробую, там вроде вся линейка DX есть
24 sikuda
 
11.05.22
17:33
(23) Да похоже если добавить файл d3dcompiler_xx.dll в доступный путь, то начинает работать
А он есть есть в Direct X - https://zen.yandex.ru/media/tehnichka/oshibka-faila-d3dcompiler47dll--resheniia-5fdb550e7ec4a2413d6cf843
25 sikuda
 
11.05.22
17:38
Но для серьезной работы такая образка в 1С по сравнению с браузером неприемлема
Последний пример у меня зависает - https://mdn.github.io/webgl-examples/tutorial/sample8/
26 Kassern
 
11.05.22
17:40
(25) для серьезной работы лучше это делать не в 1с)
27 Kassern
 
11.05.22
17:40
есть множество программ для работы с 3D, 1с можно использовать как прослойку, чтобы данных хранить, или передавать
28 Злопчинский
 
11.05.22
18:17
У Ильдаровича на ИС где он решал задачу укладки коробок - там есть графика.
29 Garykom
 
гуру
11.05.22
18:28
(28) на канве в js внутри полеhtml рисуй вручную как хочешь
да тормозно будет и т.д.
можно поискать либы но если захочется быстрого 3D то усп WebGL наилучшее решение с поддержкой на уровне железа
30 sikuda
 
11.05.22
23:44
Не 1С не тянет, даже не ругается уже - http://sikuda.ru/webgl/0063-3d-cube-mouse-rotate/

Обработка браузер - https://code1c.sikuda.ru/wp-content/plugins/codemirror1c/WebBrowser1C.epf
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.