📄 nodereferencetable.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:05 PST 2006 --><TITLE>NodeReferenceTable (Java 3D 1.5.0)</TITLE><META NAME="keywords" CONTENT="javax.media.j3d.NodeReferenceTable class"><LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style"><SCRIPT type="text/javascript">function windowTitle(){ parent.document.title="NodeReferenceTable (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="../../../javax/media/j3d/NodeComponent.html" title="class in javax.media.j3d"><B>PREV CLASS</B></A> <A HREF="../../../javax/media/j3d/OrderedGroup.html" title="class in javax.media.j3d"><B>NEXT CLASS</B></A></FONT></TD><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../index.html?javax/media/j3d/NodeReferenceTable.html" target="_top"><B>FRAMES</B></A> <A HREF="NodeReferenceTable.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 | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <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">javax.media.j3d</FONT><BR>Class NodeReferenceTable</H2><PRE>java.lang.Object <IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>javax.media.j3d.NodeReferenceTable</B></PRE><HR><DL><DT><PRE>public class <B>NodeReferenceTable</B><DT>extends java.lang.Object</DL></PRE><P>The NodeReferenceTable object is used by a leaf node's <code>updateNodeReferences</code> method called by the <code>cloneTree</code> method. The NodeReferenceTable maps nodes from the original subgraph to the new nodes in the cloned subgraph. This information can then be used to update any cloned leaf node references to reference nodes in the cloned subgraph. <P> During a <code>cloneTree</code> call, after all nodes have been duplicated, each SceneGraphObject's <code>updateNodeReferences</code> method is called. This method takes a NodeReferenceTable object as a parameter. The SceneGraphObject's <code>updateNodeReferences</code> method can then use the <code>getNewObjectReference</code> method from this object to get updated references to objects that have been duplicated in the new cloneTree sub-graph. If a match is found, a reference to the corresponding SceneGraphObject in the newly cloned sub-graph is returned. If no corresponding reference is found, either a DanglingReferenceException is thrown by the <code>cloneTree</code> method or a reference to the original SceneGraphObject is returned depending on the value of the <code>allowDanglingReferences</code> parameter passed in the <code>cloneTree</code> call.<P><P><DL><DT><B>See Also:</B><DD><A HREF="../../../javax/media/j3d/SceneGraphObject.html#updateNodeReferences(javax.media.j3d.NodeReferenceTable)"><CODE>SceneGraphObject.updateNodeReferences(javax.media.j3d.NodeReferenceTable)</CODE></A>, <A HREF="../../../javax/media/j3d/Node.html#cloneTree()"><CODE>Node.cloneTree()</CODE></A>, <A HREF="../../../javax/media/j3d/DanglingReferenceException.html" title="class in javax.media.j3d"><CODE>DanglingReferenceException</CODE></A></DL><HR><P><!-- ======== CONSTRUCTOR SUMMARY ======== --><A NAME="constructor_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>Constructor Summary</B></FONT></TH></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD><CODE><B><A HREF="../../../javax/media/j3d/NodeReferenceTable.html#NodeReferenceTable()">NodeReferenceTable</A></B>()</CODE><BR> Constructs an empty NodeReferenceTable.</TD></TR></TABLE> <!-- ========== 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> <A HREF="../../../javax/media/j3d/SceneGraphObject.html" title="class in javax.media.j3d">SceneGraphObject</A></CODE></FONT></TD><TD><CODE><B><A HREF="../../../javax/media/j3d/NodeReferenceTable.html#getNewObjectReference(javax.media.j3d.SceneGraphObject)">getNewObjectReference</A></B>(<A HREF="../../../javax/media/j3d/SceneGraphObject.html" title="class in javax.media.j3d">SceneGraphObject</A> oldReference)</CODE><BR> This method is used in conjunction with the <code>cloneTree</code> method.</TD></TR></TABLE> <A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor"><TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD></TR></TABLE> <P><!-- ========= CONSTRUCTOR DETAIL ======== --><A NAME="constructor_detail"><!-- --></A><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2"><B>Constructor Detail</B></FONT></TH></TR></TABLE><A NAME="NodeReferenceTable()"><!-- --></A><H3>NodeReferenceTable</H3><PRE>public <B>NodeReferenceTable</B>()</PRE><DL><DD>Constructs an empty NodeReferenceTable.<P><DL><DT><B>Since:</B></DT> <DD>Java 3D 1.2</DD></DL></DL><!-- ============ METHOD DETAIL ========== --><A NAME="method_detail"><!-- --></A><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2"><B>Method Detail</B></FONT></TH></TR></TABLE><A NAME="getNewObjectReference(javax.media.j3d.SceneGraphObject)"><!-- --></A><H3>getNewObjectReference</H3><PRE>public final <A HREF="../../../javax/media/j3d/SceneGraphObject.html" title="class in javax.media.j3d">SceneGraphObject</A> <B>getNewObjectReference</B>(<A HREF="../../../javax/media/j3d/SceneGraphObject.html" title="class in javax.media.j3d">SceneGraphObject</A> oldReference)</PRE><DL><DD>This method is used in conjunction with the <code>cloneTree</code> method. It can be used by the <code>updateNodeReferences</code> method to see if a SceneGraphObject that is being referenced has been duplicated in the new cloneTree sub-graph. <P> A SceneGraphObject's <code>updateNodeReferences</code> method would use this method by calling it with the reference to the old (existed before the cloneTree operation) object. If the object has been duplicated in the cloneTree sub-graph, the corresponding object in the cloned sub-graph is returned. If no corresponding reference is found, either a DanglingReferenceException is thrown or a reference to the original SceneGraphObject is returned depending on the value of the <code>allowDanglingReferences</code> parameter passed in the <code>cloneTree</code> call.<P><DD><DL><DT><B>Parameters:</B><DD><CODE>oldReference</CODE> - the reference to the object in the original sub-graph.<DT><B>Returns:</B><DD>A reference to the corresponding object in the cloned sub-graph. If no corresponding object exists, either a DanglingReferenceException will be generated by the <code>cloneTree</code> method or a reference to the original object is returned depending on the value of the <code>allowDanglingReferences</code> parameter passed in the <code>cloneTree</code> call.<DT><B>See Also:</B><DD><A HREF="../../../javax/media/j3d/SceneGraphObject.html#updateNodeReferences(javax.media.j3d.NodeReferenceTable)"><CODE>SceneGraphObject.updateNodeReferences(javax.media.j3d.NodeReferenceTable)</CODE></A>, <A HREF="../../../javax/media/j3d/Node.html#cloneTree()"><CODE>Node.cloneTree()</CODE></A>, <A HREF="../../../javax/media/j3d/DanglingReferenceException.html" title="class in javax.media.j3d"><CODE>DanglingReferenceException</CODE></A></DL></DD></DL><!-- ========= END OF CLASS DATA ========= --><HR><!-- ======= START OF BOTTOM NAVBAR ====== --><A NAME="navbar_bottom"><!-- --></A><A HREF="#skip-navbar_bottom" 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_bottom_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="../../../javax/media/j3d/NodeComponent.html" title="class in javax.media.j3d"><B>PREV CLASS</B></A> <A HREF="../../../javax/media/j3d/OrderedGroup.html" title="class in javax.media.j3d"><B>NEXT CLASS</B></A></FONT></TD><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../index.html?javax/media/j3d/NodeReferenceTable.html" target="_top"><B>FRAMES</B></A> <A HREF="NodeReferenceTable.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 | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD></TR></TABLE><A NAME="skip-navbar_bottom"></A><!-- ======== END OF BOTTOM NAVBAR ======= --><HR><font size="-1">Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to <a href="../../../LICENSE-SPEC.html">license terms</a>.</BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -