我正在以下链接阅读 RobertSedwick 的算法
页码:218 图 5.13
PostScript 中的以下语句是什么意思。
2 copy ge {dup 0 rlineto}
{
...
} ifelse
还有以下是什么意思
2 copy KochR
我第一次在这里研究 PostScript。
我正在以下链接阅读 RobertSedwick 的算法
页码:218 图 5.13
PostScript 中的以下语句是什么意思。
2 copy ge {dup 0 rlineto}
{
...
} ifelse
还有以下是什么意思
2 copy KochR
我第一次在这里研究 PostScript。
(这个答案基于 luser droog 的答案,我对给出的代码有不同的理解。)
要更直接地回答您的问题,很难解释代码的作用,因为它不完整。
两个片段的开头都是2 copy
将顶部两个东西的副本推送到堆栈上。这些是什么东西????(在此复制之后,2
不再在堆栈上。)
嗯,他们可能是数字。在第一个示例中,它们几乎肯定是一个坐标对:x 和 y:
如果y大于或等于 2 x ,则从当前位置到(y,0)画一条线到 (current-x + y-from-stack, 0) 。为什么要这样做????
否则执行省略号表示的代码{ ... }
在第二个示例中,KochR
很可能是绘制科赫曲线的递归过程,其中一个参数几乎可以肯定是递归级别,另一个可能是单个线段的长度(除非它非常复杂并提供全局-缩放控制)。
这就是从代码中可以猜到的所有内容,如图所示。
请在此处查看 Kurt Pfeifle 的答案,以获取此草率答案的更正版本。希望我在后续问题中有所救赎
要更直接地回答您的问题,很难解释代码的作用,因为它不完整。
两个片段的开头都是2 copy
将顶部两个东西的副本推送到堆栈上。这些是什么东西????
嗯,他们可能是数字。在第一个示例中,它们几乎肯定是一个坐标对:x 和 y。如果 y 大于 2,则画一条线到 (current-x + y-from-stack, 0)。为什么要这样做????
在第二个示例中,KochR
很可能是绘制科赫曲线的递归过程,其中一个参数几乎可以肯定是递归级别,另一个可能是单个线段的长度(除非它非常复杂并提供全局-缩放控制)。
这就是从代码中可以猜到的所有内容,如图所示。HTH。
您应该首先参考以下四本书/资源:
“蓝皮书”(PDF 0.9 MByte)。
PostScript 语言教程和食谱,Adobe 系统,Addison-Wesley 1985;国际标准书号 0201101793。
这是对 PostScript 语言的最佳介绍。PostScript 运算符以一种简单而有节奏的方式引入。示例程序易于阅读,并且可以打印出精美的图片。这本书只描述了 1 级 PostScript 的一小部分。仅靠它本身是不够的专业工作。
“绿皮书”(PDF 0.9 MByte)。
PostScript 语言程序设计,Adobe Systems,Addison-Wesley,1988;国际标准书号 0201143968。
这本书展示了如何在现实世界中使用 PostScript。尽管本书基于 1 级 PostScript,但良好的编程实践并没有像语言本身那样发生太大变化。
“红皮书”(PDF 7.6 MByte)。
PostScript 语言参考手册,Adobe Systems Addison-Wesley,1999;ISBN 0201379228) 912 页。
这是 PostScript 语言的官方描述。书中的一切都很重要;一切只解释一次。喜欢在床上阅读的人也可以使用纸质版的红皮书。无需在 Adobe 的合作伙伴计划中注册的旧版本(日期为 1999 年)可在此处获得。
PostScript 中的思考(PDF 0.8 MByte)。
格伦·C·里德,艾迪生-卫斯理,1990;国际标准书号 0201523728。
这本书很好地介绍了 PostScript。这本书是免费提供的。为什么不试试呢?
(以上信息主要取自PostScript FAQ。我拥有并使用过以上所有书籍,并且完全同意给定的评估。)