mouse2object_fixed-plane.py
Mausbewegung erzeugt Objekte in fixer Ebene, unabhängig von der Kamera-Position (wichtig für Spiele wie "Schiffe versenken, Schach, etc.")
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 # einem auf ihr befindlichen Punkt charakterisiert wird! from visual import * from random import random scene.range = 4 scene.stereodepth=2 box() # display a box for context while True: rate(20) if scene.mouse.clicked: m = scene.mouse.getclick() loc = m.project(normal=(0,0,1)) # loc is None if no intersection with plane if loc: sphere(pos=loc, radius=0.2, color=color.hsv_to_rgb((random(),1,1)))