您好,我正在尝试安装和使用python库NodeboxOpenGL,以便创建带有节点和边缘的自己的图。但是我遇到了麻烦
NodeBox OpenGL site开始。我下载了适用于OpenGL的NodeBox,然后下载了pyglet,然后执行了easy_install nodebox-opengl。
注意我没有做点子安装
我从pyglet安装了pyglet。所以现在我正在考虑一切准备就绪。我快速检查了我的c:\ python27 \ Lib \ site-packages \位置,只是确保nodebox文件夹在那里,一切似乎都很好。
我尝试了网站上的示例程序

from nodebox.graphics import *
from nodebox.graphics.physics import Flock

flock = Flock(40, 0, 0, 500, 500)
flock.sight = 300

def draw(canvas):
    background(1)
    fill(0, 0.75)
    flock.update(cohesion=0.15)
    for boid in flock:
        push()
        translate(boid.x, boid.y)
        scale(0.5 + 1.5 * boid.depth)
        rotate(boid.heading)
        arrow(0, 0, 15)
        pop()

canvas.fps = 30
canvas.size = 600, 400
canvas.run(draw)

试图运行它,但我不断收到此错误
Traceback (most recent call last):
  File "E:\Workspace\ElasticNodes\graph1.py", line 5, in <module>
    from nodebox.graphics import *
  File "E:\Workspace\ElasticNodes\nodebox\graphics\__init__.py", line 1, in <module>
    import bezier
  File "E:\Workspace\ElasticNodes\nodebox\graphics\bezier.py", line 10, in <module>
    from context import BezierPath, PathElement, PathError, Point, MOVETO, LINETO, CURVETO, CLOSE
  File "E:\Workspace\ElasticNodes\nodebox\graphics\context.py", line 29, in <module>
    import geometry
  File "E:\Workspace\ElasticNodes\nodebox\graphics\geometry.py", line 454, in <module>
    from pyglet.gl import \
ImportError: cannot import name pointer

我尝试修改python脚本即
在脚本中,将NodeBox的位置添加到sys.path中,然后再导入:>>> MODULE ='/ users / tom / python / nodebox'>>> import sys;如果MODULE不在sys.path中:sys.path.append(MODULE)>>> import nodebox

但是还是一样的错误。
我正在使用在Windows上运行的Python2.7。我不确定自己在做什么错。有没有人有在Windows上运行此库的任何经验。我究竟做错了什么

最佳答案

也许这可以帮助您:

  • geometry.py中 del“指针”导入。将指针(数据)替换为POINTER(数据)
  • 我也遇到另一个错误,因此也许您需要将import添加到“ shaders.py ”:从ctypes导入c_uint
  • 09-11 20:08