示例#1
0
def sphere(x, y, z, r, axis=2):
    if axis == 0:
        s = xyz.Sphere(r)
        m = xyz.rotate((0, 1, 0), radians(90)).translate((x, y, z))
        return xyz.TransformedShape(s, m)
    if axis == 1:
        s = xyz.Sphere(r)
        m = xyz.rotate((1, 0, 0), radians(90)).translate((x, y, z))
        return xyz.TransformedShape(s, m)
    if axis == 2:
        return xyz.Sphere(r, (x, y, z))
示例#2
0
文件: three.py 项目: RolandJuno/xy
def sphere(x, y, z, r, axis=2):
    if axis == 0:
        s = xyz.Sphere(r)
        m = xyz.rotate((0, 1, 0), radians(90)).translate((x, y, z))
        return xyz.TransformedShape(s, m)
    if axis == 1:
        s = xyz.Sphere(r)
        m = xyz.rotate((1, 0, 0), radians(90)).translate((x, y, z))
        return xyz.TransformedShape(s, m)
    if axis == 2:
        return xyz.Sphere(r, (x, y, z))
示例#3
0
文件: pipes.py 项目: RolandJuno/xy
def pipe(a, b, r):
    x1, y1, z1 = a
    x2, y2, z2 = b
    dx, dy, dz = x2 - x1, y2 - y1, z2 - z1
    if dx:
        c = xyz.Cylinder(r, -dx / 2.0, dx / 2.0)
        m = xyz.rotate((0, 1, 0), radians(-90)).translate(((x1 + x2) / 2.0, y1, z1))
        return xyz.TransformedShape(c, m)
    if dy:
        c = xyz.Cylinder(r, -dy / 2, dy / 2)
        m = xyz.rotate((1, 0, 0), radians(-90)).translate((x1, (y1 + y2) / 2.0, z1))
        return xyz.TransformedShape(c, m)
    if dz:
        c = xyz.Cylinder(r, z1, z2)
        m = xyz.translate((x1, y1, 0))
        return xyz.TransformedShape(c, m)
示例#4
0
文件: pipes.py 项目: yychiang/xy
def pipe(a, b, r):
    x1, y1, z1 = a
    x2, y2, z2 = b
    dx, dy, dz = x2 - x1, y2 - y1, z2 - z1
    if dx:
        c = xyz.Cylinder(r, -dx / 2.0, dx / 2.0)
        m = xyz.rotate((0, 1, 0), radians(-90)).translate(
            ((x1 + x2) / 2.0, y1, z1))
        return xyz.TransformedShape(c, m)
    if dy:
        c = xyz.Cylinder(r, -dy / 2, dy / 2)
        m = xyz.rotate((1, 0, 0), radians(-90)).translate(
            (x1, (y1 + y2) / 2.0, z1))
        return xyz.TransformedShape(c, m)
    if dz:
        c = xyz.Cylinder(r, z1, z2)
        m = xyz.translate((x1, y1, 0))
        return xyz.TransformedShape(c, m)