三.jsJavaScript WebGL呈现器¶
基于web的交互式查看器,使用三.jsJavaScript库由维护https://threejs.org。
通过添加关键字参数来调用查看器 viewer='threejs'
命令 show()
或者任何三维图形。场景将在用户的web浏览器中渲染和显示。交互性包括
用鼠标滚轮放大或缩小或捏在触摸板上
通过单击并拖动鼠标或在触摸板上滑动来旋转
用鼠标右键单击并拖动或在触摸板上用三个手指滑动来进行平移
生成的HTML文件包含除了JavaScript库之外的场景的所有数据,并且可以保存到磁盘上,以便共享或嵌入到web页面中。选择权 online
可以设置为 true
在联机内容传递网络中提供指向所需文件的链接。或者,可以从三.jsGitHub存储库,并直接从web服务器链接。
查看器当前支持的选项:
aspect_ratio
--(默认值: [1,1,1] )三个数值的列表或元组; z -宽高时自动减小,但可以覆盖axes
--(默认值:False)确定是否绘制坐标轴的布尔值axes_labels
--(默认值: [“x”、“y”、“z”] )三个字符串的列表或元组;设置为False可删除所有标签color
--(默认值:“蓝色”)三维对象的颜色decimals
--(默认值:2)整数决定标签中显示的小数位数frame
--(默认值:True)确定是否绘制帧的布尔值online
--(默认值:False)布尔值,用于确定本地标准包文件是否被指向联机内容传递网络的链接替换opacity
--(默认值:1)直线和曲面透明度的数值projection
--(默认值:“perspective”)要使用的摄影机投影类型;“perspective”或“orthographic”radius
--(默认值:无)线半径的数值;用于渲染比可用线粗的线thickness
或者在Windows平台上thickness
被忽略render_order
--(默认值:0)透明曲面渲染顺序的数值;对象从最低值到最高值进行渲染,以确保值较低的对象完全渲染single_side
--(默认值:False)确定是否渲染曲面材质的两面的布尔值;设置为True可减少闭合透明曲面的渲染瑕疵thickness
--(默认值:1)线条粗细的数值
单击查看器右下角的信息图标将打开可用操作的菜单。其中包括将三维场景保存为静态PNG图像或完整的HTML源代码。
作者:
Paul Masson(2016):初始版本
示例:
三个不同颜色和不透明度的球体:
sage: p1 = sphere(color='red', opacity='.5')
sage: p2 = sphere((-1,-1,1), color='cyan', opacity='.3')
sage: p3 = sphere((1,-1,-1), color='yellow', opacity='.7')
sage: show(p1 + p2 + p3, viewer='threejs')
参数螺旋:
sage: parametric_plot3d([cos(x),sin(x),x/10], (x,0,4*pi), color='red', viewer='threejs')
Graphics3d Object