【问题标题】:Tool for printing SDL/PR diagrams用于打印 SDL/PR 图的工具
【发布时间】:2012-06-28 19:03:48
【问题描述】:

可悲的是,UML 实际上已经扼杀了SDL(规范和描述语言,ITU Z.100),如今很难找到支持 SDL 的有用工具。

我想打印状态图,我记得几年前我使用过一个免费工具。这是一些公司(如果我没记错的话来自巴西)很久以前开发的 Windows 二进制文件,但由于他们不再对它有任何商业兴趣,他们提供免费下载(只是二进制文件,没有源代码) .它至少可以打印我正在寻找的 SDL/PR 文件。

我试图搜索它,但找不到它。有人有这个工具的链接(或名称)吗?

【问题讨论】:

    标签: state-diagram


    【解决方案1】:

    我不知道这个工具,但如果您对免费的 SDL 流程编辑器感兴趣,那里有一个:http://www.opengeode.net

    【讨论】:

    • 谢谢,看起来很有希望。不幸的是,由于 antlr3 中缺少对 python 的支持,我目前无法测试(该包有更改日志条目“-禁用 python 运行时(与当前的 antlr 版本不兼容)”。但我会牢记这一点,并可能会努力尝试稍后安装。
    • 你必须安装antlr_python_runtime 3.1.3版本。尝试“sudo pip install antlr_python_runtime”或从这里手动下载并安装:pypi.python.org/pypi/antlr_python_runtime/3.1.3
    【解决方案2】:

    我创建了一个用于解释 SDL 进程的 C++ 库。这不是您要查找的内容,但使用此库您还可以生成 SDL/GR 图。

    图书馆:https://github.com/trodevel/fsm

    例子:

    【讨论】:

      【解决方案3】:

      终于找到了。它被称为SDLT

      什么是

      SDLT 是用于 SDL-PR 语言的免费 SDL 编译器, 生成 PostScript 格式的 SDL-GR。

      SDL 语言是一种非常适合电子规范和 面向服务的应用程序的描述。

      SDLT 程序 comp.exe、pag.exe 和 form.exe 最初是 在 CPqD TELEBRAS 开发并于 1986 年一起转移 与 TROPICO R 产品一起,向合同制造商提供。

      如果您安装了 SDLT,SDLT 还会生成 PDF 格式的 SDL-GR CutePDFTM 打印机。

      更新:

      由于某种原因,从 sdlt 程序运行编译时出现“找不到文件”错误。由于它只是一个图形前端,我已经弄清楚如何从 Makefile 运行所需的后端:

      # Variables assigned with = are evaluated at each substitution.
      # Variables assigned with := are evaluated at assignment.
      SDLT_CONF := $(shell mktemp sdlt.conf.XXXXXXXXXX)
      
      all: basics1.pdf
      
      %.pdf: %.ps
              ps2pdf $^ $@
      
      %.ps: %.prg
              ./mk_dosbox_conf.sh `pwd` `echo $@ | sed 's/\.ps$$//'` > $(SDLT_CONF)
              dosbox -conf $(SDLT_CONF)
              rm $(SDLT_CONF)
              mv \
                      `echo $@ | tr "[:lower:]" "[:upper:]"` \
                      `echo $@ | tr "[:upper:]" "[:lower:]"`
      

      并将以下内容作为mk_dosbox_conf.sh

      #!/bin/sh
      
      # Makes a dosbox.conf file that automates what SDLT.exe does
      
      if [ $# -ne 2 ]
      then
              echo "Usage: $0 <directory> <filenamebase>"
              exit 1
      fi
      
      cat <<EOF
      [autoexec]
      mount c: $1
      c:
      comp $2
      pag  $2
      form $2
      del $2.SBL
      del $2.LST
      del $2.RSP
      del $2.TXT
      exit
      EOF
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-12-10
        • 2011-01-19
        • 2011-01-23
        • 1970-01-01
        • 1970-01-01
        • 2011-01-18
        • 1970-01-01
        相关资源
        最近更新 更多