123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225 |
- deferred class CD_CANVAS_WORLD_COORDINATES
- inherit
- CANVAS_DRAW
- feature {ANY}
- set_window (xmin, xmax, ymin, ymax: REAL_64)
-
-
-
-
- do
- int_wd_canvas_window(cnvs, xmin, xmax, ymin, ymax)
- end
- get_window: TUPLE[REAL_64, REAL_64, REAL_64, REAL_64]
-
-
-
- local
- xmin, xmax, ymin, ymax: REAL_64
- do
- int_wd_canvas_get_window(cnvs, $xmin, $xmax, $ymin, $ymax)
- Result := [xmin, xmax, ymin, ymax]
- end
- set_viewport (xmin, xmax, ymin, ymax: INTEGER)
-
-
-
-
-
- do
- int_wd_canvas_viewport(cnvs, xmin, xmax, ymin, ymax)
- end
- get_viewport: TUPLE[INTEGER, INTEGER, INTEGER, INTEGER]
-
-
-
- local
- xmin, xmax, ymin, ymax: INTEGER
- do
- int_wd_canvas_get_viewport(cnvs, $xmin, $xmax, $ymin, $ymax)
- Result := [xmin, xmax, ymin, ymax]
- end
- world_to_canvas (xw, yw: REAL_64): TUPLE[INTEGER, INTEGER]
-
- local
- xv, yv: INTEGER
- do
- int_wd_canvas_world_to_canvas(cnvs, xw, yw, $xv, $yv)
- Result := [xv, yv]
- end
- canvas_to_world (xv, yv: INTEGER): TUPLE[REAL_64, REAL_64]
-
- local
- xw, yw: REAL_64
- do
- int_wd_canvas_canvas_to_world(cnvs, xv, yv, $xw, $yw)
- Result := [xw, yw]
- end
- set_wd_transform (sx, sy, tx, ty: REAL_64)
-
-
-
-
-
- do
- int_wd_canvas_set_transform(cnvs, sx, sy, tx, ty)
- end
- get_wd_transform: TUPLE[REAL_64, REAL_64, REAL_64, REAL_64]
-
-
- local
- sx, sy, tx, ty: REAL_64
- do
- int_wd_canvas_get_transform(cnvs, $sx, $sy, $tx, $ty)
- Result := [sx, sy, tx, ty]
- end
- set_wd_translate (dtx, dty: REAL_64)
-
-
- do
- int_wd_canvas_translate(cnvs, dtx, dty)
- end
- set_wd_scale (dsx, dsy: REAL_64)
-
-
- do
- int_wd_canvas_scale(cnvs, dsx, dsy)
- end
-
- wd_hard_copy
- do
-
- end
- feature {NONE}
- int_wd_canvas_window (wgt: POINTER; xmin, xmax, ymin, ymax: REAL_64)
- external
- "C inline use %"eiffel-iup.h%""
- alias
- "wdCanvasWindow ($wgt, $xmin, $xmax, $ymin, $ymax);"
- end
- int_wd_canvas_get_window (wgt, xmin, xmax, ymin, ymax: POINTER)
- external
- "C inline use %"eiffel-iup.h%""
- alias
- "wdCanvasGetWindow ($wgt, $xmin, $xmax, $ymin, $ymax);"
- end
- int_wd_canvas_viewport (wgt: POINTER; xmin, xmax, ymin, ymax: INTEGER)
- external
- "C inline use %"eiffel-iup.h%""
- alias
- "wdCanvasViewport ($wgt, $xmin, $xmax, $ymin, $ymax);"
- end
- int_wd_canvas_get_viewport (wgt, xmin, xmax, ymin, ymax: POINTER)
- external
- "C inline use %"eiffel-iup.h%""
- alias
- "wdCanvasGetViewport ($wgt, $xmin, $xmax, $ymin, $ymax);"
- end
- int_wd_canvas_world_to_canvas (wgt: POINTER; xw, yw: REAL_64; xv, yv: POINTER)
- external
- "C inline use %"eiffel-iup.h%""
- alias
- "wdCanvasWorld2Canvas ($wgt, $xw, $yw, $xv, $yv);"
- end
- int_wd_canvas_canvas_to_world (wgt: POINTER; xv, yv: INTEGER; xw, yw: POINTER)
- external
- "C inline use %"eiffel-iup.h%""
- alias
- "wdCanvasCanvas2World ($wgt, $xv, $yv, $xw, $yw);"
- end
- int_wd_canvas_set_transform (wgt: POINTER; sx, sy, tx, ty: REAL_64)
- external
- "C inline use %"eiffel-iup.h%""
- alias
- "wdCanvasSetTransform ($wgt, $sx, $sy, $tx, $ty);"
- end
- int_wd_canvas_get_transform (wgt, sx, sy, tx, ty: POINTER)
- external
- "C inline use %"eiffel-iup.h%""
- alias
- "wdCanvasGetTransform ($wgt, $sx, $sy, $tx, $ty);"
- end
- int_wd_canvas_translate (wgt: POINTER; dtx, dty: REAL_64)
- external
- "C inline use %"eiffel-iup.h%""
- alias
- "wdCanvasTranslate ($wgt, $dtx, $dty);"
- end
- int_wd_canvas_scale (wgt: POINTER; dsx, dsy: REAL_64)
- external
- "C inline use %"eiffel-iup.h%""
- alias
- "wdCanvasScale ($wgt, $dsx, $dsy);"
- end
- end
|