Mercurial > MadButterfly
comparison tools/mb_c_source.m4 @ 85:9b4a02bcaeb1
matrix() function in transform attribute of group and shapes
author | Thinker K.F. Li <thinker@branda.to> |
---|---|
date | Fri, 22 Aug 2008 15:47:03 +0800 |
parents | 42698de1f653 |
children | 1a1dda98730c |
comparison
equal
deleted
inserted
replaced
84:42698de1f653 | 85:9b4a02bcaeb1 |
---|---|
45 define([STROKE_WIDTH]) | 45 define([STROKE_WIDTH]) |
46 define([GROUP_HIDE],) | 46 define([GROUP_HIDE],) |
47 define([RECT_HIDE],) | 47 define([RECT_HIDE],) |
48 define([PATH_HIDE],) | 48 define([PATH_HIDE],) |
49 define([COORD_TRANSLATE],) | 49 define([COORD_TRANSLATE],) |
50 define([COORD_MATRIX],) | |
51 define([SHAPE_MATRIX],) | |
50 divert[]]) | 52 divert[]]) |
51 | 53 |
52 define([S_ADD_LINEAR_PAINT],[ | 54 define([S_ADD_LINEAR_PAINT],[ |
53 obj->$1 = paint_linear_new(rdman, $2, $3, $4, $5); | 55 obj->$1 = paint_linear_new(rdman, $2, $3, $4, $5); |
54 ifelse(COUNT($6),0,,[dnl | 56 ifelse(COUNT($6),0,,[dnl |
138 [ memset(obj->$1->matrix, 0, sizeof(obj->$1->matrix)); | 140 [ memset(obj->$1->matrix, 0, sizeof(obj->$1->matrix)); |
139 obj->$1->matrix[0] = 1; | 141 obj->$1->matrix[0] = 1; |
140 obj->$1->matrix[2] = $2; | 142 obj->$1->matrix[2] = $2; |
141 obj->$1->matrix[4] = 1; | 143 obj->$1->matrix[4] = 1; |
142 obj->$1->matrix[5] = $3; | 144 obj->$1->matrix[5] = $3; |
145 rdman_coord_changed(rdman, obj->$1); | |
146 ]]) | |
147 | |
148 define([S_COORD_MATRIX],[dnl | |
149 [ obj->$1->matrix[0] = $2; | |
150 obj->$1->matrix[3] = $3; | |
151 obj->$1->matrix[1] = $4; | |
152 obj->$1->matrix[4] = $5; | |
153 obj->$1->matrix[2] = $6; | |
154 obj->$1->matrix[5] = $7; | |
155 rdman_coord_changed(rdman, obj->$1); | |
156 ]]) | |
157 | |
158 define([S_SHAPE_MATRIX],[dnl | |
159 [ obj->$1->matrix[0] = $2; | |
160 obj->$1->matrix[3] = $3; | |
161 obj->$1->matrix[1] = $4; | |
162 obj->$1->matrix[4] = $5; | |
163 obj->$1->matrix[2] = $6; | |
164 obj->$1->matrix[5] = $7; | |
143 rdman_coord_changed(rdman, obj->$1); | 165 rdman_coord_changed(rdman, obj->$1); |
144 ]]) | 166 ]]) |
145 | 167 |
146 define([SETUP_VARS],[divert([-1]) | 168 define([SETUP_VARS],[divert([-1]) |
147 define([SIMPORT],[IMPORT(]QUOTE($[]1)[,[S_])]) | 169 define([SIMPORT],[IMPORT(]QUOTE($[]1)[,[S_])]) |
161 SIMPORT([STROKE_WIDTH]) | 183 SIMPORT([STROKE_WIDTH]) |
162 SIMPORT([GROUP_HIDE]) | 184 SIMPORT([GROUP_HIDE]) |
163 SIMPORT([RECT_HIDE]) | 185 SIMPORT([RECT_HIDE]) |
164 SIMPORT([PATH_HIDE]) | 186 SIMPORT([PATH_HIDE]) |
165 SIMPORT([COORD_TRANSLATE]) | 187 SIMPORT([COORD_TRANSLATE]) |
188 SIMPORT([COORD_MATRIX]) | |
189 SIMPORT([SHAPE_MATRIX]) | |
166 divert[]]) | 190 divert[]]) |
167 | 191 |
168 define([F_ADD_LINEAR_PAINT],[[ | 192 define([F_ADD_LINEAR_PAINT],[[ |
169 stops = paint_linear_stops(obj->$1, 0, NULL); | 193 stops = paint_linear_stops(obj->$1, 0, NULL); |
170 free(stops); | 194 free(stops); |
215 define([STROKE_WIDTH]) | 239 define([STROKE_WIDTH]) |
216 define([GROUP_HIDE],) | 240 define([GROUP_HIDE],) |
217 define([RECT_HIDE],) | 241 define([RECT_HIDE],) |
218 define([PATH_HIDE],) | 242 define([PATH_HIDE],) |
219 define([COORD_TRANSLATE],) | 243 define([COORD_TRANSLATE],) |
244 define([COORD_MATRIX],) | |
245 define([SHAPE_MATRIX],) | |
220 divert[]]) | 246 divert[]]) |
221 | 247 |
222 define([MADBUTTERFLY],[dnl | 248 define([MADBUTTERFLY],[dnl |
223 [#include <stdio.h> | 249 [#include <stdio.h> |
224 #include <stdlib.h> | 250 #include <stdlib.h> |