Хорошо, я думаю, что у меня довольно крутое решение. Допустим, у вас есть файл a
и файл b
. У вас есть def
или class
в файле b
, который вы хотите использовать в модуле a
, но у вас есть что-то еще, либо def
, class
, либо переменная из файла a
что вам нужно в вашем определении или классе в файле b
. Что вы можете сделать, это внизу файла a
после вызова функции или класса в файле a
, которая необходима в файле b
, но прежде чем вызывать функцию или класс из файла b
, который вам нужен для файла a
, скажем import b
Затем, и вот ключевая часть во всех определениях или классах файла b
, которым нужны def
или class
из файла a
(назовем это CLASS
), вы говорите from a import CLASS
Это работает, потому что вы можете импортировать файл b
без Python, выполняющего какие-либо из операторов импорта в файле b
, и, таким образом, вы избегаете любых циклических импорта.
Например:
class A(object):
def __init__(self, name):
self.name = name
CLASS = A("me")
import b
go = B(6)
go.dostuff
class B(object):
def __init__(self, number):
self.number = number
def dostuff(self):
from a import CLASS
print "Hello " + CLASS.name + ", " + str(number) + " is an interesting number."
Voila.
ARCore поддерживает только гравитацию. Начало координат всегда является начальной позицией вашего устройства с левой системой координат, так как + y - направление вверх.
Вы всегда можете создать и привязать объект и поместить весь свой контент как дочерний элемент для этого объекта, если вы хотите изменить систему координат. Тогда вы можете работать в локальном пространстве и, например, иметь ось Z, как вверх, в зависимости от начального вращения объекта.
Таким образом, с небольшим количеством кода вы можете добиться гравитации корпуса и заголовка и камеры наблюдения.