HermiteSpline

                厄米樣條曲線是三次插值樣條曲線。必須為每個控制點定義點、傳入切線、傳出切線和時間。輸出切線是為點[0,n-2]定義的,而輸入切線是為點[1,n-1]定義的。例如,在points[i]points[i + 1]之間插入曲線段時,點處的切線分別為outTangents[i]inTangents[i]
                new HermiteSpline(options)
                Parameters:
                options (Object)
                Name Description
                options.times
                Array.<Number>
                在每個點上嚴格遞增的、無單位的浮點時間數組。這些值與時鐘時間沒有任何關系。它們是曲線的參數化。
                options.points
                Array.<Cartesian3>
                Cartesian3控制點數組。
                options.inTangents
                Array.<Cartesian3>
                每個控制點的Cartesian3輸入切線數組。
                options.outTangents
                Array.<Cartesian3>
                每個控制點的Cartesian3傳出切線數組。
                Example
                // Create a G<sup>1</sup> continuous Hermite spline
                var times = [ 0.0, 1.5, 3.0, 4.5, 6.0 ];
                var spline = new bmgl.HermiteSpline({
                    times : times,
                    points : [
                        new bmgl.Cartesian3(1235398.0, -4810983.0, 4146266.0),
                        new bmgl.Cartesian3(1372574.0, -5345182.0, 4606657.0),
                        new bmgl.Cartesian3(-757983.0, -5542796.0, 4514323.0),
                        new bmgl.Cartesian3(-2821260.0, -5248423.0, 4021290.0),
                        new bmgl.Cartesian3(-2539788.0, -4724797.0, 3620093.0)
                    ],
                    outTangents : [
                        new bmgl.Cartesian3(1125196, -161816, 270551),
                        new bmgl.Cartesian3(-996690.5, -365906.5, 184028.5),
                        new bmgl.Cartesian3(-2096917, 48379.5, -292683.5),
                        new bmgl.Cartesian3(-890902.5, 408999.5, -447115)
                    ],
                    inTangents : [
                        new bmgl.Cartesian3(-1993381, -731813, 368057),
                        new bmgl.Cartesian3(-4193834, 96759, -585367),
                        new bmgl.Cartesian3(-1781805, 817999, -894230),
                        new bmgl.Cartesian3(1165345, 112641, 47281)
                    ]
                });
                
                var p0 = spline.evaluate(times[0]);
                Throws
                See:

                Members

                (readonly) inTangents : Array.<Cartesian3>

                每個控制點的Cartesian3輸入切線數組。

                (readonly) outTangents : Array.<Cartesian3>

                每個控制點的Cartesian3傳出切線數組。

                (readonly) points : Array.<Cartesian3>

                Cartesian3控制點數組。

                (readonly) times : Array.<Number>

                控制點的時間數組。

                Methods

                (static) createC1(options) → {HermiteSpline}
                在每個控制點的切線相同的情況下創建樣條曲線。曲線至少保證在C1級。
                Parameters:
                options (Object)
                Name Description
                options.times
                Array.<Number>
                控制點時間數組。
                options.points
                Array.<Cartesian3>
                控制點數組。
                options.tangents
                Array.<Cartesian3>
                控制點處的切線數組。
                Example
                var points = [
                    new bmgl.Cartesian3(1235398.0, -4810983.0, 4146266.0),
                    new bmgl.Cartesian3(1372574.0, -5345182.0, 4606657.0),
                    new bmgl.Cartesian3(-757983.0, -5542796.0, 4514323.0),
                    new bmgl.Cartesian3(-2821260.0, -5248423.0, 4021290.0),
                    new bmgl.Cartesian3(-2539788.0, -4724797.0, 3620093.0)
                ];
                
                // Add tangents
                var tangents = new Array(points.length);
                tangents[0] = new bmgl.Cartesian3(1125196, -161816, 270551);
                var temp = new bmgl.Cartesian3();
                for (var i = 1; i < tangents.length - 1; ++i) {
                    tangents[i] = bmgl.Cartesian3.multiplyByScalar(bmgl.Cartesian3.subtract(points[i + 1], points[i - 1], temp), 0.5, new bmgl.Cartesian3());
                }
                tangents[tangents.length - 1] = new bmgl.Cartesian3(1165345, 112641, 47281);
                
                var spline = bmgl.HermiteSpline.createC1({
                    times : times,
                    points : points,
                    tangents : tangents
                });
                Throws
                (static) createClampedCubic(options) → {HermiteSpline|LinearSpline}
                創建夾緊的三次樣條曲線。生成內部控制點的切線,以在C2類中創建曲線。
                Parameters:
                options (Object)
                Name Description
                options.times
                Array.<Number>
                控制點時間數組。
                options.points
                Array.<Cartesian3>
                控制點數組。
                options.firstTangent
                Cartesian3
                第一個控制點的外切線。
                options.lastTangent
                Cartesian3
                最后一個控制點的傳入切線。
                Example
                // Create a clamped cubic spline above the earth from Philadelphia to Los Angeles.
                var spline = bmgl.HermiteSpline.createClampedCubic({
                    times : [ 0.0, 1.5, 3.0, 4.5, 6.0 ],
                    points : [
                        new bmgl.Cartesian3(1235398.0, -4810983.0, 4146266.0),
                        new bmgl.Cartesian3(1372574.0, -5345182.0, 4606657.0),
                        new bmgl.Cartesian3(-757983.0, -5542796.0, 4514323.0),
                        new bmgl.Cartesian3(-2821260.0, -5248423.0, 4021290.0),
                        new bmgl.Cartesian3(-2539788.0, -4724797.0, 3620093.0)
                    ],
                    firstTangent : new bmgl.Cartesian3(1125196, -161816, 270551),
                    lastTangent : new bmgl.Cartesian3(1165345, 112641, 47281)
                });
                Throws
                (static) createNaturalCubic(options) → {HermiteSpline|LinearSpline}
                創建自然三次樣條曲線。生成控制點的切線,以在C2類中創建曲線。
                Parameters:
                options (Object)
                Name Description
                options.times
                Array.<Number>
                控制點時間數組。
                options.points
                Array.<Cartesian3>
                控制點數組。
                Example
                // Create a natural cubic spline above the earth from Philadelphia to Los Angeles.
                var spline = bmgl.HermiteSpline.createNaturalCubic({
                    times : [ 0.0, 1.5, 3.0, 4.5, 6.0 ],
                    points : [
                        new bmgl.Cartesian3(1235398.0, -4810983.0, 4146266.0),
                        new bmgl.Cartesian3(1372574.0, -5345182.0, 4606657.0),
                        new bmgl.Cartesian3(-757983.0, -5542796.0, 4514323.0),
                        new bmgl.Cartesian3(-2821260.0, -5248423.0, 4021290.0),
                        new bmgl.Cartesian3(-2539788.0, -4724797.0, 3620093.0)
                    ]
                });
                Throws
                clampTime(time) → {Number}
                將給定的時間鉗制到樣條曲線所覆蓋的周期。
                Parameters:
                time (Number) 時間。
                evaluate(time, result) → {Cartesian3}
                在給定時間計算曲線。
                Parameters:
                time (Number) 評估曲線的時間。
                result (Cartesian3) 存儲結果的對象。
                Throws
                • DeveloperError : 時間必須在[t0, tn]范圍內,其中t0是數組times中的第一個元素,tn是數組times中的最后一個元素。
                findTimeInterval(time) → {Number}
                times中查找索引i,以便參數time在間隔[times[i], times[i + 1]]中。
                Parameters:
                time (Number) 時間。
                Throws
                • DeveloperError : 時間必須在[t0, tn]范圍內,其中t0是數組times中的第一個元素,tn是數組times中的最后一個元素。
                wrapTime(time) → {Number}
                將給定時間包裝到樣條曲線所覆蓋的周期。
                Parameters:
                time (Number) 時間。
                主站蜘蛛池模板: 中文字幕日韩丝袜一区| 久久人人爽人人爽人人片dvd | 好爽又高潮了毛片免费下载| 国产免费黄色片| 中文字幕一区二区三区久久网站 | 午夜视频在线观看免费完整版 | 日批视频在线看| 嫣嫣是女大生韩漫免费看| 久久综合九色综合欧美就去吻| 韩日视频在线观看| 成在线人永久免费视频播放| 人妖系列精品视频在线观看| 天堂资源中文在线| 小东西怎么流这么多水怎么办| 亚洲第一综合色| 国产xx肥老妇视频| 夜夜春宵伴娇全文阅读| 中文字幕精品在线视频| 最近最新中文字幕高清中文字幕网 | 日韩中文字幕一在线| 动漫成人在线观看| 67194熟妇在线观看线路| 强行扒开双腿猛烈进入| 亚洲欧洲精品成人久久曰影片| 精品国产一二三区在线影院| 久久久不卡国产精品一区二区| 狠狠躁日日躁夜夜躁2020| 国产亚洲欧美日韩在线看片| 香蕉精品视频在线观看| 天堂久久久久久中文字幕| 亚洲AV永久无码精品漫画| 熟妇激情内射com| 国产对白真实伦视频在线| 69SEX久久精品国产麻豆| 天天操天天射天天舔| 久久精品国产99国产精品澳门| 欧美第一页在线观看| 免费床戏全程无遮挡在线观看| 色多多视频官网| 国产精品永久免费自在线观看| maomiav923|