Пример #1
0
    def scene_texcylinder2():
        def test(face, u, v):
            if face == 0:
                return (0.1, 1.0, 0.1), 0.3, 0.2, 6
            u = u - 0.5
            v = v - 0.5
            b = u / (math.sqrt(u * u + v * v))
            if 0.0 < v:
                c = math.degrees(math.asin(b))
            else:
                c = 360 - math.degrees(math.asin(b))
            c = c + 180.8
            c = c / 30.0
            c = math.floor(c)
            c = evaluator.modi(c, 2)
            if c == 1:
                return (1.0, 0.1, 0.1), 0.3, 0.2, 6
            else:
                return (0.1, 0.1, 1.0), 0.3, 0.2, 6

        l = [Light((1.0, -1.0, 1.0), (1.0, 1.0, 1.0))]
        c = Cylinder(test)
        c.translate(0.0, -0.5, 0.0)
        c.rotatex(60.0)
        c.rotatey(20.0)
        c.rotatez(40.0)
        return c, l
Пример #2
0
    def scene_viewhole():
        def blue(face, u, v):
            return (0.1, 0.1, 1.0), 0.3, 0.2, 6

        def red(face, u, v):
            return (1.0, 0.1, 0.1), 0.3, 0.2, 6

        def green(face, u, v):
            return (0.1, 1.0, 0.1), 0.3, 0.2, 6

        def yellow(face, u, v):
            return (0.1, 1.0, 1.0), 0.3, 0.2, 6

        def cyan(face, u, v):
            return (1.0, 1.0, 0.1), 0.3, 0.2, 6

        def magenta(face, u, v):
            return (1.0, 0.1, 1.0), 0.3, 0.2, 6

        def white(face, u, v):
            return (1.0, 1.0, 1.0), 0.3, 0.2, 6

        def apex(rot):
            p1 = Plane(white)
            p1.rotatex(90)
            p2 = Plane(red)
            p2.rotatex(-90)
            p2.rotatey(30)
            i = Intersect(p1, p2)
            i.rotatey(rot)
            return i

        l = [Light((1.0, -1.0, 1.0), (1.0, 1.0, 1.0))]
        cyl3 = Cylinder(red)
        cyl3.scale(0.9999, 0.9999, 0.999)
        cyl3.translate(0.0, 3.0, 0.0)
        cyl4 = Cylinder(blue)
        cyl4.scale(0.7, 4.0, 0.7)
        a1 = apex(15)
        a2 = apex(75)
        a3 = apex(135)
        a4 = apex(195)
        a5 = apex(255)
        a6 = apex(315)
        u3 = Union(Union(Union(Union(Union(a1, a2), a3), a4), a5), a6)
        cyl5 = Cylinder(magenta)
        i2 = Intersect(u3, cyl5)
        u4 = Union(cyl4, i2)
        u4.translate(0.0, 3.5, 0.0)
        d = Difference(cyl3, u4)
        d.translate(0.0, -4.0, 2.0)
        d.uscale(4.0)
        d.rotatex(-50)
        return d, l

        d1 = Difference(u2, u4)
        #d1.uscale(0.4)
        d1.translate(0.0, -3.0, 2.0)
        d1.rotatex(-50)
        return d1, l
Пример #3
0
    def scene_sphere():
        def blue(face, u, v):
            return (0.1, 0.1, 1.0), 0.3, 0.2, 6

        l = [Light((1.0, -1.0, 1.0), (1.0, 1.0, 1.0))]
        s = Sphere(blue)
        return s, l
Пример #4
0
    def scene_plane():
        def yellow(face, u, v):
            return (0.1, 1.0, 1.0), 0.3, 0.2, 6

        l = [Light((1.0, -1.0, 1.0), (1.0, 1.0, 1.0))]
        p = Plane(yellow)
        p.translate(0.0, -4.0, 0.0)
        return p, l
Пример #5
0
    def scene_cone():
        def green(face, u, v):
            return (0.1, 1.0, 0.1), 0.3, 0.2, 6

        l = [Light((1.0, -1.0, 1.0), (1.0, 1.0, 1.0))]
        c = Cone(green)
        c.translate(0.0, -0.5, 0.0)
        c.scale(2.0, 4.0, 2.0)
        #c.rotatex(90.0)
        return c, l
Пример #6
0
    def scene_cylinder():
        def green(face, u, v):
            return (0.1, 1.0, 0.1), 0.3, 0.2, 6

        l = [Light((1.0, -1.0, 1.0), (1.0, 1.0, 1.0))]
        c = Cylinder(green)
        c.translate(0.0, -0.5, 0.0)
        c.rotatex(60.0)
        c.rotatey(20.0)
        c.rotatez(40.0)
        return c, l
