Ejemplo n.º 1
0
def draw_photon(x,y,z,up):
	gl_save_add("photon",x,-1.0,z,[int(up)])
	glLineWidth(3)
	length=0.9
	if up==True:
		set_color(0.0, 0.0, 1.0,"photon",alpha=0.5)
	else:
		set_color(0.0, 1.0, 0.0,"photon",alpha=0.5)


	wx=np.arange(0, length , 0.025)
	wy=np.sin(wx*3.14159*8)*0.2
	
	start_y=y+length
	stop_y=y

	glBegin(GL_LINES)
	for i in range(1,len(wx)):
		glVertex3f(x, start_y-wx[i-1], z+wy[i-1])
		glVertex3f(x, start_y-wx[i], z+wy[i])

	glEnd()

	if up==False:
		glBegin(GL_TRIANGLES)

		glVertex3f(x-0.1, stop_y,z)
		glVertex3f(x+0.1, stop_y ,z)
		glVertex3f(x,stop_y-0.1 ,z)

		glEnd()
	else:
		glBegin(GL_TRIANGLES)

		glVertex3f(x-0.1, start_y,z)
		glVertex3f(x+0.1, start_y ,z)
		glVertex3f(x,start_y+0.1 ,z)

		glEnd()
Ejemplo n.º 2
0
def box(x, y, z, w, h, d, r, g, b, alpha):
    gl_save_add("box", x, y, z, [w, h, d, r, g, b, alpha])
    red = r
    green = g
    blue = b

    #btm
    set_color(red, green, blue, "box_lines", alpha=alpha)

    glBegin(GL_QUADS)
    glVertex3f(x + 0.0, y + 0.0, z + 0.0)
    glVertex3f(x + w, y + 0.0, z + 0.0)
    glVertex3f(x + w, y + 0.0, z + d)
    glVertex3f(x + 0.0, y + 0.0, z + d)
    glEnd()

    #back
    red = red * 0.95
    green = green * 0.95
    blue = blue * 0.95

    set_color(red, green, blue, "box_lines", alpha=alpha)

    glBegin(GL_QUADS)
    glVertex3f(x + 0.0, y + h, z + 0.0)
    glVertex3f(x + w, y + h, z + 0.0)
    glVertex3f(x + w, y + h, z + d)
    glVertex3f(x + 0.0, y + h, z + d)
    glEnd()

    #right
    red = red * 0.95
    green = green * 0.95
    blue = blue * 0.95
    set_color(red, green, blue, "box_lines", alpha=alpha)

    glBegin(GL_QUADS)
    glVertex3f(x + w, y, z)
    glVertex3f(x + w, y + h, z)
    glVertex3f(x + w, y + h, z + d)
    glVertex3f(x + w, y, z + d)
    glEnd()

    #left
    red = red * 0.95
    green = green * 0.95
    blue = blue * 0.95
    set_color(red, green, blue, "box_lines", alpha=alpha)

    glBegin(GL_QUADS)
    glVertex3f(x, y, z)
    glVertex3f(x, y + h, z)
    glVertex3f(x, y + h, z + d)
    glVertex3f(x, y, z + d)
    glEnd()

    #front
    red = r
    green = g
    blue = b

    set_color(red, green, blue, "box_lines", alpha=alpha)

    glBegin(GL_QUADS)
    glVertex3f(x, y, z + d)
    glVertex3f(x + w, y, z + d)
    glVertex3f(x + w, y + h, z + d)
    glVertex3f(x, y + h, z + d)
    glEnd()

    red = red * 0.8
    green = green * 0.8
    blue = blue * 0.8

    #top
    set_color(red, green, blue, "box_lines", alpha=alpha)
    glBegin(GL_QUADS)
    glVertex3f(x, y + h, z)
    glVertex3f(x + w, y + h, z)
    glVertex3f(x + w, y + h, z + d)
    glVertex3f(x, y + h, z + d)
    glEnd()