利用者:Apinzonf/Gsoc2013/design

提供: wiki
移動先: 案内検索

Design

Project: Sketch Mesh Editing.

Language: C, C++.

This new tool go into the specials menu, because the tool do not working in real time.

Mode: Edit Mode (Mesh)

Hotkey: W

Menu: Specials → Laplacian Deform


Introduction

This project allows the editing of a mesh by posing with the use of sketching sessions

The project uses differential coordinates corresponding to the difference between a vector and the weighted average of its neighbors to represent the local detail of the mesh.

Differential Coordinate

For each vertex we store the information of its differential coordinate, when a change is made on the mesh and you want to reconstruct the original shape. The vertices are modified for new differential coordinates are as similar as possible to the original.

For system operation requires:

  1. Creating a modeling session, because the process takes several steps.
  2. Calculating the differential coordinates of the original mesh unchanged.
  3. Selecting and marking of a set of vertices that remain invariant during the modeling session (static anchors).
  4. The selection, marking and editing a set of vertices with the desired changes (handlers anchors).
  5. Create the system of equations with constraints (Static and handlers anchors).
  6. Factorize the main matrix.
  7. Solve the system of equations.

The selection and editing to modify the mesh vertices can be combined with sketching sessions in which the simple drawing curves on the screen changes the mesh vertices.

Blender3D FreeTip.png
Question about user interaction
How should be the interaction with the user to create the modeling session, mark the vertices static and handlers?


Description of my development computer

  • OS: Windows 7
  • Builder System CMake 2.8.8, MS VS2008
  • SVN tools: TortoiseSVN 1.7