Revision: 15180
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=15180
Author: theeth
Date: 2008-06-09 20:41:16 +0200 (Mon, 09 Jun 2008)
Log Message:
-----------
Merge from Apricot Revisions 14897, 14913, 14914, 14915, 14929, 15009, 15046
---------------------------------------------------
Snappy stuff
* Align rotation with snapping target: rotate the object, aligning it with the
target (object mode only - temporarily) (New icon in the header when snap is
turned on)
* Snap to different mesh elements (face, edge, vertice): snapping target slide
on faces and edge or use exact position of vertice. When using Align rotation
with edge snapping, the normal is interpolated as you slide along.
Snaps correctly to derived mesh (sculpt, modifiers, ...) and duplis. In object
and edit mode.
NOTE: The snapping code is now based on faces, so even if you're snapping to
vertices or edges, it will not work on meshes without faces. This might change
if needed.
Modified Paths:
--------------
trunk/blender/release/datafiles/blenderbuttons
trunk/blender/source/blender/include/BIF_resources.h
trunk/blender/source/blender/include/transform.h
trunk/blender/source/blender/makesdna/DNA_scene_types.h
trunk/blender/source/blender/src/blenderbuttons.c
trunk/blender/source/blender/src/header_view3d.c
trunk/blender/source/blender/src/transform.c
trunk/blender/source/blender/src/transform_generics.c
trunk/blender/source/blender/src/transform_snap.c
Modified: trunk/blender/release/datafiles/blenderbuttons
===================================================================
(Binary files differ)
Modified: trunk/blender/source/blender/include/BIF_resources.h
===================================================================
--- trunk/blender/source/blender/include/BIF_resources.h 2008-06-09
18:07:12 UTC (rev 15179)
+++ trunk/blender/source/blender/include/BIF_resources.h 2008-06-09
18:41:16 UTC (rev 15180)
@@ -293,7 +293,7 @@
ICON_ARMATURE_DEHLT,
ICON_SNAP_GEAR,
ICON_SNAP_GEO,
- ICON_BLANK41,
+ ICON_SNAP_NORMAL,
ICON_BLANK42,
ICON_SMOOTHCURVE,
Modified: trunk/blender/source/blender/include/transform.h
===================================================================
--- trunk/blender/source/blender/include/transform.h 2008-06-09 18:07:12 UTC
(rev 15179)
+++ trunk/blender/source/blender/include/transform.h 2008-06-09 18:41:16 UTC
(rev 15180)
@@ -75,6 +75,8 @@
int status;
float snapPoint[3];
float snapTarget[3];
+ float snapNormal[3];
+ float snapTangent[3];
float dist; // Distance from snapPoint to snapTarget
double last;
void (*applySnap)(struct TransInfo *, float *);
@@ -457,6 +459,8 @@
void resetSnapping(TransInfo *t);
int handleSnapping(TransInfo *t, int event);
void drawSnapping(TransInfo *t);
+int usingSnappingNormal(TransInfo *t);
+int validSnappingNormal(TransInfo *t);
/*********************** Generics ********************************/
@@ -487,6 +491,7 @@
void calculatePropRatio(TransInfo *t);
void getViewVector(float coord[3], float vec[3]);
+void getViewRay(short mval[2], float p[3], float d[3]);
TransInfo * BIF_GetTransInfo(void);
Modified: trunk/blender/source/blender/makesdna/DNA_scene_types.h
===================================================================
--- trunk/blender/source/blender/makesdna/DNA_scene_types.h 2008-06-09
18:07:12 UTC (rev 15179)
+++ trunk/blender/source/blender/makesdna/DNA_scene_types.h 2008-06-09
18:41:16 UTC (rev 15180)
@@ -543,8 +543,8 @@
ListBase markers;
ListBase transform_spaces;
- short jumpframe, pad1;
- short snap_flag, snap_target;
+ short jumpframe;
+ short snap_mode, snap_flag, snap_target;
/* none of the dependancy graph vars is mean to be saved */
struct DagForest *theDag;
@@ -707,11 +707,16 @@
/* scene->snap_flag */
#define SCE_SNAP 1
+#define SCE_SNAP_ROTATE 2
/* scene->snap_target */
#define SCE_SNAP_TARGET_CLOSEST 0
#define SCE_SNAP_TARGET_CENTER 1
#define SCE_SNAP_TARGET_MEDIAN 2
#define SCE_SNAP_TARGET_ACTIVE 3
+/* scene->snap_mode */
+#define SCE_SNAP_MODE_VERTEX 0
+#define SCE_SNAP_MODE_EDGE 1
+#define SCE_SNAP_MODE_FACE 2
/* sce->selectmode */
#define SCE_SELECT_VERTEX 1 /* for mesh */
Modified: trunk/blender/source/blender/src/blenderbuttons.c
===================================================================
--- trunk/blender/source/blender/src/blenderbuttons.c 2008-06-09 18:07:12 UTC
(rev 15179)
+++ trunk/blender/source/blender/src/blenderbuttons.c 2008-06-09 18:41:16 UTC
(rev 15180)
@@ -1,2165 +1,2181 @@
/* DataToC output of file <blenderbuttons> */
-int datatoc_blenderbuttons_size= 69070;
+int datatoc_blenderbuttons_size= 69599;
char datatoc_blenderbuttons[]= {
-137, 80, 78, 71, 13, 10, 26, 10, 0, 0, 0, 13, 73, 72,
- 68, 82, 0, 0, 2, 0, 0, 0, 1, 0, 8, 6, 0, 0, 0,197,144,206,103,
0, 0, 0, 6, 98, 75, 71, 68, 0,255, 0,255, 0,
-255,160,189,167,147, 0, 0, 0, 9,112, 72, 89,115, 0, 0, 11, 19, 0, 0,
11, 19, 1, 0,154,156, 24, 0, 0, 0, 7,116, 73,
- 77, 69, 7,216, 3, 21, 16, 3, 34,240,181, 88,200, 0, 0, 32, 0, 73, 68,
65, 84,120,218,236,125,121, 92, 84, 85,255,255,251,
-220,217,217,119, 84, 92, 64,197,125,197, 61,212,160, 7, 45,253,154,166,
2,102,182, 61,245,196,100,218,106,105, 86,207, 83,254,
-242,145,220, 90, 53, 29,159, 74,179,212, 18,212,180, 92, 18,116, 80, 67,114,
87, 44, 23, 20, 69, 4, 65,182, 97,102,152,253,206,
- 61,191, 63,102,134,134, 17,152, 5, 52,173,121,191,152,
23,115,239,220,249,204,185,247,156,243,121,127,150,179,144, 1, 3, 6,
- 80,120,225,133, 23, 94,120,225,133, 23,127, 43, 48,222, 71,224,133, 23,
94,120,225,133, 23,127, 31,156, 60,149, 13, 0, 32,222,
- 8,128, 23, 94,120,225,133, 23, 94,120, 35, 0, 94,120,225,133, 23,
94,120,225,133,215, 0,240,194, 11, 47,188,240,194, 11, 47,
-188, 6,128, 23, 94,120,225,133, 23, 94,120,241,151, 0,223,254,
96,230,204,153,196, 83, 65,171, 86,173,186,101, 44,129, 87,158,
- 87, 94, 51,160,171, 86,173,250,211,202,151,147,147, 67, 19, 18, 18,136,183,
62,238, 93,121,167, 79,159,246,184,241, 13, 24, 48,
- 0,222,250,240,202,251, 43,203,115,219, 0,248, 59, 67, 42,149, 54,120,128,
50,153,140,220,205,229, 92,189,122, 53, 8, 33,196,
- 91,115,158,213,241,244,233,211,145,153,153,
89,127,156,156,156,252,151,120,150,187,118,159,108, 86, 17,140, 31,
23,247,151,110,
- 51,146,224,109, 16,235,187, 34, 6, 70,212, 97, 55,
10,116,239,220,181,109,241,110,213, 49, 94,252, 77, 35, 0,119,162,177,238,
-218,181, 43, 97,251,246,237,114,219,241,164, 73,147, 18,199,143, 31,159,115,
55, 60, 12, 74, 45,186,243,110,229, 85,169, 84, 74,
-139,138,138, 0, 0,209,209,209, 0,112, 79, 40, 17, 71,227,202,106, 96,
53,233,153,187, 42,119,211,166, 77, 46, 27,106, 82,169,
-148,110,222,188,185,254,120,219,182,109, 24, 51,102, 76,253,113,102,102,
38,253,179,140,128, 65,131, 6, 81, 0, 56,113,226, 4,
-105,141,235,182,255, 32,107,198, 0,144,181,184,254,162, 98, 58, 0,
0,110,234,245, 96,117, 6,203,201, 90, 21, 0, 32, 37, 37,
- 5, 73, 73, 73, 77,150,111, 77,210, 26, 26, 91, 22,235,214,239,
39,254,158,232, 66,189, 72, 16,252,194, 89,232,183,111,131, 66,
- 49, 25, 10, 0,113,146,165,120, 71,114, 2, 29,196, 64,165,190, 16,239,232,
82,221,250,221,236,236,236,132,140,140, 12,185,253,
-185,148,148,148,196,164,164,164,156,187,169,111,181,150, 14,184,
23,238,247,118,224,189,183, 94, 34,126,130, 64, 98, 16, 11,169,
-161, 86,199,212,233, 84,220,135,159,174,248, 91,204,142,115,106,
0,236,218,181, 43,193,246,191,165, 68,109, 83, 36, 11, 54, 47,
-132, 95,135, 64,212, 93, 87,226,221,212,119,228,219,183,111,135,215, 26,118,
14,153, 76, 70,162,163,163,105, 81, 81, 17,138,138,
-138,176,103,207,158,187,214,147,176,213,181, 76, 38, 35, 50,153, 76, 32,149,
74, 77, 75,150, 44, 57, 6, 0,115,231,206, 29,210,
-220,119, 39, 79,158, 92,255,158,101,205, 48,154, 12, 48, 26,140, 48, 26, 45,
47,150,101, 49,119,238, 92,183,202, 98, 79,254,141,
- 97,204,152, 49,127,170, 17,224,138,241, 51,104,208, 32,167, 50,198,143,139,
35,158,144,188,203, 8, 10, 64,254,149,239, 32, 65,
-123,152,145,139,138, 47, 78,226, 76, 97,
53,166,124,176,214,165,175,199,150,197,186, 72,232, 22,200,123,203,157, 42,
98,201,248,
-119, 16, 50,233, 89,148,190, 18, 7,232, 20,245,231, 79,234,222,192, 73,
0,208, 1,163, 37, 41,216, 23,124, 2, 65, 0, 6, 41,
- 6,185,220,126, 29,145,145,145, 33,207,200,200,184,
43,244,149,173,140,173,161, 3,238,133,251,109,109,172, 95,185,138, 60, 30,
- 21,195,127, 41,249, 73, 94, 68,207, 40,134, 79, 34,136, 86,169,228,196,136,
52, 51,237,218,155,245, 55,174,154, 93,124,118, 55,
-220,208,225,237, 92,144, 55,199, 13,121,203,111,171,
1,176,125,251,118,249,230,127,191,133,212,247, 23,201,199,143, 31, 79, 90,
-210,192,108,196, 15, 0, 85,218,106, 32, 20,152,191,239, 61,168,174, 40,
32,125,238,238, 34,178,166, 58,196,159, 93, 70,123, 35,
-224,161,135, 30, 66, 81, 81, 17,162,163,163,239,186,103, 39,151, 91,
28,137,196,196, 68, 42,147,201, 24,153, 76, 22, 37,149, 74,
- 75,151, 44, 89,114,194, 85, 57, 44,203,194,104, 52,213, 19,191, 61,249, 31,
63,126, 28,131, 7, 15,118,171, 92,169,169,127,120,
-128,211,167, 79, 71, 86, 86, 86, 3, 3,160, 53,218,138, 39,245,112,226,196,
9,146,147,147, 67,199,142, 29,123,203,103,123,247,
-238,197,166, 77,155,234,143,155, 27,183,112,139,241,222,138,233,128,168,152,
14, 40, 85, 40,177,245,249,169, 8, 37,241, 40,252,
-223,235,232, 60,185, 51,178,220, 32,127, 27,210,210,210, 40, 0,172,
89,179,166,197,109, 54,106,115, 46,180,215,234, 80, 42,141,
-105,246,186,179,226,108, 44,232,123, 19,233,103,223,110, 81,125,182,
6,233,182,166,140,214,136, 4,220,238,251,109, 45,228,230,
-230,250, 0,184, 15,128,159,221,233, 90, 0,249,241,241,241,
53,174,202,209,113, 58,198, 88,101, 16,140,155, 56, 89,172,128, 73,
- 44, 16,240,249, 42,189,152, 17, 10,117, 28, 47,192,151, 53, 74, 76,
38,126,249, 13,131,152, 39,210,235,205, 6,179, 84, 42, 37,
-141,141, 25,177, 71,109,109,237,127,109,239, 11, 10, 10,170,124,125,125,
25,141, 70,195,217, 95, 51,116,232,208,143, 92, 45, 35,
-165,212, 41,177, 19, 66,230,180,244,153,242,157,121,255,221,186,117, 67,172,
95, 0, 90, 18, 5,176, 39,255, 42,109, 53,210,255,
-241, 94,253,103,255,220,254, 2, 16, 1, 76, 94,146,234, 86, 35,107,138,160,
91,139,164,175, 95,191, 14, 0,232,208,161, 67,131,
-247,182,223,117,214, 32,110,103,136,207,222, 8, 48,153, 88,172,
94,189,250,182,121, 1,238,202,116, 32,127,251,239,223,144,201,
-100,193, 82,169, 84,225, 50,249,155, 76, 48, 26, 13, 48, 24,141, 48, 57,144,
63,229,220,139,208,165,166,166,226,248,241,227,245,
-199,203,151, 47, 71,114,114,114,253,113,102,102,102,139,141, 29,
59,131,167,197,237,207,158,248,167, 79,159,142,129, 3, 7,122,
- 36,167,181,210, 1, 37, 87,138,161,217,246, 31,248, 61,243, 9,162, 98, 58,
32, 50, 84,130, 43,219,174, 88,200, 63, 40,192,146,
- 2, 16,240, 92,146,213, 26,196, 15, 0,221,206, 93,198,245,119, 23,
66,151,177,174,249, 8,129, 68, 2,189, 94,143,194,194, 66,
- 84,232, 47,162, 27,162,154,188, 54, 59, 59, 59,161,185,182,
47,147,201,136,173,159,100,103,103, 39,184, 19, 30,183,143,138,217,
-250,171,253, 57,119, 29,129,166,136,219, 29, 93,208,216,253,102,101,101, 81,
66, 8,146,146,146, 72, 75,238,215,134,103,159,125,
-150,126,249,229,151, 45,170,243,220,220,220, 64, 0,147,247,237,219,247,
31,142,227, 12,118, 36,200,231,241,120,190, 0,254, 21,
- 31, 31,191,203,153,156,130, 43, 5,124,137, 80, 44, 22, 8, 68,190, 12,159,
4, 80,158,200,135,227,241,248, 28, 97,192, 17,190,
-153,242,120, 6, 30, 71,244, 26,158, 89,235, 43, 20, 16, 94,151,
14,122,241,196, 8, 14,197,206,203,168, 80, 40, 84, 90,173,150,
- 5, 0,141, 70,195,189,245,214, 91,245,132,191,104,209,162, 87,
91,218,222,199,140, 25,243,188,237,125, 86, 86,214,234,214,232,
- 67,140, 51,239,127,225,180,100,232, 43, 43,241,122,239,
30,176,207,221,187,236,133, 88, 83, 8,246,228, 63,105,210,164, 68,153,
@@ Diff output truncated at 10240 characters. @@
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs