diff options
| author | Maximilian Albert <maximilian.albert@gmail.com> | 2007-06-21 13:01:57 +0000 |
|---|---|---|
| committer | cilix42 <cilix42@users.sourceforge.net> | 2007-06-21 13:01:57 +0000 |
| commit | cf233ff5bbc68bd598ef4b81c7b4063548f2eff9 (patch) | |
| tree | 56d48726d21ad368509a945bf7df91966115cc9c /src/box3d.h | |
| parent | Fix function plotter for the most common case where there are no transforms a... (diff) | |
| download | inkscape-cf233ff5bbc68bd598ef4b81c7b4063548f2eff9.tar.gz inkscape-cf233ff5bbc68bd598ef4b81c7b4063548f2eff9.zip | |
First (very limited) version of the 3D box tool; allows for drawing of new boxes in a fixed perspective without any live interaction.
(bzr r3084)
Diffstat (limited to 'src/box3d.h')
| -rw-r--r-- | src/box3d.h | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/src/box3d.h b/src/box3d.h new file mode 100644 index 000000000..c83194fa0 --- /dev/null +++ b/src/box3d.h @@ -0,0 +1,55 @@ +#ifndef __SP_3DBOX_H__ +#define __SP_3DBOX_H__ + +/* + * SVG <box3d> implementation + * + * Authors: + * Lauris Kaplinski <lauris@kaplinski.com> + * Maximilian Albert <Anhalter42@gmx.de> + * + * Copyright (C) 2007 Authors + * Copyright (C) 1999-2002 Lauris Kaplinski + * Copyright (C) 2000-2001 Ximian, Inc. + * + * Released under GNU GPL, read the file 'COPYING' for more information + */ + +#include "inkscape.h" +#include "perspective-line.h" +//#include "display/curve.h" + +#include "sp-item-group.h" +#include "sp-path.h" +#include "xml/document.h" +#include "xml/repr.h" +#include "line-geometry.h" +#include "box3d-face.h" + + +#define SP_TYPE_3DBOX (sp_3dbox_get_type ()) +#define SP_3DBOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_3DBOX, SP3DBox)) +#define SP_3DBOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SP_TYPE_3DBOX, SP3DBoxClass)) +#define SP_IS_3DBOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_3DBOX)) +#define SP_IS_3DBOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_3DBOX)) + + +struct SP3DBox : public SPGroup { + Box3DFace face1; + Box3DFace face2; + Box3DFace face3; + Box3DFace face4; + Box3DFace face5; + Box3DFace face6; +}; + +struct SP3DBoxClass { + SPGroupClass parent_class; +}; + +GType sp_3dbox_get_type (void); + +void sp_3dbox_position_set (SP3DBoxContext &bc); +void sp_3dbox_compute_specific_corners (SP3DBoxContext *box3d_context, NR::Point &corner1, NR::Point &corner2, NR::Point &corner3, NR::Point &corner4); + +#endif |
