Panda3D
cLwoPoints.h
Go to the documentation of this file.
1 /**
2  * PANDA 3D SOFTWARE
3  * Copyright (c) Carnegie Mellon University. All rights reserved.
4  *
5  * All use of this software is subject to the terms of the revised BSD
6  * license. You should have received a copy of this license along
7  * with this source code in a file named "LICENSE."
8  *
9  * @file cLwoPoints.h
10  * @author drose
11  * @date 2001-04-25
12  */
13 
14 #ifndef CLWOPOINTS_H
15 #define CLWOPOINTS_H
16 
17 #include "pandatoolbase.h"
18 
19 #include "lwoPoints.h"
20 #include "eggVertexPool.h"
21 #include "pointerTo.h"
22 
23 #include "pmap.h"
24 
25 class LwoToEggConverter;
26 class LwoVertexMap;
27 class CLwoLayer;
28 
29 /**
30  * This class is a wrapper around LwoPoints and stores additional information
31  * useful during the conversion-to-egg process.
32  */
33 class CLwoPoints {
34 public:
35  INLINE CLwoPoints(LwoToEggConverter *converter, const LwoPoints *points,
36  CLwoLayer *layer);
37 
38  void add_vmap(const LwoVertexMap *lwo_vmap);
39  bool get_uv(const std::string &uv_name, int n, LPoint2 &uv) const;
40 
41  void make_egg();
42  void connect_egg();
43 
44  LwoToEggConverter *_converter;
45  CPT(LwoPoints) _points;
46  CLwoLayer *_layer;
47  PT(EggVertexPool) _egg_vpool;
48 
49  // A number of vertex maps of different types may be associated, but we only
50  // care about some of the types here.
52  VMap _txuv;
53  VMap _pick;
54 };
55 
56 #include "cLwoPoints.I"
57 
58 #endif
CLwoPoints
This class is a wrapper around LwoPoints and stores additional information useful during the conversi...
Definition: cLwoPoints.h:33
LwoPoints
An array of points that will be referenced by later chunks.
Definition: lwoPoints.h:26
LwoVertexMap
A mapping of floating-point values per integer index.
Definition: lwoVertexMap.h:27
eggVertexPool.h
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
cLwoPoints.I
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
pmap< std::string, const LwoVertexMap * >
CLwoPoints::connect_egg
void connect_egg()
Connects all the egg structures together.
Definition: cLwoPoints.cxx:93
CLwoPoints::get_uv
bool get_uv(const std::string &uv_name, int n, LPoint2 &uv) const
Returns true if there is a UV of the indicated name associated with the given vertex,...
Definition: cLwoPoints.cxx:55
pmap.h
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
CLwoLayer
This class is a wrapper around LwoLayer and stores additional information useful during the conversio...
Definition: cLwoLayer.h:29
CLwoPoints::make_egg
void make_egg()
Creates the egg structures associated with this Lightwave object.
Definition: cLwoPoints.cxx:82
LwoToEggConverter
This class supervises the construction of an EggData structure from the data represented by the LwoHe...
Definition: lwoToEggConverter.h:38
CLwoPoints::add_vmap
void add_vmap(const LwoVertexMap *lwo_vmap)
Associates the indicated VertexMap with the points set.
Definition: cLwoPoints.cxx:27
lwoPoints.h
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
pandatoolbase.h
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
EggVertexPool
A collection of vertices.
Definition: eggVertexPool.h:41
pointerTo.h
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.