codecamp

three.js ShapePath

该类用于转换一系列的形状为一个Path数组,例如转换SVG中的Path为three.js中的Path(请参阅下方的example)。

例子

geometry / extrude / shapes2

构造函数

ShapePath( )

创建一个新的ShapePath。和Path不同,因为ShapePath被设计为在创建之后生成,所以没有点被传入到构造函数中。

属性

.subPaths : Array

Path数组。

.currentPath : Array

当前将要被生成的路径。

方法

.moveTo ( x : Float, y : Float ) : this

创建一个新的Path,并在Path上调用Path.moveTo( x, y )。

.lineTo ( x : Float, y : Float ) : this

这一方法从currentPath(当前路径)的偏移量创建一条到X和Y的线,并将偏移量更新为X和Y。

.quadraticCurveTo ( cpX : Float, cpY : Float, x : Float, y : Float ) : this

这一方法从currentPath(当前路径)创建一条到X和Y的二次曲线,cpX和cpY作为控制点, 并将currentPath的偏移量更新为x和y。

.bezierCurveTo ( cp1X : Float, cp1Y : Float, cp2X : Float, cp2Y : Float, x : Float, y : Float ) : this

这一方法从currentPath(当前路径)的偏移量创建一条到X和Y的贝塞尔曲线, cp1X、cp1Y和cp2X、cp2Y为控制点,并将currentPath的偏移量更新为x和y。

.splineThru ( points : Array ) : this

points - 一个Vector2数组。

连接一个新的SplineCurve(样条曲线)到currentPath(当前路径)。

.toShapes ( isCCW : Boolean ) : Array

isCCW -- 更改实体形状和孔洞的生成方式。

将subPaths数组转换为到Shapes数组。默认情况下,实体形状按照顺时针(CW)来定义,孔洞按照逆时针(CCW)来定义。 如果isCCW被设置为true,则孔洞和实体形状的定义将被反转。

源代码

src/extras/core/Path.js


three.js Shape
three.js ArcCurve
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

参考

核心 / BufferAttributes

渲染器 / WebXR

开发者参考

WebGL渲染器

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }