Band.h

// File: Cores.h

 

#if !defined (CORES_H)

#define CORES_H

 

#include "../Headers/UDPBase.h"

 

//***************************************

// Basic class for Band

//***************************************

class CBand : public CUDPBase

{

protected:

double diaGap; // diameter at the gap side

double diaYoke; // diameter at the yoke side

double length; // core length or model depth: length = 0 for 2D

 

int numSegs; // number of segments of whole circular band

int numFras; // number of circumferential fractions

int infoHalf; // 1 for half model in axial direction

int infoCore; // information for drawing different parts of the object

int infoOut; // information for an inner or outer core

 

double rRegion; // region radius

double segAng; // angle per segment

 

protected:

virtual void GetParameters();

virtual void PutParameters();

virtual char *ValidateParameters();

 

long SweepAlongZAxis(long obj);

 

long CreateBand();

long CreateTool();

long CreateMaster(bool isMaster=true);

long CreateRegion(double r0=0, int fras=0);

 

public:

virtual long CreatePrimitive(UDPFunctionLib* functionLib, void* callbackData);

};

 

#endif //if !defined (CORES_H)