Commit 7ac22256 authored by TheNumbat's avatar TheNumbat
Browse files

add video controls

parent 043cdc0b
......@@ -52,4 +52,4 @@ Finally, you may remove the object from the scene by pressing `Delete` or hittin
## Demo
<video src="{{ site.baseurl }}/guide/layout.mp4" preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
<video src="{{ site.baseurl }}/guide/layout.mp4" controls preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
......@@ -58,21 +58,21 @@ There are three possible types of bevels:
vertices are connected to the edges originally incident on _v_. The new face is
inset (i.e., shunken or expanded) by a user-controllable amount.
<video src="{{ site.baseurl }}/guide/vertex_bevel.mp4" preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
<video src="{{ site.baseurl }}/guide/vertex_bevel.mp4" controls preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
- Edge Bevel: The selected edge _e_ is replaced by a face _f_ whose
vertices are connected to the edges originally incident on the endpoints of _e_.
The new face is inset and offset by some user-controllable amount, as with the
vertex bevel.
<video src="{{ site.baseurl }}/guide/edge_bevel.mp4" preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
<video src="{{ site.baseurl }}/guide/edge_bevel.mp4" controls preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
- Face Bevel: The selected face _f_ is replaced by a new face _g_, as well
as a ring of faces around _g_, such that the vertices of _g_ connect to the
original vertices of _f_. The new face is inset and offset by some
user-controllable amount.
<video src="{{ site.baseurl }}/guide/face_bevel.mp4" preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
<video src="{{ site.baseurl }}/guide/face_bevel.mp4" controls preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
### Local Connectivity Editing
......@@ -85,13 +85,13 @@ appropriate key, as listed below. Local mesh editing operations include:
and faces will be replaced with a single face _f_, that is the union of all
faces originally incident on _v_.
<video src="{{ site.baseurl }}/guide/erase_vertex.mp4" preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
<video src="{{ site.baseurl }}/guide/erase_vertex.mp4" controls preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
- Erase Edge: The selected edge _e_ will be replaced with the union of the
faces containing it, producing a new face _e_ (if _e_ is a boundary edge,
nothing happens).
<video src="{{ site.baseurl }}/guide/erase_edge.mp4" preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
<video src="{{ site.baseurl }}/guide/erase_edge.mp4" controls preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
- Edge Collapse: The selected edge _e_ is replaced by a single vertex _v_.
This vertex is connected by edges to all vertices previously connected to either
......@@ -99,25 +99,25 @@ endpoint of _e_. Moreover, if either of the polygons containing _e_ was a
triangle, it will be replaced by an edge (rather than a degenerate polygon with
only two edges).
<video src="{{ site.baseurl }}/guide/collapse_edge.mp4" preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
<video src="{{ site.baseurl }}/guide/collapse_edge.mp4" controls preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
- Face Collapse: The selected face _f_ is replaced by a single vertex _v_.
All edges previously connected to vertices of _f_ are now connected directly to
_v_.
<video src="{{ site.baseurl }}/guide/collapse_face.mp4" preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
<video src="{{ site.baseurl }}/guide/collapse_face.mp4" controls preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
- Edge Flip: The selected edge _e_ is "rotated" around the face, in the
sense that each endpoint moves to the next vertex (in counter-clockwise order)
along the boundary of the two polygons containing _e_.
<video src="{{ site.baseurl }}/guide/edge_flip.mp4" preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
<video src="{{ site.baseurl }}/guide/edge_flip.mp4" controls preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
- Edge Split: [Note: this method is for triangle meshes only!] The
selected edge _e_ is split at its midpoint, and the new vertex _v_ is connected
to the two opposite vertices (or one in the case of a surface with boundary).
<video src="{{ site.baseurl }}/guide/edge_split.mp4" preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
<video src="{{ site.baseurl }}/guide/edge_split.mp4" controls preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
### Global Mesh Processing
......@@ -128,14 +128,14 @@ the path tracer), this command will be applied only to the selected mesh.
- Triangulate: Each polygon is split into triangles.
<video src="{{ site.baseurl }}/guide/triangulate.mp4" preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
<video src="{{ site.baseurl }}/guide/triangulate.mp4" controls preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
- Linear Subdivision: Each polygon in the selected mesh is split into
quadrilaterals by inserting a vertex at the midpoint and connecting it to the
midpoint of all edges. New vertices are placed at the average of old vertices so
that, e.g., flat faces stay flat, and old vertices remain where they were.
<video src="{{ site.baseurl }}/guide/linear_subd.mp4" preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
<video src="{{ site.baseurl }}/guide/linear_subd.mp4" controls preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
- Catmull-Clark Subdivision: _[Note: this method is for meshes without boundary only!]_
Just as with linear subdivision, each
......@@ -144,27 +144,27 @@ updated according to the [Catmull-Clark subdivision
rules](https://en.wikipedia.org/wiki/Catmull_Clark_subdivision_surface),
ultimately generating a nice rounded surface.
<video src="{{ site.baseurl }}/guide/catmull_subd.mp4" preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
<video src="{{ site.baseurl }}/guide/catmull_subd.mp4" controls preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
- Loop Subdivision: _[Note: this method is for triangle meshes without boundary only!]_
Each triangle is split into four by connecting the edge midpoints. Vertex
positions are updated according to the [Loop subdivision
rules](https://en.wikipedia.org/wiki/Loop_subdivision_surface).
<video src="{{ site.baseurl }}/guide/loop_subd.mp4" preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
<video src="{{ site.baseurl }}/guide/loop_subd.mp4" controls preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
- Isotropic Remeshing: _[Note: this method is for triangle meshes only!]_
The mesh is resampled so that triangles all have roughly the same size and
shape, and vertex valence is close to regular (i.e., about six edges incident on
every vertex).
<video src="{{ site.baseurl }}/guide/remesh.mp4" preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
<video src="{{ site.baseurl }}/guide/remesh.mp4" controls preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
- Simplification _[Note: this method is for triangle meshes only!]_ The
number of triangles in the mesh is reduced by a factor of about four, aiming to
preserve the appearance of the original mesh as closely as possible.
<video src="{{ site.baseurl }}/guide/simplify.mp4" preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
<video src="{{ site.baseurl }}/guide/simplify.mp4" controls preload muted loop style="max-width: 100%; margin: 0 auto;"></video>
| Key | Command |
| :-------------------: | :--------------------------------------------: |
......
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