Example #1
0
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)
Example #2
0
    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
Example #3
0
    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
Example #4
0
    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
Example #5
0
    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