| 178 | } |
| 179 | |
| 180 | void msShapeDeleteLine( shapeObj *shape, int line ) |
| 181 | { |
| 182 | if( line < 0 || line >= shape->numlines ) { |
| 183 | assert( 0 ); |
| 184 | return; |
| 185 | } |
| 186 | |
| 187 | free( shape->line[line].point ); |
| 188 | if( line < shape->numlines - 1 ) { |
| 189 | memmove( shape->line + line, |
| 190 | shape->line + line + 1, |
| 191 | sizeof(lineObj) * (shape->numlines - line - 1) ); |
| 192 | } |
| 193 | shape->numlines--; |
| 194 | } |
| 195 | |
| 196 | void msComputeBounds(shapeObj *shape) |
| 197 | { |