Исходный код вики Интерфейс collision
Редактировал(а) Bimit Administrator 24.06.2024, 10:31
Последние авторы
author | version | line-number | content |
---|---|---|---|
1 | Это интерфейс формирования списка коллизий (добавить/удалить в список). | ||
2 | В нем доступны следующие функции: | ||
3 | |||
4 | * [[createCollision>>path:#_Toc1]] - создание записи о коллизии | ||
5 | * [[boundsIntersect>>path:#_Toc2]] - проверка на пересечение границ 2 элементов | ||
6 | * [[getCollisionEssences>>path:#_Toc3]] - получение сущности коллизии между элементами | ||
7 | * [[setCollisionEssences>>path:#_Toc4]] - присвоить коллизии | ||
8 | |||
9 | (% class="box infomessage" %) | ||
10 | ((( | ||
11 | **{{id name="_Toc1"/}}createCollision** - создание записи о коллизии | ||
12 | ))) | ||
13 | |||
14 | * **collision.createCollision(String type, String description, String value, UUID model) ** - создание описания коллизии для определенной модели по типу возникшей коллизии, описанию возникшей коллизии, значению коллизии, идентификатору модели в которой возникла коллизия | ||
15 | * **collision.createCollision(Element a, String type, String description, String value) ** - создание описания коллизии для элемента по его идентификатору, у которого возникла коллизия, типу возникшей коллизии, описанию возникшей коллизии, значению коллизии | ||
16 | * **collision.createCollision(Element a, Element b, String type, String description, String value) ** - создание описания коллизии между двумя элементами по идентификаторам первого и второго элемента, у которого возникла коллизия, типу возникшей коллизии, описанию возникшей коллизии, значению коллизии | ||
17 | |||
18 | Все коллизии, которые были сформированы при работе плагина, будут отправлены на сохранение. | ||
19 | |||
20 | **Пример использования:** | ||
21 | |||
22 | {{code language="java"}} | ||
23 | collision.createCollision("Проверка длины", "Слишком короткая балка", length+" м", "UUID_model") | ||
24 | {{/code}} | ||
25 | |||
26 | |||
27 | (% class="box infomessage" %) | ||
28 | ((( | ||
29 | **{{id name="_Toc2"/}}boundsIntersect** - проверка на пересечение границ 2 элементов. | ||
30 | ))) | ||
31 | |||
32 | * **collision.boundsIntersect(double gap, Bounds boundsA, Bounds boundsB) ** - проверка пересечения между границами двух эдементов по зазору, на который уменьшается/увеличиваются границы, границам первого и второго элементов описанных объектами | ||
33 | * **collision.boundsIntersect(Bounds boundsA, Bounds boundsB) ** - проверка пересечения между границами двух элементов по границам первого и второго элемента, описанных объектами | ||
34 | * **collision.boundsIntersect(Vector3f minA, Vector3f maxA, Vector3f minB, Vector3f maxB) ** - проверка пересечения между границами двух элементов, указанных максимальными и минимальными координатами по минимальным и максимальным границам двух элементов | ||
35 | |||
36 | Границы формируют прямоугольный параллелепипед, в который вписана фигура | ||
37 | |||
38 | **Пример использования:** | ||
39 | |||
40 | {{code language="java"}} | ||
41 | collision.boundsIntersect(elementA.getBounds(), elementB.getBounds() возвращает true/false | ||
42 | {{/code}} | ||
43 | |||
44 | (% class="box infomessage" %) | ||
45 | ((( | ||
46 | **{{id name="_Toc3"/}}getCollisionEssences** - получение сущности коллизии между элементами | ||
47 | ))) | ||
48 | |||
49 | * **collision.getCollisionEssences() ** | ||
50 | |||
51 | **Пример использования:** | ||
52 | |||
53 | {{code language="java"}} | ||
54 | {{/code}} | ||
55 | |||
56 | (% class="box infomessage" %) | ||
57 | ((( | ||
58 | **{{id name="_Toc4"/}}setCollisionEssences** - присвоить коллизии | ||
59 | ))) | ||
60 | |||
61 | * **collision.setCollisionEssences(Map<String, CollisionEssence> collisionEssences) ** | ||
62 | |||
63 | **Пример использования:** | ||
64 | |||
65 | {{code language="java"}} | ||
66 | {{/code}} |