Пример #7
0
    def scene_cube():
        def red(face, u, v):
            return (1.0, 0.1, 0.1), 0.3, 0.2, 6

        l = [Light((1.0, -1.0, 1.0), (1.0, 1.0, 1.0))]
        c = Cube(red)
        c.translate(-0.5, -0.5, -0.5)
        c.rotatex(10.0)
        c.rotatey(20.0)
        c.rotatez(30.0)
        return c, l
Пример #8
0
    def scene_intersect():
        def blue(face, u, v):
            return (0.1, 0.1, 1.0), 0.3, 0.2, 6

        def red(face, u, v):
            return (1.0, 0.1, 0.1), 0.3, 0.2, 6

        l = [Light((1.0, -1.0, 1.0), (1.0, 1.0, 1.0))]
        s1 = Sphere(blue)
        s1.translate(-0.6, 0.0, 0.0)
        s2 = Sphere(red)
        s2.translate(0.6, 0.0, 0.0)
        i = Intersect(s1, s2)
        return i, l
Пример #9
0
    def scene_texsphere():
        def pattern(face, u, v):
            up = int(u * 24) % 2
            vp = int(v * 12) % 2
            r, g, b = 0.0, 0.1, 0.0
            if up == 0:
                r = u
            if vp == 0:
                b = v
            return (r, g, b), 0.3, 0.2, 6

        l = [Light((1.0, -1.0, 1.0), (1.0, 1.0, 1.0))]
        s = Sphere(pattern)
        return s, l
Пример #10
0
    def scene_union():
        def blue(face, u, v):
            return (0.1, 0.1, 1.0), 0.3, 0.2, 6

        def red(face, u, v):
            return (1.0, 0.1, 0.1), 0.3, 0.2, 6

        l = [Light((1.0, -1.0, 1.0), (1.0, 1.0, 1.0))]
        s1 = Sphere(blue)
        s1.translate(-0.6, 0.0, 0.0)
        s2 = Sphere(red)
        s2.translate(0.6, 0.0, 0.0)
        u = Union(s1, s2)
        return u, l
Пример #11
0
    def scene_texplane():
        def pattern(face, u, v):
            up = int(u * 6) % 2
            vp = int(v * 6) % 2
            r, g, b = 0.0, 0.1, 0.0
            if up == 0:
                r = (u % 1.0)
            if vp == 0:
                b = (v % 1.0)
            return (r, g, b), 0.3, 0.2, 6

        l = [Light((1.0, -1.0, 1.0), (1.0, 1.0, 1.0))]
        p = Plane(pattern)
        p.translate(0.0, -4.0, 0.0)
        return p, l
Пример #12
0
	def __init__(self, args, HOST = '', PORT = 57000, LIGHT_IP ='192.168.0.87'):
		vc_logging.init_logger(level = args.log_level, verbose = args.verbose)
		self.log = logging.getLogger("vc_logger")
		self.HOST = HOST
		self.PORT = PORT
		self.args = args
		self.color = {
						'red'       : 0,
						'yellow'    : 14000,
						'green'     : 25500,
						'white'		: 35000,
						'blue'      : 47000,
						'pink'      : 56100
					}

		self.lights = [Light(i,LIGHT_IP) for i in range(1,4)]
Пример #13
0
    def scene_texcone():
        def pattern(face, u, v):
            up = int(u * 24) % 2
            vp = int(v * 12) % 2
            r, g, b = 0.0, 0.1, 0.0
            if up == 0:
                r = u
            if vp == 0:
                b = v
            return (r, g, b), 0.3, 0.2, 6

        l = [Light((1.0, -1.0, 1.0), (1.0, 1.0, 1.0))]
        c = Cone(pattern)
        c.translate(0.0, -0.5, 0.0)
        c.scale(2.0, 4.0, 2.0)
        #c.rotatex(90.0)
        return c, l
Пример #14
0
    def scene_difference2():
        def blue(face, u, v):
            return (0.1, 0.1, 1.0), 0.3, 0.2, 6

        def red(face, u, v):
            return (1.0, 0.1, 0.1), 0.3, 0.2, 6

        l = [Light((1.0, -1.0, 1.0), (1.0, 1.0, 1.0))]
        c1 = Sphere(blue)
        c2 = Cylinder(red)
        c2.translate(0.0, -0.5, 0.0)
        c2.scale(0.4, 2.0, 0.4)
        d = Difference(c1, c2)
        d.rotatex(85.0)
        d.rotatey(20.0)
        d.rotatez(40.0)
        return d, l
