TorusPrimitiveShapeConstructor.cpp
Go to the documentation of this file.
2 
3 #include "ScoreComputer.h"
4 #include "TorusPrimitiveShape.h"
5 #include <GfxTL/NullClass.h>
6 
7 size_t
9 {
10  return 4;
11 }
12 
13 unsigned int
15 {
16  return 4;
17 }
18 
21  const MiscLib::Vector<Vec3f>& normals) const
22 {
23  MiscLib::Vector<Vec3f> samples;
24  for (size_t i = 0; i < points.size(); ++i)
25  {
26  samples.push_back(points[i]);
27  }
28  for (size_t i = 0; i < normals.size(); ++i)
29  {
30  samples.push_back(normals[i]);
31  }
32  return Construct(samples);
33 }
34 
37 {
38  Torus torus;
39  if (!torus.Init(samples))
40  {
41  return NULL;
42  }
43  return new TorusPrimitiveShape(torus);
44 }
45 
47 TorusPrimitiveShapeConstructor::Deserialize(std::istream* i, bool binary) const
48 {
50  shape->Deserialize(i, binary);
51  return shape;
52 }
53 
54 size_t
56 {
58 }
TorusPrimitiveShapeConstructor::SerializedSize
size_t SerializedSize() const
Definition: TorusPrimitiveShapeConstructor.cpp:55
MiscLib::Vector::push_back
void push_back(const T &v)
Definition: Vector.h:354
TorusPrimitiveShape.h
Torus
Definition: Torus.h:20
TorusPrimitiveShape
Definition: TorusPrimitiveShape.h:12
PrimitiveShape
PrimtiveShape is a shape primitive in conjunction with a parametrization.
Definition: PrimitiveShape.h:34
MiscLib::Vector
Definition: Vector.h:19
MiscLib::Vector::size
size_type size() const
Definition: Vector.h:215
TorusPrimitiveShapeConstructor::RequiredSamples
unsigned int RequiredSamples() const
Definition: TorusPrimitiveShapeConstructor.cpp:14
TorusPrimitiveShape::Deserialize
void Deserialize(std::istream *i, bool binary)
Definition: TorusPrimitiveShape.cpp:162
TorusPrimitiveShapeConstructor::Construct
PrimitiveShape * Construct(const MiscLib::Vector< Vec3f > &points, const MiscLib::Vector< Vec3f > &normals) const
Definition: TorusPrimitiveShapeConstructor.cpp:20
LowStretchTorusParametrization::SerializedSize
static size_t SerializedSize()
Definition: LowStretchTorusParametrization.cpp:145
Torus::Init
bool Init(const MiscLib::Vector< Vec3f > &samples)
Definition: Torus.cpp:67
NullClass.h
TorusPrimitiveShape
class DLL_LINKAGE TorusPrimitiveShape
Definition: PrimitiveShapeVisitor.h:12
Torus::SerializedSize
static size_t SerializedSize()
Definition: Torus.cpp:594
ScoreComputer.h
TorusPrimitiveShapeConstructor::Identifier
size_t Identifier() const
Definition: TorusPrimitiveShapeConstructor.cpp:8
TorusPrimitiveShapeConstructor::Deserialize
PrimitiveShape * Deserialize(std::istream *i, bool binary=true) const
Definition: TorusPrimitiveShapeConstructor.cpp:47
TorusPrimitiveShapeConstructor.h