有對WebGL的一個很好的教程在此鏈接:我怎麼可以運行HTML5文檔與IPython的筆記本WebGL的帆布
http://learningwebgl.com/blog/?p=571
,我用這個例子作爲我的出發點,這個問題:
http://learningwebgl.com/lessons/lesson06/index.html
因此,它在我的瀏覽器上運行良好。我複製了源代碼和所需的庫文件:
- glMatrix.html
- webgl-utils.js
在我的電腦上。現在我可以很好地在瀏覽器上再次運行它們。
在HTML源文件,這些libaries被稱爲外部庫是這樣的:
<script type="text/javascript" src=".\glMatrix.js"></script>
<script type="text/javascript" src=".\webgl-utils.js"></script>
他們位於同一目錄作爲我的HTML源文件,即kvBox.html。
現在我想從筆記本電腦內運行這個html。我輸入:
from IPython.core.display import HTML
def putHTML():
source = open("kvBox.html", "rb").read().decode()
return HTML(source)
putHTML()
同樣的屏幕在那裏,沒有框和畫布。筆記本上的輸出線沒有錯誤信息。
當我看着筆記本Server控制檯我看到這些錯誤:
[I 21:56:51.077 NotebookApp] 302 GET /notebooks/.%5CglMatrix.js?_=1454010913066
(::1) 15.64ms
[I 21:56:51.077 NotebookApp] Refusing to serve hidden file, via 404 Error
[W 21:56:51.077 NotebookApp] 404 GET /files/.%5CglMatrix.js (::1) 0.00ms referer
=http://localhost:8888/notebooks/Untitled4.ipynb?kernel_name=python3
[I 21:56:51.093 NotebookApp] 302 GET /notebooks/.%5Cwebgl-utils.js?_=14540109130
67 (::1) 0.00ms
[I 21:56:51.093 NotebookApp] Refusing to serve hidden file, via 404 Error
[W 21:56:51.093 NotebookApp] 404 GET /files/.%5Cwebgl-utils.js (::1) 0.00ms refe
rer=http://localhost:8888/notebooks/Untitled4.ipynb?kernel_name=python3
我用Google搜索,並期待throgh SO爲包括外部庫的筆記本電腦。大多數情況下,我發現在github上給出的noteook擴展。我需要一個解決方案爲我自己的補充。
最近的問題是這個項目:
How to add external javascript file in Ipython notebook
於是,我就用%% HTML命令對上述外部庫。輸出線沒有錯誤,但在控制檯上出現相同的拒絕錯誤。
編輯:
讀書,並努力還沒有工作這麼多不同的建議後,我有一種變通方法。我自己寫了一個簡單的包含例程。我將庫代碼合併到我的源html中,在上面的「source」字符串中,並且一切正常。
我不知道如何包含外部JS庫,但我通過蠻力將代碼添加到HTML文檔中,作爲作爲normla內部JavaScript,並且它工作正常。 – user2800464