Lines Matching defs:row

51 #include "sp-mesh-row.h"
80 row = r*3; // Convert from patch array to node array
84 if( row != 0 ) i = 1;
86 if( nodes->size() < row+i+1 ) {
87 std::vector< SPMeshNode* > row;
88 nodes->push_back( row );
94 if( (*nodes)[row+i].size() < col+j+1 ){
100 (*nodes)[row+i].push_back( node );
117 p = (*nodes)[ row ][ col+pt ]->p;
120 p = (*nodes)[ row+pt ][ col+3 ]->p;
123 p = (*nodes)[ row+3 ][ col+3-pt ]->p;
126 p = (*nodes)[ row+3-pt ][ col ]->p;
165 // << " row: " << row
169 (*nodes)[ row ][ col+pt ]->p = p;
170 (*nodes)[ row ][ col+pt ]->set = set;
171 (*nodes)[ row ][ col+pt ]->node_type = node_type;
174 (*nodes)[ row+pt ][ col+3 ]->p = p;
175 (*nodes)[ row+pt ][ col+3 ]->set = set;
176 (*nodes)[ row+pt ][ col+3 ]->node_type = node_type;
179 (*nodes)[ row+3 ][ col+3-pt ]->p = p;
180 (*nodes)[ row+3 ][ col+3-pt ]->set = set;
181 (*nodes)[ row+3 ][ col+3-pt ]->node_type = node_type;
184 (*nodes)[ row+3-pt ][ col ]->p = p;
185 (*nodes)[ row+3-pt ][ col ]->set = set;
186 (*nodes)[ row+3-pt ][ col ]->node_type = node_type;
203 type = (*nodes)[ row ][ col+1 ]->path_type;
206 type = (*nodes)[ row+1 ][ col+3 ]->path_type;
209 type = (*nodes)[ row+3 ][ col+2 ]->path_type;
212 type = (*nodes)[ row+2 ][ col ]->path_type;
228 (*nodes)[ row ][ col+1 ]->path_type = t;
229 (*nodes)[ row ][ col+2 ]->path_type = t;
232 (*nodes)[ row+1 ][ col+3 ]->path_type = t;
233 (*nodes)[ row+2 ][ col+3 ]->path_type = t;
236 (*nodes)[ row+3 ][ col+1 ]->path_type = t;
237 (*nodes)[ row+3 ][ col+2 ]->path_type = t;
240 (*nodes)[ row+1 ][ col ]->path_type = t;
241 (*nodes)[ row+2 ][ col ]->path_type = t;
255 (*nodes)[ row + 1 ][ col + 1 ]->p = p;
256 (*nodes)[ row + 1 ][ col + 1 ]->set = true;
257 (*nodes)[ row + 1 ][ col + 1 ]->node_type = MG_NODE_TYPE_TENSOR;
260 (*nodes)[ row + 1 ][ col + 2 ]->p = p;
261 (*nodes)[ row + 1 ][ col + 2 ]->set = true;
262 (*nodes)[ row + 1 ][ col + 2 ]->node_type = MG_NODE_TYPE_TENSOR;
265 (*nodes)[ row + 2 ][ col + 2 ]->p = p;
266 (*nodes)[ row + 2 ][ col + 2 ]->set = true;
267 (*nodes)[ row + 2 ][ col + 2 ]->node_type = MG_NODE_TYPE_TENSOR;
270 (*nodes)[ row + 2 ][ col + 1 ]->p = p;
271 (*nodes)[ row + 2 ][ col + 1 ]->set = true;
272 (*nodes)[ row + 2 ][ col + 1 ]->node_type = MG_NODE_TYPE_TENSOR;
299 set = (*nodes)[ row + 1 ][ col + 1 ]->set;
302 set = (*nodes)[ row + 1 ][ col + 2 ]->set;
305 set = (*nodes)[ row + 2 ][ col + 2 ]->set;
308 set = (*nodes)[ row + 2 ][ col + 1 ]->set;
346 if( (*nodes)[ row + i ][ col + j ]->set ) {
347 p = (*nodes)[ row + i ][ col + j ]->p;
423 // std::cout << "SPMeshPatchI::updateNodes: " << row << "," << col << std::endl;
427 if( (*nodes)[ row + i ][ col + j ]->set == false ) {
429 if( (*nodes)[ row + i ][ col + j ]->node_type == MG_NODE_TYPE_HANDLE ) {
435 Geom::Point p0 = ( (*nodes)[ row + i ][ col ]->p );
436 Geom::Point p3 = ( (*nodes)[ row + i ][ col + 3 ]->p );
439 (*nodes)[ row + i ][ col + j ]->p = p0 + dp;
443 Geom::Point p0 = ( (*nodes)[ row ][ col + j ]->p );
444 Geom::Point p3 = ( (*nodes)[ row + 3 ][ col + j ]->p );
447 (*nodes)[ row + i ][ col + j ]->p = p0 + dp;
457 if( (*nodes)[ row + i ][ col + j ]->set == false ) {
459 (*nodes)[ row + i ][ col + j ]->node_type = MG_NODE_TYPE_TENSOR;
465 (*nodes)[ row + i ][ col + j ]->p = coonsTensorPoint( t );
483 color = (*nodes)[ row ][ col ]->color;
486 color = (*nodes)[ row ][ col+3 ]->color;
489 color = (*nodes)[ row+3 ][ col+3 ]->color;
492 color = (*nodes)[ row+3 ][ col ]->color;
510 (*nodes)[ row ][ col ]->color = color;
513 (*nodes)[ row ][ col+3 ]->color = color;
516 (*nodes)[ row+3 ][ col+3 ]->color = color;
519 (*nodes)[ row+3 ][ col ]->color = color;
534 opacity = (*nodes)[ row ][ col ]->opacity;
537 opacity = (*nodes)[ row ][ col+3 ]->opacity;
540 opacity = (*nodes)[ row+3 ][ col+3 ]->opacity;
543 opacity = (*nodes)[ row+3 ][ col ]->opacity;
560 (*nodes)[ row ][ col ]->opacity = opacity;
563 (*nodes)[ row ][ col+3 ]->opacity = opacity;
566 (*nodes)[ row+3 ][ col+3 ]->opacity = opacity;
569 (*nodes)[ row+3 ][ col ]->opacity = opacity;
646 // std::cout << "SPMeshNodeArray::read: row size: " << nodes.size() << std::endl;
652 // Only 'top' side defined for first row.
665 // Handle top of first row.
851 for ( SPObject *row = mg->firstChild(); row; row = row->getNext() ) {
852 descendant_reprs = g_slist_prepend (descendant_reprs, row->getRepr());
853 descendant_objects = g_slist_prepend (descendant_objects, row );
854 for ( SPObject *patch = row->firstChild(); patch; patch = patch->getNext() ) {
891 // Write row
892 Inkscape::XML::Node *row = xml_doc->createElement("svg:meshrow");
893 mesh->appendChild( row ); // No attributes
918 row->appendChild( patch );
923 // Only first row has top stop
1325 std::vector< SPMeshNode* > row;
1367 row.push_back( node );
1369 nodes.push_back( row );
1407 std::cout << "New node row:" << std::endl;
1695 // Split each row into eight rows.
1716 // Temp loop over 0..8 to get last column/row edges
1792 // are numbered in order by row and column (and
1804 // Number of corners in a row of patches.
1997 // Number of corners in a row of patches.
2077 // Number of corners in a row of patches.
2089 // Node row & col
2278 guint row = corner / cols;
2280 guint nrow = row * 3;
2285 if( row == 0 ) {
2295 if( row == rows-1 ) {
2358 // Number of corners in a row of patches.
2361 // Find corner row/column
2365 // Find node row/column
2624 Split a row into n equal parts.
2626 void SPMeshNodeArray::split_row( unsigned int row, unsigned int n ) {
2629 if( n > 1 ) split_row( row, (nn-1)/nn );
2630 if( n > 2 ) split_row( row, n-1 );
2644 Split a row into two rows at coord (fraction of row height).
2646 void SPMeshNodeArray::split_row( unsigned int row, double coord ) {
2648 // std::cout << "Splitting row: " << row << " at " << coord << std::endl;
2651 assert( row < patch_rows() );
2659 SPMeshPatchI patch( &nodes, row, j );
2670 nodes.insert( nodes.begin()+3*(row+1), new_row );
2673 guint i = 3 * row; // Convert from patch row to node row
2676 // std::cout << "Splitting row: column: " << j << std::endl;
2681 if( k == 3 ) n = 6; // Bottom patch row has been shifted by new rows
2760 // std::cout << "Splitting row: result:" << std::endl;
2789 // std::cout << "Splitting column: row: " << i << std::endl;