У меня есть холст Fabric.js с группой фигур на нем («токен») и прямоугольник, на который я собираюсь перетащить токен («платформа»). Перетаскивание токена на платформу приведет к различным событиям.
Когда я звоню token.intersectsWithObject(platform)
, все работает отлично. Но у меня будет несколько платформ для перетаскивания токенов, и я хочу повысить точность взаимодействия перетаскивания, поэтому я решил, что при проверке на столкновение я хочу учитывать только основание жетон, а не все.
Это не должно быть слишком сложно, так как основание жетона представляет собой фигуру. Все, что мне нужно сделать, это сохранить ссылку на эту фигуру в token.base
и вызвать token.base.intersectsWithObject(platform)
.
Но почему-то это не работает. token.base.intersectsWithObject()
существует, но всегда возвращает false
. Я не могу понять, почему. Кто-нибудь может помочь? Вот CodePen; щелкните переключатель в верхней части JavaScript, чтобы переключить соответствующую логику между token
и token.base
.