Links und Funktionen
Sprachumschaltung

Navigationspfad
Sie sind hier: Startseite / Probestudium / 2013 / WS I: 3D-Programmierung / Tutorials / Mouse-Events / maus2object_in-ebene.py


Inhaltsbereich

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())

Funktionsleiste