pfGetTopoBoundary man page on IRIX

Man page or keyword search:  
man Server   31559 pages
apropos Keyword Search (all sections)
Output format
IRIX logo
[printable version]



pfTopo(3pf)	OpenGL Performer 3.2.2 libpf C Reference Pages	   pfTopo(3pf)

NAME
     pfNewTopo, pfGetTopoClassType, pfTopoDistanceTol, pfGetTopoDistanceTol,
     pfTopoSurface, pfGetTopoSurface, pfGetTopoSurfaceCount,
     pfGetTopoBoundary, pfGetTopoBoundaryCount, pfGetTopoSolidCount,
     pfGetTopoSolid, pfTopoAddSolid, pfTopoAddBoundary, pfTopoBuildTopology,
     pfTopoBuildSolids, pfGetTopoGlobalTopo, pfGetTopoNumTopos - Topology
     information of surfaces

FUNCTION SPECIFICATION
     #include <Performer/pf.h>

     pfTopo *	      pfNewTopo(void *arena);

     pfType *	      pfGetTopoClassType(void);

     void	      pfTopoDistanceTol(pfTopo* topo, pfReal tol,
			pfLengthUnits u );

     pfReal	      pfGetTopoDistanceTol(pfTopo* topo);

     void	      pfTopoSurface(pfTopo* topo, int i, pfParaSurface *sur );

     pfParaSurface*   pfGetTopoSurface(pfTopo* topo, int i );

     int	      pfGetTopoSurfaceCount(pfTopo* topo);

     pfBoundary*      pfGetTopoBoundary(pfTopo* topo, int i );

     int	      pfGetTopoBoundaryCount(pfTopo* topo);

     int	      pfGetTopoSolidCount(pfTopo* topo);

     pfSolid*	      pfGetTopoSolid(pfTopo* topo, int i );

     int	      pfTopoAddSolid(pfTopo* topo, pfSolid *solid);

     int	      pfTopoAddBoundary(pfTopo* topo, pfBoundary    *bnd );

     void	      pfTopoBuildTopology(pfTopo* topo);

     int	      pfTopoBuildSolids(pfTopo* topo);

     pfTopo*	      pfGetTopoGlobalTopo(int n);

     int	      pfGetTopoNumTopos(void);

PARENT CLASS FUNCTIONS
     The OpenGL Performer class pfTopo is derived from the parent class
     pfObject, so each of these member functions of class pfObject are also
     directly usable with objects of class pfTopo.  Casting an object of class
     pfTopo to an object of class pfObject is taken care of automatically.
     This is also true for casts to objects of ancestor classes of class

									Page 1

pfTopo(3pf)	OpenGL Performer 3.2.2 libpf C Reference Pages	   pfTopo(3pf)

     pfObject.

     void	   pfUserDataSlot(pfObject *obj, int slot, void *data);
     void	   pfUserData(pfObject *obj, void *data);
     void*	   pfGetUserDataSlot(pfObject *obj, int slot);
     void*	   pfGetUserData(pfObject *obj);
     int	   pfGetNumUserData(pfObject *obj);
     int	   pfGetNamedUserDataSlot(const char *name);
     const char*   pfGetUserDataSlotName(int slot);
     int	   pfGetNumNamedUserDataSlots(void);
     int	   pfDeleteGLHandle(pfObject *obj);

     Since the class pfObject is itself derived from the parent class
     pfMemory, objects of class pfTopo can also be used with these functions
     designed for objects of class pfMemory.

     pfType *	    pfGetType(const void *ptr);
     int	    pfIsOfType(const void *ptr, pfType *type);
     int	    pfIsExactType(const void *ptr, pfType *type);
     const char *   pfGetTypeName(const void *ptr);
     int	    pfRef(void *ptr);
     int	    pfUnref(void *ptr);
     int	    pfUnrefDelete(void *ptr);
     int	    pfUnrefGetRef(void *ptr);
     int	    pfGetRef(const void *ptr);
     int	    pfCopy(void *dst, void *src);
     int	    pfDelete(void *ptr);
     int	    pfIsFluxed(void *ptr);
     int	    pfCompare(const void *ptr1, const void *ptr2);
     void	    pfPrint(const void *ptr, uint which, uint verbose,
		      FILE *file);
     void *	    pfGetArena(void *ptr);

DESCRIPTION
     pfTopo holds the topology information of the surfaces. The basic topology
     information consists of the shared boundaries of any two surfaces. Such
     connectivity information can be used to avoid cracks at tessellation
     time, to find the shells (a set of connected surfaces) of a model, to
     allow better mesh optimizations because the meshes are larger when there
     are no cracks between adjacent surfaces.

     This class provides functions pfTopoBuildTopology and the utility
     function pfdTopoBuildTopologyTraverse to compute the connectivity
     information for any given set of surfaces (stored in surface).

     Another way  to invoke topology computation is through the tessellator.
     (See pfTessellateAction).

     If the connectivity information is already known and you don't want to
     invoke topology computation, you may choose to construct the topology
     yourself using the member function pfTopoAddBoundary.

									Page 2

pfTopo(3pf)	OpenGL Performer 3.2.2 libpf C Reference Pages	   pfTopo(3pf)

     pfNewTopo creates and returns a handle to a pfTopo.  arena specifies a
     malloc arena out of which the pfTopo is allocated or NULL for allocation
     off the process heap.  pfTopos can be deleted with pfDelete.

     pfGetTopoClassType returns the pfType* for the class pfTopo. the pfType*
     returned by pfGetTopoClassType is the same as the pfType* returned by
     invoking pfGetType on any instance of class pfTopo.  Because OpenGL
     Performer allows subclassing of built-in types, when decisions are made
     based on the type of an object, it is usually better to use pfIsOfType to
     test if an object is of a type derived from a Performer type rather than
     to test for strict equality of the pfType*'s.

     pfTopoSetDistanceTol sets the tolerance for determining wheter curves
     overlap or not at topology construction, and the member units which is
     the measure unit in the object space.

     pfGetTopoDistanceTol returns the tolerance which is used for determining
     whether curves overlap or not at topology construction and which can be
     set by pfTopoSetDistanceTol.

     pfGetTopoSurface returns the i'th element of the surface array.

     pfGetTopoSurfaceCount returns the number of surfaces.

     pfGetTopoBoundary returns the i'th element of the boudary list.

     pfGetTopoBoundaryCount returns the number of boundaries.

     pfGetTopoSolidCount returns the number of solids (see pfTopoBuildSolids.)

     pfGetTopoSolid returns the i'th solid (see pfTopoBuildSolids.)

     pfTopoAddSolid returns the index of solid in topo if successful and -1
     otherwise.

     pfTopoAddSurface adds a surface onto the surface list. Returns 0 if sur
     was already in the list.

     pfTopoAddBoundary adds a boundary onto the boundary list.

     pfTopoBuildTopology Given a list of surfaces (surface), computes the
     shared boundaries and junctions of these surfaces. The shared boundaries
     are put into boundary, and the junctions are put into junction.

     The previously existing boundaries and junctions, if any, are deleted.
     In the current implementation, the junctions, which can be computed from
     the boundaries, are not computed.	Also notice that the cache space for
     samplePoints is deallocated at the end of this function.

     It assumes that the surfaces have been added to the topology data
     structure (pfopoAddSurface) by the user.  If the surface list is empty,
     the method	 prints a warning message and returns.

									Page 3

pfTopo(3pf)	OpenGL Performer 3.2.2 libpf C Reference Pages	   pfTopo(3pf)

     pfTopoBuildSolids Creates solids (pfSolid) from the list of all surfaces
     in this topology, and return the number of solids that have been created.
     Each solid is a list of connected surfaces.  These solids can be accessed
     using pfGetTopoSolidCount and pfGetTopoSolid.

     pfGetTopoGlobalTopo returns a pointer to the n'th pfTopo in the global
     topology list.

     pfGetTopoNumTopos returns the number of pfTopos stored in the global
     topology list.

SEE ALSO
     pfSolid, pfBoundary, pfJunction, pfTessellateAction,
     pfTessParaSurfaceAction, pfdTopoBuildTopologyTraverse

									Page 4

[top]

List of man pages available for IRIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net