def plot(result, blocks, name): scene = ivisual.canvas(title='3D scene') for block in blocks: ivisual.sphere(pos=vector(block.x, block.y, block.z), radius=1.0 / 50, color=ivisual.color.red) for sphere in result: ivisual.sphere(pos=vector(sphere.x, sphere.y, sphere.z), radius=sphere.r, color=ivisual.color.blue) ivisual.box(pos=vector(0, 0, 0), size=(2, 2, 2), color=ivisual.color.blue, opacity=0.2)
def DefineBox(self, ElementKey, Body, Density, SizeX, SizeY, SizeZ): """Define this element as a ode Box.""" if self._hasGeom: self._geom = ode.GeomBox(_bigSpace, (SizeX, SizeY, SizeZ)) # BigSpace was None, problem with local Body spaces DisplayElement.SetDisplayObject(self, ivisual.box(frame=Body._myFrame, length=SizeX, height=SizeY, width=SizeZ)) self._mass = ode.Mass() self._mass.setBox(Density, SizeX, SizeY, SizeZ) self.AddGDMElement(Body, ElementKey) return self
def DefineBoxTotal(self, ElementKey, Body, TotalMass, SizeX, SizeY, SizeZ): """Define this element as an ode BoxTotal.""" if self._hasGeom: self._geom = ode.GeomBox(_bigSpace, (SizeX, SizeY, SizeZ)) DisplayElement.SetDisplayObject(self, ivisual.box(frame=Body._myFrame, length=SizeX, height=SizeY, width=SizeZ)) self._mass = ode.Mass() self._mass.setBoxTotal(TotalMass, SizeX, SizeY, SizeZ) self._mass.mass = TotalMass # Bug workaround? self.AddGDMElement(Body, ElementKey) return self
def DefineBoxTotal(self, ElementKey, Body, TotalMass, SizeX, SizeY, SizeZ): """Define this element as an ode BoxTotal.""" if self._hasGeom: self._geom = ode.GeomBox(_bigSpace, (SizeX, SizeY, SizeZ)) DisplayElement.SetDisplayObject( self, ivisual.box(frame=Body._myFrame, length=SizeX, height=SizeY, width=SizeZ)) self._mass = ode.Mass() self._mass.setBoxTotal(TotalMass, SizeX, SizeY, SizeZ) self._mass.mass = TotalMass # Bug workaround? self.AddGDMElement(Body, ElementKey) return self
def DefineBox(self, ElementKey, Body, Density, SizeX, SizeY, SizeZ): """Define this element as a ode Box.""" if self._hasGeom: self._geom = ode.GeomBox( _bigSpace, (SizeX, SizeY, SizeZ)) # BigSpace was None, problem with local Body spaces DisplayElement.SetDisplayObject( self, ivisual.box(frame=Body._myFrame, length=SizeX, height=SizeY, width=SizeZ)) self._mass = ode.Mass() self._mass.setBox(Density, SizeX, SizeY, SizeZ) self.AddGDMElement(Body, ElementKey) return self