Source code for pi3d.shape.TCone

from __future__ import absolute_import, division, print_function, unicode_literals

from pi3d.Shape import Shape
import logging

LOGGER = logging.getLogger(__name__)

[docs]class TCone(Shape): """ 3d model inherits from Shape, creates truncated cone axis y direction""" def __init__(self, camera=None, light=None, radiusBot=1.2, radiusTop=0.8, height=2.0, sides=12, name="", x=0.0, y=0.0, z=0.0, rx=0.0, ry=0.0, rz=0.0, sx=1.0, sy=1.0, sz=1.0, cx=0.0, cy=0.0, cz=0.0): """uses standard constructor for Shape extra Keyword arguments: *radiusBot* Radius of the bottom. *radiusTop* Radius at the top. *height* Height. *sides* Number of sides to divide edges of polygons. """ super(TCone, self).__init__(camera, light, name, x, y, z, rx, ry, rz, sx, sy, sz, cx, cy, cz) LOGGER.debug("Creating Truncated Cone ...") path = [(0, height * 0.5), (radiusTop * 0.999, height * 0.5), (radiusTop, height * 0.5), (radiusTop, height * 0.499), (radiusBot, -height * 0.499), (radiusBot, -height * 0.5), (radiusBot * 0.999, -height * 0.5), (0, -height * 0.5)] self.radiusBot = radiusBot self.radiusTop = radiusTop self.height = height self.buf = [self._lathe(path, sides)]