maus2object_in-ebene.py
maus2object_in-ebene.py — text/python-source, 1 KB
Dateiinhalt
# -*- coding: utf-8 -*-
# visual - Test Mausinteraktion 5
# Der Benutzer des Beispielprogramms kann Bälle in einer Ebene
# parallel zur xy-Ebene platzieren und zwar unabhängig vom Benutzerstandort
# Die Methode
#
# scene.mouse.project(normal=(x,y,z), point=(x,y,z))
#
# legt also eine Ebene fest, welche durch den senkrecht stehenden Normalenvektor und
# einen auf ihr befindlichen Punkt charakterisiert wird!
from visual import *
from random import random
def zufallsfarbe():
return random(),random(), random()
scene.range = 1
scene.stereodepth=2
box() # display a box for context
while True:
rate(50)
if scene.mouse.clicked:
m = scene.mouse.getclick()
#loc = m.pos
#print loc
#sphere(pos=loc, radius=0.2, color=color.cyan)
loc = m.project(normal=(0,0,1))
# loc is None if no intersection with plane
if loc:
sphere(pos=loc, radius=0.2, color=zufallsfarbe())