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 模块和所需函数的模块。
注释
开始绘制。
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)