本文整理了Java中com.ardor3d.scenegraph.Node.getNumberOfChildren()
方法的一些代码示例,展示了Node.getNumberOfChildren()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Node.getNumberOfChildren()
方法的具体详情如下:
包路径:com.ardor3d.scenegraph.Node
类名称:Node
方法名:getNumberOfChildren
[英]getNumberOfChildren
returns the number of children this node maintains.
[中]
代码示例来源:origin: Renanse/Ardor3D
public int getChildCount(final Object parent) {
if (parent instanceof UIFrame) {
return 1;
}
if (parent instanceof Node) {
final Node parentNode = (Node) parent;
return parentNode.getNumberOfChildren();
}
return 0;
}
代码示例来源:origin: com.ardor3d/ardor3d-core
/**
*
* <code>detachAllChildren</code> removes all children attached to this node.
*/
public void detachAllChildren() {
for (int i = getNumberOfChildren() - 1; i >= 0; i--) {
detachChildAt(i);
}
logger.fine("All children removed.");
}
代码示例来源:origin: Renanse/Ardor3D
/**
*
* <code>detachAllChildren</code> removes all children attached to this node.
*/
public void detachAllChildren() {
for (int i = getNumberOfChildren() - 1; i >= 0; i--) {
detachChildAt(i);
}
logger.fine("All children removed.");
}
代码示例来源:origin: Renanse/Ardor3D
public static void trimEmptyBranches(final Spatial spatial) {
if (spatial instanceof Node) {
final Node node = (Node) spatial;
for (int i = node.getNumberOfChildren(); --i >= 0;) {
trimEmptyBranches(node.getChild(i));
}
if (node.getNumberOfChildren() <= 0) {
spatial.removeFromParent();
}
}
}
代码示例来源:origin: com.ardor3d/ardor3d-core
public static void trimEmptyBranches(final Spatial spatial) {
if (spatial instanceof Node) {
final Node node = (Node) spatial;
for (int i = node.getNumberOfChildren(); --i >= 0;) {
trimEmptyBranches(node.getChild(i));
}
if (node.getNumberOfChildren() <= 0) {
spatial.removeFromParent();
}
}
}
}
代码示例来源:origin: com.ardor3d/ardor3d-core
@Override
public void updateWorldTransform(final boolean recurse) {
super.updateWorldTransform(recurse);
if (recurse) {
for (int i = getNumberOfChildren() - 1; i >= 0; i--) {
_children.get(i).updateWorldTransform(true);
}
}
}
代码示例来源:origin: com.ardor3d/ardor3d-core
@Override
protected void propagateDirtyDown(final EnumSet<DirtyType> dirtyTypes) {
super.propagateDirtyDown(dirtyTypes);
for (int i = getNumberOfChildren() - 1; i >= 0; i--) {
final Spatial child = _children.get(i);
child.propagateDirtyDown(dirtyTypes);
}
}
代码示例来源:origin: com.ardor3d/ardor3d-core
@Override
public void read(final InputCapsule capsule) throws IOException {
super.read(capsule);
final List<Spatial> cList = capsule.readSavableList("children", null);
_children.clear();
if (cList != null) {
_children.addAll(cList);
}
// go through children and set parent to this node
for (int i = getNumberOfChildren() - 1; i >= 0; i--) {
final Spatial child = _children.get(i);
child._parent = this;
}
}
}
代码示例来源:origin: Renanse/Ardor3D
@Override
public void updateWorldTransform(final boolean recurse) {
super.updateWorldTransform(recurse);
if (recurse) {
for (int i = getNumberOfChildren() - 1; i >= 0; i--) {
_children.get(i).updateWorldTransform(true);
}
}
}
代码示例来源:origin: Renanse/Ardor3D
@Override
public void read(final InputCapsule capsule) throws IOException {
super.read(capsule);
final List<Spatial> cList = capsule.readSavableList("children", null);
_children.clear();
if (cList != null) {
_children.addAll(cList);
}
// go through children and set parent to this node
for (int i = getNumberOfChildren() - 1; i >= 0; i--) {
final Spatial child = _children.get(i);
child._parent = this;
}
}
}
代码示例来源:origin: com.ardor3d/ardor3d-core
@Override
protected void updateWorldRenderStates(final boolean recurse, final RenderState.StateStack stack) {
super.updateWorldRenderStates(recurse, stack);
if (recurse) {
for (int i = getNumberOfChildren() - 1; i >= 0; i--) {
_children.get(i).updateWorldRenderStates(true, stack);
}
}
}
代码示例来源:origin: Renanse/Ardor3D
@Override
protected void propagateDirtyDown(final EnumSet<DirtyType> dirtyTypes) {
super.propagateDirtyDown(dirtyTypes);
for (int i = getNumberOfChildren() - 1; i >= 0; i--) {
final Spatial child = _children.get(i);
child.propagateDirtyDown(dirtyTypes);
}
}
代码示例来源:origin: Renanse/Ardor3D
@Override
protected void updateWorldRenderStates(final boolean recurse, final RenderState.StateStack stack) {
super.updateWorldRenderStates(recurse, stack);
if (recurse) {
for (int i = getNumberOfChildren() - 1; i >= 0; i--) {
_children.get(i).updateWorldRenderStates(true, stack);
}
}
}
代码示例来源:origin: com.ardor3d/ardor3d-core
@Override
protected void updateChildren(final double time) {
for (int i = getNumberOfChildren() - 1; i >= 0; i--) {
final Spatial pkChild = getChild(i);
if (pkChild != null) {
pkChild.updateGeometricState(time, false);
}
}
}
代码示例来源:origin: Renanse/Ardor3D
@Override
public void sortLights() {
for (int i = getNumberOfChildren() - 1; i >= 0; i--) {
final Spatial pkChild = getChild(i);
if (pkChild != null) {
pkChild.sortLights();
}
}
}
代码示例来源:origin: com.ardor3d/ardor3d-core
@Override
public void sortLights() {
for (int i = getNumberOfChildren() - 1; i >= 0; i--) {
final Spatial pkChild = getChild(i);
if (pkChild != null) {
pkChild.sortLights();
}
}
}
代码示例来源:origin: Renanse/Ardor3D
@Override
protected void updateChildren(final double time) {
for (int i = getNumberOfChildren() - 1; i >= 0; i--) {
final Spatial pkChild = getChild(i);
if (pkChild != null) {
pkChild.updateGeometricState(time, false);
}
}
}
代码示例来源:origin: com.ardor3d/ardor3d-core
private static Spatial makeCopy(final Spatial source, final Spatial parent, final CopyLogic logic) {
final AtomicBoolean recurse = new AtomicBoolean();
final Spatial result = logic.copy(source, recurse);
if (recurse.get() && source instanceof Node && result instanceof Node
&& ((Node) source).getNumberOfChildren() > 0) {
for (final Spatial child : ((Node) source).getChildren()) {
final Spatial copy = makeCopy(child, result, logic);
if (copy != null) {
((Node) result).attachChild(copy);
}
}
}
return result;
}
代码示例来源:origin: Renanse/Ardor3D
private static Spatial makeCopy(final Spatial source, final Spatial parent, final CopyLogic logic) {
final AtomicBoolean recurse = new AtomicBoolean();
final Spatial result = logic.copy(source, recurse);
if (recurse.get() && source instanceof Node && result instanceof Node
&& ((Node) source).getNumberOfChildren() > 0) {
for (final Spatial child : ((Node) source).getChildren()) {
final Spatial copy = makeCopy(child, result, logic);
if (copy != null) {
((Node) result).attachChild(copy);
}
}
}
return result;
}
代码示例来源:origin: com.ardor3d/ardor3d-core
/**
* removes all collision trees associated with a Spatial object.
*
* @param object
* the spatial to remove all collision trees from.
*/
public void removeCollisionTree(final Spatial object) {
if (object instanceof Node) {
final Node n = (Node) object;
for (int i = n.getNumberOfChildren() - 1; i >= 0; i--) {
removeCollisionTree(n.getChild(i));
}
} else if (object instanceof Mesh) {
removeCollisionTree((Mesh) object);
}
}
内容来源于网络,如有侵权,请联系作者删除!