type, public, abstract :: vector_stream_writer
Abstract interface for vector stream writers (PDF, SVG, etc.)
Components
Type |
Visibility | Attributes |
|
Name |
| Initial | |
character(len=:),
|
public, |
allocatable
|
:: |
content_stream |
|
|
|
type(vector_graphics_state),
|
public |
|
:: |
current_state |
|
|
|
Type-Bound Procedures
-
subroutine write_command_interface(this, command)
Prototype
Arguments
Type |
Intent | Optional | Attributes |
|
Name |
|
class(vector_stream_writer),
|
intent(inout) |
|
|
:: |
this |
|
character(len=*),
|
intent(in) |
|
|
:: |
command |
|
-
subroutine write_move_interface(this, x, y)
Prototype
Arguments
Type |
Intent | Optional | Attributes |
|
Name |
|
class(vector_stream_writer),
|
intent(inout) |
|
|
:: |
this |
|
real(kind=wp),
|
intent(in) |
|
|
:: |
x |
|
real(kind=wp),
|
intent(in) |
|
|
:: |
y |
|
-
subroutine write_line_interface(this, x, y)
Prototype
Arguments
Type |
Intent | Optional | Attributes |
|
Name |
|
class(vector_stream_writer),
|
intent(inout) |
|
|
:: |
this |
|
real(kind=wp),
|
intent(in) |
|
|
:: |
x |
|
real(kind=wp),
|
intent(in) |
|
|
:: |
y |
|
-
subroutine write_stroke_interface(this)
Prototype
Arguments
-
subroutine write_color_interface(this, r, g, b)
Prototype
Arguments
Type |
Intent | Optional | Attributes |
|
Name |
|
class(vector_stream_writer),
|
intent(inout) |
|
|
:: |
this |
|
real(kind=wp),
|
intent(in) |
|
|
:: |
r |
|
real(kind=wp),
|
intent(in) |
|
|
:: |
g |
|
real(kind=wp),
|
intent(in) |
|
|
:: |
b |
|
-
subroutine write_line_width_interface(this, width)
Prototype
Arguments
Type |
Intent | Optional | Attributes |
|
Name |
|
class(vector_stream_writer),
|
intent(inout) |
|
|
:: |
this |
|
real(kind=wp),
|
intent(in) |
|
|
:: |
width |
|
-
subroutine save_state_interface(this)
Prototype
Arguments
-
subroutine restore_state_interface(this)
Prototype
Arguments
-
private subroutine initialize_vector_stream(this)
Arguments
-
private subroutine add_to_vector_stream(this, command)
Arguments
Type |
Intent | Optional | Attributes |
|
Name |
|
class(vector_stream_writer),
|
intent(inout) |
|
|
:: |
this |
|
character(len=*),
|
intent(in) |
|
|
:: |
command |
|
-
private subroutine draw_generic_vector_line(this, x1, y1, x2, y2)
Arguments
Type |
Intent | Optional | Attributes |
|
Name |
|
class(vector_stream_writer),
|
intent(inout) |
|
|
:: |
this |
|
real(kind=wp),
|
intent(in) |
|
|
:: |
x1 |
|
real(kind=wp),
|
intent(in) |
|
|
:: |
y1 |
|
real(kind=wp),
|
intent(in) |
|
|
:: |
x2 |
|
real(kind=wp),
|
intent(in) |
|
|
:: |
y2 |
|
-
private subroutine set_generic_vector_color(this, r, g, b)
Arguments
Type |
Intent | Optional | Attributes |
|
Name |
|
class(vector_stream_writer),
|
intent(inout) |
|
|
:: |
this |
|
real(kind=wp),
|
intent(in) |
|
|
:: |
r |
|
real(kind=wp),
|
intent(in) |
|
|
:: |
g |
|
real(kind=wp),
|
intent(in) |
|
|
:: |
b |
|
-
private subroutine set_generic_vector_line_width(this, width)
Arguments
Type |
Intent | Optional | Attributes |
|
Name |
|
class(vector_stream_writer),
|
intent(inout) |
|
|
:: |
this |
|
real(kind=wp),
|
intent(in) |
|
|
:: |
width |
|