diff options
| author | Maximilian Albert <maximilian.albert@gmail.com> | 2007-07-03 18:09:45 +0000 |
|---|---|---|
| committer | cilix42 <cilix42@users.sourceforge.net> | 2007-07-03 18:09:45 +0000 |
| commit | 91911eab841ed010b5c029a16ea4d1ee1d0d601c (patch) | |
| tree | d1d057eb525d84a1ff6a2c4c82605841142971c8 /src/box3d.cpp | |
| parent | r15736@tres: ted | 2007-07-02 21:11:39 -0700 (diff) | |
| download | inkscape-91911eab841ed010b5c029a16ea4d1ee1d0d601c.tar.gz inkscape-91911eab841ed010b5c029a16ea4d1ee1d0d601c.zip | |
Use arrays to manage corners and faces of 3D boxes
(bzr r3166)
Diffstat (limited to 'src/box3d.cpp')
| -rw-r--r-- | src/box3d.cpp | 45 |
1 files changed, 20 insertions, 25 deletions
diff --git a/src/box3d.cpp b/src/box3d.cpp index 127ffa848..af31ff1a1 100644 --- a/src/box3d.cpp +++ b/src/box3d.cpp @@ -75,12 +75,9 @@ sp_3dbox_class_init(SP3DBoxClass *klass) static void sp_3dbox_init(SP3DBox *box3d) { - box3d->face1 = Box3DFace (box3d); - box3d->face2 = Box3DFace (box3d); - box3d->face3 = Box3DFace (box3d); - box3d->face4 = Box3DFace (box3d); - box3d->face5 = Box3DFace (box3d); - box3d->face6 = Box3DFace (box3d); + for (int i = 0; i < 6; ++i) { + box3d->faces[i] = Box3DFace (box3d); + } } static void @@ -143,15 +140,13 @@ static Inkscape::XML::Node *sp_3dbox_write(SPObject *object, Inkscape::XML::Node } - box3d->face1.set_path_repr(); + box3d->faces[0].set_path_repr(); if (bc->extruded) { NR::Point corner1, corner2, corner3, corner4; sp_3dbox_compute_specific_corners (bc, corner1, corner2, corner3, corner4); - box3d->face2.set_path_repr(); - box3d->face3.set_path_repr(); - box3d->face4.set_path_repr(); - box3d->face5.set_path_repr(); - box3d->face6.set_path_repr(); + for (int i = 0; i < 6; ++i) { + box3d->faces[i].set_path_repr(); + } } if (((SPObjectClass *) (parent_class))->write) { ((SPObjectClass *) (parent_class))->write(object, repr, flags); @@ -204,20 +199,20 @@ sp_3dbox_set_shape(SP3DBox *box3d) if (bc->extruded) { sp_3dbox_compute_specific_corners (bc, corner1, corner2, corner3, corner4); - box3d->face3.set_shape(bc->drag_origin, corner4, Box3D::Y, Box3D::Z); - box3d->face3.set_curve(); - box3d->face4.set_shape(corner2, corner4, Box3D::X, Box3D::Z); - box3d->face4.set_curve(); - box3d->face5.set_shape(bc->drag_origin, corner2, Box3D::X, Box3D::Y); - box3d->face5.set_curve(); - box3d->face6.set_shape(bc->drag_ptB, corner4, Box3D::X, Box3D::Y); - box3d->face6.set_curve(); - - box3d->face2.set_shape(corner1, bc->drag_ptC, Box3D::Y, Box3D::Z); - box3d->face2.set_curve(); + box3d->faces[2].set_shape(bc->drag_origin, corner4, Box3D::Y, Box3D::Z); + box3d->faces[2].set_curve(); + box3d->faces[3].set_shape(corner2, corner4, Box3D::X, Box3D::Z); + box3d->faces[3].set_curve(); + box3d->faces[4].set_shape(bc->drag_origin, corner2, Box3D::X, Box3D::Y); + box3d->faces[4].set_curve(); + box3d->faces[5].set_shape(bc->drag_ptB, corner4, Box3D::X, Box3D::Y); + box3d->faces[5].set_curve(); + + box3d->faces[1].set_shape(corner1, bc->drag_ptC, Box3D::Y, Box3D::Z); + box3d->faces[1].set_curve(); } - box3d->face1.set_shape(bc->drag_origin, bc->drag_ptB, Box3D::X, Box3D::Z); - box3d->face1.set_curve(); + box3d->faces[0].set_shape(bc->drag_origin, bc->drag_ptB, Box3D::X, Box3D::Z); + box3d->faces[0].set_curve(); } |
