我正在用python编写光线跟踪模拟。有些光源会发出光线,然后在/通过表面反射,吸收和透射。我正在使用vpython作为可视化工具,但其背后的数据模型是独立的。
我正在使用模拟进行计算
目前,传输尚未实现,但我想为此准备数据结构。最明显的解决方案是使用复合模式,例如:
实施此模式时,我意识到python does not "like" recursions-这是行走在我的射线段树上并显示它们或计算新射线段的最明显方法。
由于有两个孩子,将段存储为列表似乎是错误的。
我看到,有一些graph libraries用于python,但是它们似乎不太容易使用,我希望使用这些库来计算上述统计信息会不必要地麻烦。
是否有一种简单的,pythonic的方式来表示和遍历这些射线分段?