X3DObject.FindChild

廃止

v9.0 (2011) -- 「X3DObject.FindChild2」を参照

説明

検索基準のセットに一致するX3DObjectの、最初の x3DObject子オブジェクトを検索します。デフォルトでは、検索は再帰的に行われます。関数は、指定されているすべての基準(名前、タイプ、ファミリ)に一致するオブジェクトを戻します。この関数は通常、たとえばタイプや名前が分かっているオブジェクトを取得する場合に使用します。

スクリプト 構文

oReturn = X3DObject.FindChild( [Name], [Type], [Family], [Recursive] );

戻り値

X3DObject

パラメータ

パラメータ タイプ 詳細
Name StringまたはCollectionItem 名前表現またはCollectionItem。表現にはワイルドカード文字を含めることもできます。名前が必要ない場合は空にします。
String siTypeで定義されているオブジェクトのタイプ。タイプを使用しない場合は空の文字列になります。タイプには、特定の x3DObject タイプ(siModelType、si3DObjectType など)とプリミティブタイプ(siPolyMeshType、siSrfMeshPrimType など)があります。プリミティブタイプを指定した場合は、このタイプのプリミティブが定義されている子オブジェクトのみが関数の対象になります。有効なタイプを以下に示します。

指定可能な値:

説明:

si3DObjectType 3D Object タイプ
siArcPrimType Implicit Arc Primitive タイプ
siAttractorCtrlType Attractor Control Object タイプ(電気力)
siCameraPrimType Camera Primitive タイプ
siCameraRootPrimType Camera Root primitive タイプ
siChainBonePrimType Chain Bone Primitive タイプ
siChainEffPrimType Chain End Effector Primitive タイプ
siChainRootPrimType Chain Root Primitive タイプ
siCirclePrimType Implicit Circle Primitive タイプ
siCloudPrimType Cloud Primitive タイプ
siConePrimType Cone Primitive タイプ
siCrvListAggregatePrimType NURBS Curve List Aggregate Primitive タイプ
siCrvListPrimType NURBS Curve List Primitive タイプ
siCubePrimType Cube Primitive タイプ
siCylinderPrimType Cylinder Primitive タイプ
siDiscPrimType Disc Primitive タイプ
siDodecahedronPrimType Dodecahedron Primitive タイプ
siDragCtrlPrimType Drag Control Primitive タイプ
siEddyCtrlPrimType Eddy Control Primitive タイプ
siFanType Fan Force Object タイプ
siFurPrimType Fur Primitive タイプ
siGeoShaderPrimType GeoShader Primitive タイプ
siGravityCtrlType Gravity Force Control Object タイプ
siGridPrimType Grid Primitive タイプ
siIcosahedronPrimType Icosahedron Primitive タイプ
siLatticePrimType Lattice Primitive タイプ
siLightPrimType Light Primitive タイプ
siModelNullPrimType Model Null Primitive タイプ
siModelType 3D Model タイプ
siNullPrimType Null Primitive タイプ
siOctahedronPrimType Octahedron Primitive タイプ
siPolyMeshType Polygon Meshタイプ
siSpherePrimType Sphere Primitive タイプ
siSpiralPrimType Implicit Spiral Primitive タイプ
siSpotInterestPrimType Spot Interest Primitive タイプ
siSpotRootPrimType Spot Root Primitive タイプ
siSquarePrimType Implicit Square Primitive タイプ
siSrfMeshPrimType NURBS Surface Mesh Primitive タイプ
siTetrahedronPrimType Tetrahedron Primitive タイプ
siTorusPrimType Torus Primitive タイプ
siTurbulenceCtrlPrimType Turbulence Control Primitive タイプ
siVolumeDeformType Volume Deform タイプ(インプリシット球のボリューム)
siVortexCtrlType Vortex Control Object タイプ(磁力)
siWaveCtrlType Wave Control Object タイプ
siWindType Wind Force Object タイプ
Family siFamilyまたは siFamilyエレメントのArray siFamilyで定義されているファミリの配列、必要ない場合は空の配列。ファミリを使用して検索を絞り込みます。配列には、X3DObject ファミリ(si3DObjectFamilyなど)やプリミティブファミリ(siNurbsSurfaceMeshFamily、siNullPrimitiveFamilyなど)があります。指定されたファミリに一致する子オブジェクトだけが処理されます。プリミティブファミリを指定した場合は、そのファミリのいずれかに属するプリミティブが定義されているオブジェクトのみが対象になります。有効なファミリを以下に示します。

指定可能な値:

説明:

si3DObjectFamily 3D Object ファミリ
siCameraFamily Camera ファミリ
siChainElementFamily Chain Element ファミリ
siControlObjectFamily Control Object ファミリ
siCurveFamily Curve Geometry ファミリ
siGeometryFamily Geometry ファミリ
siGeometryShaderFamily Geometry Shader ファミリ
siImplicitGeometryFamily Implicit Geometry ファミリ
siLatticeFamily Lattice ファミリ
siLightPrimitiveFamily Light Primitive ファミリ
siMeshFamily Mesh Geometry ファミリ
siNullPrimitiveFamily Null Primitive ファミリ
siNurbsCurveListFamily Nurbs CurveList Geometry ファミリ
siNurbsSurfaceMeshFamily Nurbs Surface Mesh Geometry ファミリ
siSurfaceCurveFamily Surface Curve Geometry ファミリ
siSurfaceFamily Surface Geometry ファミリ
Recursive Boolean True の場合は、再帰的に検索します。False の場合は、直接の子について検索します。

デフォルト値: True

VBScript の例

NewScene , false
set oRoot = Application.ActiveProject.ActiveScene.Root
oRoot.AddGeometry "Sphere", "MeshSurface", "mySphere"
oRoot.AddGeometry "Cone", "MeshSurface", "myCone"
oRoot.AddGeometry "Cone", "MeshSurface", "anotherCone" 
oRoot.AddGeometry "Cube", "NurbsSurface", "myCube"
Application.LogMessage "** 1: Find the object whose name starts with 'Camera' **"
set obj = oRoot.FindChild( "Camera*" )
Application.LogMessage "Found child: " & obj.Name 
Application.LogMessage "** 2: Find an object of type siLightPrimType **" 
set obj = oRoot.FindChild( "", siLightPrimType )
Application.LogMessage "Found child: " & obj.Name 
Application.LogMessage "** 3: Find an object that belongs to siMeshFamily family **"
set obj = oRoot.FindChild( , , Array(siMeshFamily) )
Application.LogMessage "Found child: " & obj.Name 
Application.LogMessage "** 4: Find the object whose name start with 'an' and belongs to siMeshFamily family **"
set obj = oRoot.FindChild("an*",,Array( siMeshFamily ))
Application.LogMessage "Found child: " & obj.Name 
' Expected results:
'INFO : ** 1: Find the object whose name starts with 'Camera' **
'INFO : Found child: Camera_Root
'INFO : ** 2: Find an object of type siLightPrimType **
'INFO : Found child: light
'INFO : ** 3: Find an object that belongs to siMeshFamily family **
'INFO : Found child: mySphere
'INFO : ** 4: Find the object whose name start with 'an' and belongs to siMeshFamily family **
'INFO : Found child: anotherCone