玩几何?

时间:2009-09-07 14:05:31

标签: opengl geometry set

有没有人有一些有用的初学者教程和代码片段,可以在代码中使用基本的几何形状和几何样张?

特别能够轻松创建功能并在屏幕上递归绘制它们。对OS X和Cocoa的Objective-C和基本窗口绘制例程的附加要求,但不是绝对的。

一个具体的问题是如何编写测试来验证形状实际上是正方形,三角形等。这个想法是你可以绘制一堆形状,将它们组合在一起并测试和分析紧急形状从子形状集合中产生。

这不是一个家庭作业问题。我不在学校。只是想试验绘图代码和几何。并寻找一种可访问的方式来玩和尝试形状和几何编程。

我对Java和Processing,或者Actionscript / Haxe和Flash持开放态度,但也希望使用Objective C和Xcode来构建项目。

我正在寻找的是一些明确的教程,让我开始走上正轨。

一些特定的应用程序包括如何显示例如Cantor Set,Mandelbrot Set,Julia set等部分的明显示例......

除此之外,我正在维基百科上阅读“Russell's Paradox”。维基文章说:

  

如果是,我们称之为“异常”   自己的成员,和“正常”   除此以外。 例如,拿集   所有方块。那套不是本身   一个正方形,因此不是一个   所有广场的成员。所以   这是正常的”。另一方面,如果   我们采取补充集   包含所有非正方形,该集合是   本身不是一个正方形,所以应该是   一个自己的成员。它是   “异常”。

关于方块的观点对我来说似乎是直觉上的错误。所有加在一起的正方形似乎意味着更大的正方形。显然,我对集合有更大的悖论。但我很好奇的是在代码中使用形状并在代码中凭经验分析它们。因此,例如,一个潜在的例程可能是绘制四个正方形,将它们放在一起,它们之间没有空间,并分析它们所形成的新形状的尺寸和属性。

甚至可以用鼠标进行自由手绘。但是现在只需绘制代码即可。

3 个答案:

答案 0 :(得分:3)

如果您愿意使用C ++,我会推荐两个库:

boost :: GGL通用几何库处理许多几何图元,例如多边形,线条,点等。它仍然很新,但我觉得当它被正式添加到提升中时会很大。

CGAL,计算几何算法库:这个东西很大,几乎可以完成几何编程所需的任何事情。如果你对做一些图形化的东西感兴趣,它对Qt也有非常好的绑定。

答案 1 :(得分:1)

我猜OpenGL可能不是最好的起点。这是非常低级别的,你将不得不与意外的行为和实际的驱动程序问题作斗争。如果您强调“播放”部分,请转到Processing。这是一个专为计算机图形设计而设计的编程环境。

但是,如果你真的想采取形状测试路径,那么对计算机视觉算法的深入研究是不可避免的。另一方面,如果您只想将形状与参考图像进行比较,而不进行旋转,缩放或其他扭曲,Visual Difference Predictor库可能会对您有所帮助。

答案 2 :(得分:0)

对于任何初学者OpenGL程序员,我强烈推荐NeHe,一旦完成了前几个教程,你就可以随心所欲地使用几何体。

希望有所帮助