Интерфейс collision

Версия 6.3 от Bimit Administrator на 24.06.2024, 10:27

Это интерфейс формирования списка коллизий (добавить/удалить в список).
В нем доступны следующие функции:

  • createCollision - создание записи о коллизии
  • boundsIntersect - проверка на пересечение границ 2 элементов

createCollision - создание записи о коллизии

  • collision.createCollision(String type, String description, String value, UUID model)  - создание описания коллизии для определенной модели по типу возникшей коллизии, описанию возникшей коллизии, значению коллизии, идентификатору модели в которой возникла коллизия
  • collision.createCollision(Element a, String type, String description, String value)  - создание описания коллизии для элемента по его идентификатору, у которого возникла коллизия, типу возникшей коллизии, описанию возникшей коллизии, значению коллизии
  • collision.createCollision(Element a, Element b, String type, String description, String value)  - создание описания коллизии между двумя элементами по идентификаторам первого и второго элемента, у которого возникла коллизия, типу возникшей коллизии, описанию возникшей коллизии, значению коллизии

Все коллизии, которые были сформированы при работе плагина, будут отправлены на сохранение.

Пример использования:  

collision.createCollision("Проверка длины", "Слишком короткая балка", length+" м", "UUID_model")

boundsIntersect - проверка на пересечение границ 2 элементов.

  • collision.boundsIntersect(double gap, Bounds boundsA, Bounds boundsB)  - проверка пересечения между границами двух эдементов по зазору, на который уменьшается/увеличиваются границы, границам первого и второго элементов описанных объектами
  • collision.boundsIntersect(Bounds boundsA, Bounds boundsB)  - проверка пересечения между границами двух элементов по границам первого и второго элемента, описанных объектами
  • collision.boundsIntersect(Vector3f minA, Vector3f maxA, Vector3f minB, Vector3f maxB)  - проверка пересечения между границами двух элементов, указанных максимальными и минимальными координатами по минимальным и максимальным границам двух элементов

Границы формируют прямоугольный параллелепипед, в который вписана фигура

Пример использования: 

collision.boundsIntersect(elementA.getBounds(), elementB.getBounds() возвращает true/false