📄 kbcubicsplinesegment.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><!--NewPage--><HTML><HEAD><!-- Generated by javadoc (build 1.5.0_06) on Wed Dec 13 16:20:11 PST 2006 --><TITLE>KBCubicSplineSegment (Java 3D 1.5.0)</TITLE><META NAME="keywords" CONTENT="com.sun.j3d.utils.behaviors.interpolators.KBCubicSplineSegment class"><LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../stylesheet.css" TITLE="Style"><SCRIPT type="text/javascript">function windowTitle(){ parent.document.title="KBCubicSplineSegment (Java 3D 1.5.0)";}</SCRIPT><NOSCRIPT></NOSCRIPT></HEAD><BODY BGCOLOR="white" onload="windowTitle();"><!-- ========= START OF TOP NAVBAR ======= --><A NAME="navbar_top"><!-- --></A><A HREF="#skip-navbar_top" title="Skip navigation links"></A><TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""><TR><TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"><A NAME="navbar_top_firstrow"><!-- --></A><TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> <TR ALIGN="center" VALIGN="top"> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> </TR></TABLE></TD><TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM></EM></TD></TR><TR><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../../../com/sun/j3d/utils/behaviors/interpolators/KBCubicSplineCurve.html" title="class in com.sun.j3d.utils.behaviors.interpolators"><B>PREV CLASS</B></A> <A HREF="../../../../../../com/sun/j3d/utils/behaviors/interpolators/KBKeyFrame.html" title="class in com.sun.j3d.utils.behaviors.interpolators"><B>NEXT CLASS</B></A></FONT></TD><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../../../index.html?com/sun/j3d/utils/behaviors/interpolators/KBCubicSplineSegment.html" target="_top"><B>FRAMES</B></A> <A HREF="KBCubicSplineSegment.html" target="_top"><B>NO FRAMES</B></A> <SCRIPT type="text/javascript"> <!-- if(window==top) { document.writeln('<A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>'); } //--></SCRIPT><NOSCRIPT> <A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A></NOSCRIPT></FONT></TD></TR><TR><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> SUMMARY: NESTED | FIELD | CONSTR | <A HREF="#method_summary">METHOD</A></FONT></TD><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">DETAIL: FIELD | CONSTR | <A HREF="#method_detail">METHOD</A></FONT></TD></TR></TABLE><A NAME="skip-navbar_top"></A><!-- ========= END OF TOP NAVBAR ========= --><HR><!-- ======== START OF CLASS DATA ======== --><H2><FONT SIZE="-1">com.sun.j3d.utils.behaviors.interpolators</FONT><BR>Class KBCubicSplineSegment</H2><PRE>java.lang.Object <IMG SRC="../../../../../../resources/inherit.gif" ALT="extended by "><B>com.sun.j3d.utils.behaviors.interpolators.KBCubicSplineSegment</B></PRE><HR><DL><DT><PRE>public class <B>KBCubicSplineSegment</B><DT>extends java.lang.Object</DL></PRE><P>The KBCubicSplineSegment class creates the representation of a Kochanek-Bartel's (also known as the TCB or Tension-Continuity-Bias Spline. This class takes 4 key frames as its input (using KBKeyFrame). If interpolating between the i<sup>th</sup> and (i+1)<sup>th</sup> key frame then the four key frames that need to be specified are the (i-1)<sup>th</sup>, i<sup>th</sup>, (i+1)<sup>th</sup> and (i+2)<sup>th</sup> keyframes in order. The KBCubicSegmentClass then pre-computes the hermite interpolation basis coefficients if the (i+1)<sup>th</sup> frame has the linear flag set to zero. These are used to calculate the interpolated position, scale and quaternions when they requested by the user using the getInterpolated* methods. If the the (i+1)<sup>th</sup> frame's linear flag is set to 1 then the class uses linear interpolation to calculate the interpolated position, scale, heading pitch and bank it returns through the getInterpolated* methods.<P><P><DL><DT><B>Since:</B></DT> <DD>Java3D 1.2</DD></DL><HR><P><!-- ========== METHOD SUMMARY =========== --><A NAME="method_summary"><!-- --></A><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"><B>Method Summary</B></FONT></TH></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> float</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../../../com/sun/j3d/utils/behaviors/interpolators/KBCubicSplineSegment.html#computeLength(float)">computeLength</A></B>(float u)</CODE><BR> Computes the length of the curve at a given point between key frames.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> float</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../../../com/sun/j3d/utils/behaviors/interpolators/KBCubicSplineSegment.html#getInterpolatedBank(float)">getInterpolatedBank</A></B>(float u)</CODE><BR> Computes the interpolated bank along the curve at a given point between key frames and returns the interpolated value as a float This routine uses linear interpolation if the (i+1)<sup>th</sup> key frame's linear value is equal to 1.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> float</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../../../com/sun/j3d/utils/behaviors/interpolators/KBCubicSplineSegment.html#getInterpolatedHeading(float)">getInterpolatedHeading</A></B>(float u)</CODE><BR> Computes the interpolated heading along the curve at a given point between key frames and returns the interpolated value as a float This routine uses linear interpolation if the (i+1)<sup>th</sup> key frame's linear value is equal to 1.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> float</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../../../com/sun/j3d/utils/behaviors/interpolators/KBCubicSplineSegment.html#getInterpolatedPitch(float)">getInterpolatedPitch</A></B>(float u)</CODE><BR> Computes the interpolated pitch along the curve at a given point between key frames and returns the interpolated value as a float This routine uses linear interpolation if the (i+1)<sup>th</sup> key frame's linear value is equal to 1.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> void</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../../../com/sun/j3d/utils/behaviors/interpolators/KBCubicSplineSegment.html#getInterpolatedPosition(float, javax.vecmath.Point3f)">getInterpolatedPosition</A></B>(float u, <A HREF="../../../../../../javax/vecmath/Point3f.html" title="class in javax.vecmath">Point3f</A> newPos)</CODE><BR> Computes the interpolated position along the curve at a given point between key frames and returns a Point3f with the interpolated x, y, and z scale components.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> void</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../../../com/sun/j3d/utils/behaviors/interpolators/KBCubicSplineSegment.html#getInterpolatedPositionVector(float, javax.vecmath.Vector3f)">getInterpolatedPositionVector</A></B>(float u, <A HREF="../../../../../../javax/vecmath/Vector3f.html" title="class in javax.vecmath">Vector3f</A> newPos)</CODE><BR> Computes the interpolated position along the curve at a given point between key frames and returns a Vector3f with the interpolated x, y, and z scale components.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> void</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../../../com/sun/j3d/utils/behaviors/interpolators/KBCubicSplineSegment.html#getInterpolatedScale(float, javax.vecmath.Point3f)">getInterpolatedScale</A></B>(float u, <A HREF="../../../../../../javax/vecmath/Point3f.html" title="class in javax.vecmath">Point3f</A> newScale)</CODE><BR> Computes the interpolated scale along the curve at a given point between key frames and returns a Point3f with the interpolated x, y, and z scale components.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> float</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../../../com/sun/j3d/utils/behaviors/interpolators/KBCubicSplineSegment.html#getInterpolatedValue(float)">getInterpolatedValue</A></B>(float u)</CODE><BR> Computes the ratio of the length of the spline from the i<sup>th</sup> key frame to the position specified by u to the length of the entire spline segment from the i<sup>th</sup> key frame to the (i+1) <sup>th</sup> key frame.</TD></TR></TABLE> <A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -