В настоящее время я пытаюсь создать класс с единственной целью быстрого создания объекта VPython и добавления дополнительных значений к объекту. VPython автоматически создает объект с такими значениями, как положение и размеры. Однако я также хочу добавить такие переменные, как физические свойства материала и импульс. Итак, вот мое решение:
class Bsphere(physicsobject):
def build(self):
sphere(pos=ObjPosition, radius=Rad,color=color.red)
С физическим объектом, выглядящим примерно так:
class physicsobject:
def __init__(self):
self.momentum=Momentum
По сути, я хочу, чтобы это по-прежнему сохраняло исходные свойства объекта VPythonsphere() при добавлении новых переменных. Это на самом деле работает изначально, объект визуализируется и добавляются переменные. Но теперь у меня нет возможности изменить объект VPython. Если я наберу:
Sphereobj.pos=(1,2,3)
Позиция будет обновляться как переменная, однако VPython не будет обновлять отображаемый объект. Теперь существует разрыв между объектом и визуализируемым объектом. Есть ли способ унаследовать аспекты рендеринга объекта VPython при создании нового объекта? я не могу просто использовать
class Bsphere(sphere(pos=ObjPosition, radius=Rad,color=color.red)):
self.momentum=Momentum
и документации по VPython не так много.