Пример #15
0
    def scene_texcube():
        def pattern(face, u, v):
            up = int(u * 6) % 2
            vp = int(v * 6) % 2
            r, g, b = 0.0, 0.1, 0.0
            if up == 0:
                r = (u % 1.0)
            if vp == 0:
                b = (v % 1.0)
            return (r, g, b), 0.3, 0.2, 6

        l = [Light((1.0, -1.0, 1.0), (1.0, 1.0, 1.0))]
        c = Cube(pattern)
        c.translate(-0.5, -0.5, -0.5)
        c.rotatex(10.0)
        c.rotatey(20.0)
        c.rotatez(30.0)
        return c, l
Пример #16
0
    def scene_texcylinder():
        def pattern(face, u, v):
            up = int(u * 24) % 2
            vp = int(v * 12) % 2
            r, g, b = 0.0, 0.1, 0.0
            if up == 0:
                r = u
            if vp == 0:
                b = v
            return (r, g, b), 0.3, 0.2, 6

        l = [Light((1.0, -1.0, 1.0), (1.0, 1.0, 1.0))]
        c = Cylinder(pattern)
        c.translate(0.0, -0.5, 0.0)
        c.rotatex(60.0)
        c.rotatey(20.0)
        c.rotatez(40.0)
        return c, l
Пример #17
0
    def scene_difference3():
        def blue(face, u, v):
            return (0.1, 0.1, 1.0), 0.3, 0.2, 6

        def red(face, u, v):
            return (1.0, 0.1, 0.1), 0.3, 0.2, 6

        l = [Light((1.0, -1.0, 1.0), (1.0, 1.0, 1.0))]
        c1 = Cone(blue)
        c1.translate(0.0, -0.5, 0.0)
        c1.scale(1.0, 3.0, 1.0)
        c2 = Cube(red)
        c2.translate(-0.5, 1.0, -0.5)
        c3 = Cube(red)
        c3.translate(-0.5, -1.5, -0.5)
        u = Union(c2, c3)
        d = Difference(c1, u)
        d.rotatex(85.0)
        d.rotatey(20.0)
        d.rotatez(40.0)
        return d, l
Пример #18
0
from time import sleep
from datetime import datetime, timedelta
from people import Person
import os

datasource = f'{os.environ["GOOGLE_SHEET_KEY"]}'

# dictionary to store current status
person_status = {'Zaks-iPhone': None, 'Louise’s iPhone': None}

sheet = Sheet(datasource)

lights = LightSet()

for i in range(1, 13):
    lights.add_light(i, Light(i))

# louise = Person('Louise')
# zak = Person('Zak')

previous_index = None


async def poll_event(loop, prev_datetime):

    global previous_index

    records_since = sheet.get_records_since_index(previous_index)

    if (len(records_since) == 0):
        return
Пример #19
0
import time
import os

from colors import CIE
from colors.animations import ColorAnimation
from colors.frames import ColorFrame
from lights import Light

logging.basicConfig()
log = logging.getLogger(__name__)
log.setLevel(logging.DEBUG)

KEY = os.environ.get('KEY')
IP = os.environ.get('IP')

lights = [Light(id=9), Light(id=10), Light(id=11), Light(id=21)]
fire_profile = ColorAnimation(rate_s=0.8,
                              frames=[
                                  ColorFrame(color=CIE(x=0.70, y=0.29),
                                             light=lights[0]),
                                  ColorFrame(color=CIE(x=0.65, y=0.35),
                                             light=lights[1]),
                                  ColorFrame(color=CIE(x=0.62, y=0.30),
                                             light=lights[2]),
                                  ColorFrame(color=CIE(x=0.60, y=0.35),
                                             light=lights[3]),
                                  ColorFrame(color=CIE(x=0.70, y=0.29),
                                             light=lights[1]),
                                  ColorFrame(color=CIE(x=0.65, y=0.35),
                                             light=lights[2]),
                                  ColorFrame(color=CIE(x=0.62, y=0.30),
Пример #20
0
    def __init__(self):
        self.light = Light()

        self._get_shadow_client()
Пример #21
0
import asyncio
import functools
from lights import Light
from datetime import datetime
import os
from poll_events import poll_event

tv = Light(12)
lamp = Light(1)


async def periodic(loop, period):
    prev_time = datetime.now()

    while True:
        print('running periodic @', datetime.now())

        # loop.create_task(tv.party(seconds = 5, count = 8))
        # loop.create_task(lamp.party(seconds = 2, count = 8))

        loop.create_task(poll_event(loop, prev_time))

        prev_time = datetime.now()
        await asyncio.sleep(period)


async def exit():
    loop = asyncio.get_event_loop()
    print("Stop")
    loop.stop()