Skip to content

Commit 5864018

Browse files
author
You Wu
committed
Merge branch 'master' into conical_woven
2 parents 4276129 + cac2c98 commit 5864018

File tree

4 files changed

+43
-7
lines changed

4 files changed

+43
-7
lines changed

README.md

Lines changed: 39 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,49 @@
11
# Unfolding
22
Geometry Unfolding
3-
##Qt Version
3+
## Qt Version
44
Qt 5.6.0
55

6-
##Supported Compiler
6+
## Supported Compiler
77
MinGW-x86-v4.9.2, MSVC++ 14.0(Visual Studio 2015)
88

9-
##IDE & Project Files
10-
###Qt Creator 3.6.1
9+
## IDE & Project Files
10+
### Qt Creator 3.6.1
1111
Open Unfolding.pro in root directory to edit and compile with Qt Creator IDE, all compiler supported.
12-
###Visual Studio 2015
12+
### Visual Studio 2015
1313
Open Unfolding.sln under directory _visual_studio_ to compile and edit with Visual Studio 2015, only MSVC++ 14.0 supported with with file.
1414

15-
##OpenGL Version
15+
## OpenGL Version
1616
Minimum requirement: OpenGL 3.3 Core Profile
17+
18+
## Branches
19+
- master: contains Weaving operations. Uses vector storage as data structure @ShenyaoKe.
20+
- conical_mesh:
21+
- Oct Weaving, Weaving, Cross Weaving, Classical Weaving, Conical Weaving, BiTri Weaving operations @ShenyaoKe
22+
- Revise on Conical Weaving, added refID for printing @urianawu
23+
- Triangle Weaving operation @urianawu
24+
- NewOrigami: attempt on single-panel origami unfolding scheme, only face bands are created @urianawu
25+
- Origami: attempt on single-panel origami unfolding scheme @liz425
26+
- master3.0:
27+
- contains GRS, GES, Half-Edge, Quad-Edge, Winged-Edge operations @urianawu,
28+
- obj reader, hds data structure and unfolder originally implemented by @phg1024,
29+
- obj reader and unfolder refactored and revised by @ShenyaoKe,
30+
- printing and connectors generation by @ShenyaoKe
31+
- dforms: an obsolete branch only @ShenyaoKe knows what it is
32+
33+
## Unfolding workflow written by @ShenyaoKe
34+
35+
1. Download the software in releases tab.
36+
Latest Unfolding(contains Half-Edge, Quad-Edge, Winged-Edge) release:
37+
Latest Woven release:
38+
39+
2. Import your model from File->Import, or Click Import Button on Toolbar, or Press Ctrl+N on Keyboard;
40+
3. Generate Developable Surface by Clicking the corresponding operation buttons;
41+
4. For Unfolding: Adjust bridger size and flap size (from 0 to 0.98), adjust bridger sample in Set Connector option; For Woven: Adjust patch scale, strip width, layer offset(thickness of material).
42+
5. Unfold current mesh by Clicking Unfold Mesh Button, or Press ALT+U on Keyboard;
43+
6. Export as SVG file from File->Export, or Clicking Export Button on Toolbar, or Press Ctrl+E;
44+
7. Adjust export settings, select path to save exported file, set scale to proper value to make enough space for holes, change pinhole size to exact size of your fasteners, change pinhole count and etch segments depending on your flap size and material rigidity.
45+
46+
Note:
47+
- You might come back to re-export SVG file if the result is not satisfying, especially in changing the scaling.
48+
- Attention, our software will generate a file with "SVG" in filename. It's used for other purpose and is not the exported SVG file.
49+

shaders/face_gs.glsl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,8 @@ void EmitSide(vec4 p0, vec4 p1, vec4 n0, vec4 n1)
4444

4545
void EmitBottom(vec4 p0, vec4 p1, vec4 p2)
4646
{
47+
// If prefer backside as normal color, remove the comment here.
48+
//normal = -normal;
4749
pos = p0.xyz - vNorm[0].xyz * thickness;
4850
gl_Position = proj_matrix * vec4(pos, 1.0f);
4951
EmitVertex();

src/MeshFactory/MeshNeoWeaver.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -640,6 +640,7 @@ HDS_Mesh* MeshNeoWeaver::createClassicalWeaving(const mesh_t* ref_mesh,
640640
size_t refEdgeCount = refHeCount >> 1;
641641
size_t refFaceCount = ref_faces.size();
642642

643+
643644
mesh_t::resetIndex();
644645
vector<vert_t> verts(refHeCount << 2);
645646
vector<he_t> hes(refHeCount << 2);

src/UI/MeshViewer.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -660,7 +660,7 @@ void MeshViewer::mouseMoveEvent(QMouseEvent* e)
660660
{
661661
if (dx != e->x() && dy != e->y())
662662
{
663-
view_cam.zoom(dx * 0.01, dy * 0.01, 0.0);
663+
view_cam.zoom(-dx * 0.01, dy * 0.01, 0.0);
664664
update();
665665
}
666666
}

0 commit comments

Comments
 (0)