HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GU_Spring.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  */
7 
8 #ifndef __GU_Spring_h__
9 #define __GU_Spring_h__
10 
11 #include "GU_API.h"
12 #include <UT/UT_ValArray.h>
13 #include <GEO/GEO_Detail.h>
14 #include "GU_Topology.h"
15 
16 class GU_SpringEdge;
17 
19 {
20 public:
21 
22  GU_Spring (void);
23  virtual ~GU_Spring (void);
24 
25  void setupEdges (GU_Detail *gdp, GA_PrimitiveGroup *group = 0,
26  int force = 0);
27  void computeEdges (GU_Detail *gdp, int behavior,
28  float tension,
29  const GA_ROAttributeRef &tensionoffset,
30  const GA_ROAttributeRef &veloffset,
31  float timeinc);
32  void getForce (UT_Vector3& force, GA_Offset ptoff, GA_Index ptind,
33  float springk,
34  const GA_ROHandleF &springkattrib);
35 
36 private:
37 
40 
41  void cleanEdges (void);
42  void buildEdges (GEO_Primitive *prim);
43 
44 };
45 
46 #endif
GA_API const UT_StringHolder tension
GA_API const UT_StringHolder springk
GA_Size GA_Offset
Definition: GA_Types.h:617
This class provides a way to manage a reference to an attribute permitting Read-Only access...
GT_API const UT_StringHolder topology
#define GU_API
Definition: GU_API.h:12
GA_Size GA_Index
Define the strictness of GA_Offset/GA_Index.
Definition: GA_Types.h:611