File: GraphicsMatrix.xs

package info (click to toggle)
libwx-perl 0.9702-1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 3,240 kB
  • ctags: 1,812
  • sloc: cpp: 8,988; perl: 6,366; makefile: 38; ansic: 1
file content (99 lines) | stat: -rwxr-xr-x 2,247 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
#############################################################################
## Name:        XS/GraphicsMatrix.xs
## Purpose:     XS for Wx::GraphicsMatrix
## Author:      Klaas Hartmann
## Modified by:
## Created:     29/06/2007
## RCS-ID:      $Id: GraphicsMatrix.xs 2110 2007-08-03 19:20:51Z mbarbon $
## Copyright:   (c) 2007 Klaas Hartmann
## Licence:     This program is free software; you can redistribute it and/or
##              modify it under the same terms as Perl itself
#############################################################################

#if wxUSE_GRAPHICS_CONTEXT

#include <wx/graphics.h>

MODULE=Wx PACKAGE=Wx::GraphicsMatrix

void
wxGraphicsMatrix::Concat ( t )
    wxGraphicsMatrix* t

void
wxGraphicsMatrix::Get ( )
  PREINIT:
    wxDouble a, b, c, d, tx, ty;
  PPCODE:
    THIS->Get( &a, &b, &c, &d, &tx, &ty );
    EXTEND( SP, 6 );
    PUSHs( sv_2mortal( newSVnv( a ) ) );
    PUSHs( sv_2mortal( newSVnv( b ) ) );
    PUSHs( sv_2mortal( newSVnv( c ) ) );
    PUSHs( sv_2mortal( newSVnv( d ) ) );
    PUSHs( sv_2mortal( newSVnv( tx ) ) );
    PUSHs( sv_2mortal( newSVnv( ty ) ) );

void
wxGraphicsMatrix::Invert ()

bool 
wxGraphicsMatrix::IsEqual ( t )
    wxGraphicsMatrix* t
  C_ARGS: *t

bool
wxGraphicsMatrix::IsIdentity ()

void 
wxGraphicsMatrix::Rotate (angle)
    wxDouble angle

void 
wxGraphicsMatrix::Scale (xScale, yScale)
    wxDouble xScale
    wxDouble yScale

void 
wxGraphicsMatrix::Translate (dx, dy)
    wxDouble dx
    wxDouble dy

void 
wxGraphicsMatrix::Set (a, b, c, d, tx, ty)
    wxDouble a
    wxDouble b
    wxDouble c 
    wxDouble d
    wxDouble tx
    wxDouble ty

void
wxGraphicsMatrix::TransformPoint ( x, y )
    wxDouble x
    wxDouble y
  PREINIT:
    wxDouble x_out, y_out;
  PPCODE:
    x_out = x;
    y_out = y;
    THIS->TransformPoint( &x, &y );
    EXTEND( SP, 2 );
    PUSHs( sv_2mortal( newSVnv( x ) ) );
    PUSHs( sv_2mortal( newSVnv( y ) ) );

void
wxGraphicsMatrix::TransformDistance ( dx, dy )
    wxDouble dx
    wxDouble dy
  PREINIT:
    wxDouble dx_out, dy_out;
  PPCODE:
    dx_out = dx;
    dy_out = dy;
    THIS->TransformDistance( &dx, &dy );
    EXTEND( SP, 2 );
    PUSHs( sv_2mortal( newSVnv( dx ) ) );
    PUSHs( sv_2mortal( newSVnv( dy ) ) );

#endif