Commit a0f2da98 authored by Janis Born's avatar Janis Born

use import threevis as tv in examples

parent db5ed605
......@@ -14,53 +14,52 @@ A Python library for visualizing meshes, point clouds, and other geometry in Jup
### Quick Mesh Inspection
import threevis
import threevis as tv
import openmesh as om
m = om.read_trimesh('examples/models/bunny.obj')
m = om.read_trimesh('models/bunny.obj')
### Custom Rendering
import threevis
import threevis as tv
import openmesh as om
import numpy as np
# Load Mesh
m = om.read_trimesh('mouse.obj')
m = om.read_trimesh('models/mouse.obj')
# Create Context
ctx = threevis.Context(width=640, height=480)
ctx = tv.Context(width=640, height=480)
# Get vertices and faces from the mesh
vertices = m.points()
faces = m.face_vertex_indices()
# We don't have normals, calculate them
normals = threevis.calculate_face_normals(m.points(), m.face_vertex_indices())
normals = tv.calculate_face_normals(m.points(), m.face_vertex_indices())
# Choose a random color for each face
colors = threevis.FaceAttribute(np.random.rand(len(faces), 3))
colors = tv.FaceAttribute(np.random.rand(len(faces), 3))
# Draw the mesh with flat shading
ctx.draw_faces(vertices, faces,
normals = normals,
colors = colors,
shading = 'flat')
# Draw edges on top with random colors
ctx.draw_edges(vertices, m.ev_indices(),
colors = threevis.FaceAttribute(np.random.rand(len(m.ev_indices()), 3)),
colors=tv.FaceAttribute(np.random.rand(len(m.ev_indices()), 3)),
# Calculate data to display normals as edges
normal_vis_verts, normal_vis_edges = threevis.calculate_normal_edges(vertices, faces, normals, length=0.05)
normal_vis_verts, normal_vis_edges = tv.calculate_normal_edges(vertices, faces, normals, length=0.05)
# Draw the normals in
ctx.draw_edges(normal_vis_verts, normal_vis_edges, colors = colors)
ctx.draw_edges(normal_vis_verts, normal_vis_edges, colors=colors)
# Draw a point for each vertex
ctx.draw_vertices(vertices, point_size=4, colors='red')
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment