gl.glPolygonMode(gl.GL_FRONT_AND_BACK, gl.GL_FILL) polygon.draw(gl.GL_TRIANGLE_FAN) gl.glLineWidth(1.0) polygon["color"] = 0.50, 0.50, 0.50, 1.00 gl.glPolygonMode(gl.GL_FRONT_AND_BACK, gl.GL_LINE) polygon.draw(gl.GL_TRIANGLE_FAN) gl.glLineWidth(3.0) polygon["color"] = 0.00, 0.00, 0.00, 1.00 polygon.draw(gl.GL_LINE_LOOP, O) points.draw() np.random.seed(1) P = 0.95 * np.random.uniform(-1, 1, (50, 3)) H = P[scipy.spatial.ConvexHull(P[:, :2]).vertices] points = MarkerCollection(marker="disc") points.append(H, bg_color=(1, 1, 1, 1), size=16) points.append(P, bg_color=(0, 0, 0, 1), size=4) P = P[scipy.spatial.ConvexHull(P[:, :2]).vertices] polygon = gloo.Program(vertex, fragment, count=len(P)) polygon["position"] = P O = scipy.spatial.ConvexHull(P[:, :2]).vertices O = O.astype(np.uint32).view(gloo.IndexBuffer) app.run()
# ----------------------------------------------------------------------------- # Copyright (c) 2009-2016 Nicolas P. Rougier. All rights reserved. # Distributed under the (new) BSD License. # ----------------------------------------------------------------------------- import numpy as np from glumpy import app from glumpy.graphics.collections import MarkerCollection window = app.Window(1024,1024, color=(1,1,1,1)) @window.event def on_draw(dt): window.clear() markers.draw() markers['orientation'] += np.random.uniform(0.0,0.1,len(markers)) del markers[0] if not len(markers): app.quit() n = 256 markers = MarkerCollection(orientation='local') markers.append(np.random.uniform(-1,1,(n,3)), bg_color = np.random.uniform(0,1,(n,4)), size = 64, fg_color=(0,0,0,1)) window.attach(markers["transform"]) window.attach(markers["viewport"]) app.run()
markers = MarkerCollection(marker="disc", vertex=vertex, viewport = viewport, transform=transform) C, La, Lo = [], [], [] with open(data.get("capitals.csv"), 'r') as file: reader = csv.reader(file, delimiter=',') next(reader, None) # skip the header for row in reader: capital = row[1] latitude = np.pi/2 + float(row[2])*np.pi/180 longitude = np.pi + float(row[3])*np.pi/180 C.append(capital) La.append(latitude) Lo.append(longitude) P = spheric_to_cartesian(Lo, La, radius*1.01) markers.append(P, bg_color = (1,1,1,1), fg_color=(.25,.25,.25,1), size = 10) vertex = """ varying vec4 v_color; varying float v_offset; varying vec2 v_texcoord; // Main // ------------------------------------ void main() { fetch_uniforms();
import numpy as np from glumpy import app from glumpy.graphics.collections import MarkerCollection window = app.Window(1024, 1024, color=(1, 1, 1, 1)) @window.event def on_draw(dt): window.clear() markers.draw() markers['orientation'] += np.random.uniform(0.0, 0.1, len(markers)) del markers[0] if not len(markers): app.quit() n = 256 markers = MarkerCollection(orientation='local') markers.append(np.random.uniform(-1, 1, (n, 3)), bg_color=np.random.uniform(0, 1, (n, 4)), size=64, fg_color=(0, 0, 0, 1)) window.attach(markers["transform"]) window.attach(markers["viewport"]) app.run()