fortran66のブログ

fortran について書きます。

阿部高和と学ぶIntel Visual Fortran

コンソール窓から対話的に絵を描くモヂュールを作ります。

普通のコンソール型プロジェクトで、PROGRAM文で始まるメインルーチンが実行開始位置となり、対話的に絵がかける様になります。マルチスレッドでグラフィック窓を開くので、絵を描きながらコンソールでの実行を続行できます。

全てFortranで、100行程度で実現できます。

実行例

メイン部分 ソース

PROGRAM kusomiso
USE uhoplot
CALL gr_on('Abe-san', 500, 600)
CALL gr_pencol(irgb(0, 0, 0))

CALL gr_text(150, 10, 'ああ・・・つぎはションベンだ', irgb(155, 155, 0) )
CALL gr_show()

! chin chin
CALL line(  0.0,  11.0, 0)
CALL line(  0.0,   8.0, 1)

CALL line( -8.0, -26.5, 0)
CALL line(-11.0, -24.0, 1)
CALL line(  8.0, -26.5, 0)
CALL line( 11.0, -24.0, 1)

!中略

CALL gr_show()
CALL gr_off()
STOP
CONTAINS
!-------------------------------------------------------------------------------------
SUBROUTINE line(x, y, ipen)
IMPLICIT NONE
REAL   , INTENT(IN) :: x, y
INTEGER, INTENT(IN) :: ipen
INTEGER (BOOL):: iretb
INTEGER :: ix, iy
ix =  INT(x * 4.0 + 250.0)
iy = -INT(y * 4.0 + 100.0) + 520 
IF (ipen == 1) THEN
 CALL gr_line(ix, iy)
ELSE
 CALL gr_move(ix, iy)
END IF
RETURN
END SUBROUTINE line
!-------------------------------------------------------------------------------------
END PROGRAM kusomiso