![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
![]()
|
IndexE3d_SceneDefault E3d_SceneAllocate E3d_SceneAddNodeHrc E3d_SceneRemoveNodeHrc E3d_SceneMaterialClone E3d_SceneNodeHrcRead2DTextures E3d_SceneGetSingleSelection E3d_SceneGetNodes E3d_SceneGetSelectedNodes E3d_SceneGetGeometries E3d_SceneGetSelectedGeometries E3d_SceneWalkGeometries E3d_SceneCollectTransformPoints E3d_SceneCollectNodeNames E3d_SceneAppendAnimation E3d_SceneAddAnimation E3d_SceneRemoveAnimation E3d_SceneDefaultInitialize a 3D SceneSyntax void E3d_SceneDefault(E3dScene* LScene)Argument E3dScene* LScene Pointer to the Scene structureDescription This function initializes the given E3dScene structure. Return value None. See also E3d_SceneAllocate, E3d_SceneFree E3d_SceneAllocateAllocate and initialize a 3D SceneSyntax E3dScene* E3d_SceneAllocate(char* LName)Argument char* LName The name of the new SceneDescription This function allocates memory for and initializes an E3dScene structure. Return value Pointer to the allocated E3dScene structure or NULL in case of an error. See also E3d_SceneFree E3d_SceneAddNodeHrcAdd a Node-hierarchy to a SceneSyntax EBool E3d_SceneAddNodeHrc(E3dScene* LScene, E3dNode* LRootNode)Arguments E3dScene* LScene Pointer to the Scene structure E3dNode* LRootNode Pointer to the Root node of the hierarchyDescription Checks if the given hierarchy is in the given Scene. If not, adds it to the array: Scene->RootModels. Return value None. See also E3d_SceneRemoveNodeHrc E3d_SceneRemoveNodeHrcRemove Node-hierarchy from a SceneSyntax EBool E3d_SceneRemoveNodeHrc(E3dScene* LScene, E3dNode* LRootNode)Arguments E3dScene* LScene Pointer to the Scene structure E3dNode* LRootNode Pointer to the Root of the hierarchyDescription Checks if the given Hierarchy is in the Scene (it's in RootModels array of the Scene). If it is, it removes it from that array. Return value None. See also E3d_SceneAddNodeHrc E3d_SceneMaterialCloneClone a MaterialSyntax E3dMaterial* E3d_SceneMaterialClone(E3dScene* LScene, E3dMaterial* LMaterial)Arguments E3dMaterial* LMaterial The Material to clone E3dScene* LScene Scene for unique Material namesDescription Creates a duplicate of the given Material. If the LScene argument is not NULL, this function makes sure that the name of the new Material will be unique among the Materials in that Scene. For example, if the name of LMaterial is "Iron" and LScene already has a Material called "Iron", the new Material will be called "Iron-1". Return value Pointer to the new Material, or NULL in case of an error. See also E3d_MaterialFree, E3d_MaterialDefault E3d_SceneNodeHrcRead2DTextures(Re)read 2DTexture images for a Model hierarchySyntax void E3d_SceneNodeHrcRead2DTextures(E3dScene* LScene, E3dNode* LNode, char* LPath, EBool LForceReRead, EBool LSetUpForDisplay)Argument LRootModel Pointer to the Root of the hierarchy EBool LForceReRead Re-read images if they are already loadedDescription This function parses through the given hierarchy and (re)reads the texture images for all the 2DTextures on the Geometries. Return value None. E3d_SceneGetSingleSelectionFind out what is selected in the given Scene and return itSyntax int E3d_SceneGetSingleSelection(E3dScene* LScene, void* LSelectedItem, int LTarget)Arguments LModelsRet Pointer to the Scene structure void* LSelectedItem Selected Item to be returnedDescription This function parses the hierarchies in the given Scene and gets the first selected "Item". This can be anything from a Model, Geometry, PolyGroup, Polygon etc to an Edge or a Vertex. Return value The type of Item selected. E.g.: E3dITEM_POLYGROUP E3d_SceneGetNodesCollect selected Nodes in a SceneSyntax int E3d_SceneGetNodes(E3dScene* LScene, E3dNode*** LNodesRet)Arguments E3dScene* LScene Pointer to the Scene structure E3dNode*** LNodesRet Pointer to the array of Node pointers to be returnedDescription This function parses the hierarchies in the given Scene and collects all the Nodes into a dynamically allocated array of pointers. This array has to be freed by the application after use. Example: LNumOfNodes = E3d_SceneGetNodes(E3d_Scene, &LNodes); Where LNodes is the type of E3dNode** Example LNumOfNodes = E3d_SceneGetNodes(E3d_Scene, &LNodes); Where LNodes is the type of E3dNode** Return value The number of E3dNode pointers in the array (the nuber of Nodes found). E3d_SceneGetSelectedNodesCollect selected Nodes in a SceneSyntax int E3d_SceneGetSelectedNodes(E3dScene* LScene, E3dNode*** LNodesRet, unsigned int LSelectionTypes)Arguments E3dScene* LScene Pointer to the Scene structure E3dNode*** LNodesRet Pointer to the array of Node pointers to be returned LBranchesAsOne Selected branches are returned as single selectionDescription This function parses the hierarchies in the given Scene and collects the selected Nodes into a dynamically allocated array of pointers. This array has to be freed by the application after use. Example: LNumOfNodes = E3d_SceneGetSelectedNodes(E3d_Scene, &LNodes, TRUE); Where LNodes is the type of E3dNode** Example LNumOfNodes = E3d_SceneGetSelectedNodes(E3d_Scene, &LNodes, TRUE); Where LNodes is the type of E3dNode** Return value The number of E3dNode pointers in the array (the nuber of selected Nodes found). E3d_SceneGetGeometriesCollect Geometries in a SceneSyntax int E3d_SceneGetGeometries(E3dScene* LScene, E3dGeometry*** LGeometriesRet, int LGeoType, unsigned int LFlags)Arguments E3dScene* LScene Pointer to the Scene structure E3dGeometry*** LGeometriesRet Pointer to the array of Geometry pointers to be returned LType Type of the Geometry to look for, or E3dGEO_ANY unsigned int LFlags Flags, describing the operationDescription This function parses the hierarchies in the given Scene and collects the Geometries into a dynamically allocated array of pointers. This array has to be freed by the application after use. This example collects all selected Meshes: LNumOfGeometries = E3d_SceneGetGeometries(E3d_Scene, &LGeometries, E3dITEM_MESH, E3dSELECTED); Where LGeometries is the type of E3dGeometry** This example collects all the Geometries, regardless of their type, or wheter they are selected or not: LNumOfGeometries = E3d_SceneGetGeometries(E3d_Scene, &LGeometries, E3dITEM_ANY, E3dSELECTED|E3dUNSELECTED); Return value The number of E3dGeometry pointers in the array (the number of matching Geometries found). E3d_SceneGetSelectedGeometriesCollect selected Geometries in a SceneSyntax int E3d_SceneGetSelectedGeometries(E3dScene* LScene, void* LGeometriesRet, int LGeoType)Arguments E3dScene* LScene Pointer to the Scene structure void* LGeometriesRet Pointer to the array of Model pointers to be returnedDescription This function parses the hierarchies in the given Scene and collects the selected Geometries into a dynamically allocated array of pointers. This array has to be freed by the application after use. This example collects all the selected Meshes: LNumOfGeometries = E3d_SceneGetSelectedGeometries(E3d_Scene, &LGeometries, E3dGEO_MESH); Where LGeometries is the type of E3dGeometry** This example collects all the selected Geometries, regardless of their type: LNumOfGeometries = E3d_SceneGetSelectedGeometries(E3d_Scene, &LGeometries, E3dGEO_ANY); Return value The number of E3dGeometry pointers in the array (the nuber of selected Geometries found). E3d_SceneWalkGeometriesWalk through the Geometries of Models in a Scene and call a functionSyntax void E3d_SceneWalkGeometries(E3dScene* LScene, void (*LFunct)(E3dModel*, E3dGeometry*))Arguments E3dScene* LScene The Scene LFunct The function to call with the current Model and GeometryDescription Walk through the Geometries of Models in a Scene and calls LFunct. Return value None. E3d_SceneCollectTransformPointsCollect points of GeometriesSyntax E3dShapeSnapshot* E3d_SceneCollectTransformPoints(E3dScene* LScene, unsigned int* LNumOfShapeSnapshotsRet, EBool LAllPoints)Arguments E3dScene* LScene The Scene unsigned int* LNumOfShapeSnapshotsRet Number of ShapeSnapshots collected EBool LAllPoints Return all points, or just tagged onesDescription Collects points from the Scene into a list of 'ShapeSnapshots' for shape transforming. Return value Pointer to the E3dShapeSnapshot array, or NULL E3d_SceneCollectNodeNamesCollect the names of all Models in a Scene into an arraySyntax int E3d_SceneCollectNodeNames(E3dScene* LScene, char*** LNamesRet)Arguments E3dScene* LScene Pointer to the Scene structure char*** LNamesRet Pointer to the array of strings for the return valueDescription This function parses the hierarchies in the given Scene and collects the names of all Models into a dynamically allocated array of strings. Return value The number of items in the array (the nuber of Models found). E3d_SceneAppendAnimationAppend an Animation to a SceneSyntax EBool E3d_SceneAppendAnimation(E3dScene* LScene, E3dAnimation* LAnimation)Arguments E3dScene* LScene Pointer to the Scene structure E3dAnimation* LAnimation Pointer to the new Animation structureDescription Checks if the given Animation is in the given Scene. If not, adds it to the array: Scene->Animations. Return value None. See also E3d_SceneRemoveAnimation E3d_SceneAddAnimationAllocate and append an Animation to a SceneSyntax E3dAnimation* E3d_SceneAddAnimation(E3dScene* LScene, E3dAnimationClass* LClass)Arguments E3dScene* LScene Pointer to the Scene structure LAnimation Pointer to the new Animation structureDescription Allocate an Animation of the given Class, initialize it and add it to the array: Scene->Animations. Return value None. See also E3d_SceneRemoveAnimation E3d_SceneRemoveAnimationRemove an Animation from a SceneSyntax void E3d_SceneRemoveAnimation(E3dScene* LScene, E3dAnimation* LAnimation)Arguments E3dScene* LScene Pointer to the Scene structure E3dAnimation* LAnimation Pointer to the Root of the hierarchyDescription Checks if the given hierarchy is in the Scene (it's in Animations array of the Scene). If it is, it removes it from that array. Return value None. See also E3d_SceneAddAnimationHrc |