跳轉到內容

DXFortran

0% developed
來自華夏公益教科書

DXFortran

[編輯 | 編輯原始碼]

DXFortran 專案旨在為 FORTRAN90 程式設計師開發一個以 DXF(繪圖交換格式)格式的向量圖形庫。這是一個免費軟體發行版。

URL:http://www.ualg.pt/est/adec/csc/dxfortran

目的

DXFortran 專案旨在為 FORTRAN90 程式設計師開發一個以 DXF(繪圖交換格式)格式的向量圖形庫。這是一個免費軟體發行版。

建立這個圖形庫的目的是讓 FORTRAN90 中的程式設計師能夠自動生成向量格式的圖形,而無需瞭解 DXF 結構。

開發此工具的原因與 DXF 的良好可移植性有關,以及能夠支援圖形工具的開發,這些工具需要 CAD 系統的處理。

結構

DXFortran 將由一個標準庫(DXFortranStd)構成,該庫包含 DXF 格式的所有基本命令,例如

  • dfLine() - LINE
  • dfPline() - POLYLINE
  • dfText() - TEXT
  • 等等...

該庫將支援以下屬性

  • 圖層;
  • 3D;
  • 顏色;
  • 線型;
  • 等等...

從 DXFortran 標準將構建主題庫,例如

  • DXFortran Math - 用於數學應用的圖形函式庫。
  • DXFortran Engineering - 用於工程應用的圖形函式庫。
  • 等等...

開發

DXFortran 標準庫將由專案團隊(Davide Santos 和 Carlos Silva)開發。

該團隊將繼續為主題函式做出貢獻,並管理對專案貢獻的相關程式碼。

對於想要做出貢獻的使用者,將在專案頁面上提供一套程式碼編寫規則,這些規則是根據歐洲 FORTRAN90 編寫規範制定的。

在每個函式(例程)中,將在標題中註明作者的姓名和來源(工作地點和國家)。

庫的使用

該庫將以原始碼的形式提供。

每個使用者都必須在其程式的程式碼中包含 DXFortranStd 模組和所需函式的模組。

DXFortranStd

[編輯 | 編輯原始碼]
dfBegin()
[編輯 | 編輯原始碼]

註釋

開始繪製。

Usace 模式

CALL dfBegin(FileNum, Layer_def)

引數

Scalar arguments with intent(in):
# FileNum - File number (Integer);
# Layer_def - Layer definition (Character), 2D matrix.

匯入的例程或函式

None

示例

圖層配置示例

CHARACTER (len=15),DIMENSION (2,3) :: layer_def
layer_def(1,1)="0" layer_def(1,2)="continuous"
layer_def(1,3)="7"
layer_def(2,1)="layer1"
layer_def(2,2)="continuous"
layer_def(2,3)="1" 
CALL dfBegin(FileNum,layer_def)

線型定義

CENTER {Center ____ _ ____ _ ____ _ ____ _ ____ _ ____}
CENTER2 {Center (.5x) ___ _ ___ _ ___ _ ___ _ ___ _ ___}
CENTERX2 {Center (2x) ________ __ ________ __ _____}
DASHDOT {Dash dot __ . __ . __ . __ . __ . __ . __ . __}
DASHDOT2 {Dash dot (.5x) _._._._._._._._._._._._._._._.}
DASHDOTX2 {Dash dot (2x) ____ . ____ . ____ . ___}
DASHED {Dashed __ __ __ __ __ __ __ __ __ __ __ __ __ _}
DASHED2 {Dashed (.5x) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _}
DASHEDX2 {Dashed (2x) ____ ____ ____ ____ ____ ___}
DIVIDE {Divide ____ . . ____ . . ____ . . ____ . . ____}
DIVIDE2 {Divide (.5x) __..__..__..__..__..__..__..__.._}
DIVIDEX2 {Divide (2x) _______ . . _______ . . _____}
DOT {Dot . . . . . . . . . . . . . . . . . . . . . .}
DOT2 {Dot (.5x) .....................................}
DOTX2 {Dot (2x) . . . . . . . . . . . . .}
HIDDEN {Hidden __ __ __ __ __ __ __ __ __ __ __ __ __ _}
HIDDEN2 {Hidden (.5x) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _}
HIDDENX2 {Hidden (2x) ____ ____ ____ ____ ____ ____ ____}

註釋

結束繪製。

Usace 模式

CALL dfEnd(FileNum)

引數

Scalar arguments with intent(in):
# FileNum - File number

匯入的例程或函式

示例

CALL dfEnd(FileNum)

Fortran 市場

Fortran 90 - Fortran 77 程式設計師的轉換課程

G95 專案

編寫和記錄可交換 Fortran 90 程式碼的歐洲標準

華夏公益教科書