summaryrefslogtreecommitdiff
path: root/src/PolySetCGALEvaluator.h
blob: 00e79f1633aaf79c3b32765637ee5d200db95a7d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#ifndef POLYSETCGALEVALUATOR_H_
#define POLYSETCGALEVALUATOR_H_

#include "PolySetEvaluator.h"

/*!
	This is a PolySet evaluator which uses the CGALEvaluator to support building
	polysets.
*/
class PolySetCGALEvaluator : public PolySetEvaluator
{
public:
	PolySetCGALEvaluator(class CGALEvaluator &cgalevaluator);
	virtual ~PolySetCGALEvaluator() { }
	virtual PolySet *evaluatePolySet(const ProjectionNode &node);
	virtual PolySet *evaluatePolySet(const LinearExtrudeNode &node);
	virtual PolySet *evaluatePolySet(const RotateExtrudeNode &node);
	virtual PolySet *evaluatePolySet(const CgaladvNode &node);
	virtual PolySet *evaluatePolySet(const RenderNode &node);
	bool debug;
protected:
	PolySet *extrudeDxfData(const LinearExtrudeNode &node, class DxfData &dxf);
	PolySet *rotateDxfData(const RotateExtrudeNode &node, class DxfData &dxf);

	CGALEvaluator &cgalevaluator;
};

#endif
contact: Jan Huwald // Impressum