Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
21
Добавлен:
16.04.2013
Размер:
1.3 Кб
Скачать
// Spline.h: interface for the CSpline class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_SPLINE_H__6A410A5B_59F9_4EC0_A378_9D2D5FCE8EC3__INCLUDED_)
#define AFX_SPLINE_H__6A410A5B_59F9_4EC0_A378_9D2D5FCE8EC3__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#define pi 3.14

class PointCoord{
public:
	double x, y, z;
	PointCoord(){x=0; y=0; z=0;}
	PointCoord(double X, double Y, double Z){x=X; y=Y; z=Z;}
};

class CSpline  
{
public:
	void DrawLine(CPaintDC &dc, double a, double b, int d);
	CPoint XYZCenter;
	int L, R, D, SetkaNum, SplineNum, N, MaxXY;
	double Shag, A, B;
	PointCoord Point0, PointX, PointY, PointZ;
	PointCoord *Setka, *Point, *Line1, *Line2, *Line3;
	void BSpline3DCom(PointCoord *Setka, int i, double tx, int j, double ty, PointCoord &r);
	void DrawXYZ(CPaintDC &dc, double a, double b, int d, CPoint C);
	void DrawSpline(CPaintDC &dc, double a, double b, int d);
	void DrawSetka(CPaintDC &dc, double a, double b, int d);
	CPoint Transform3Dto2D(PointCoord Point);
	CSpline(int FunNum, int SNum, CPoint Center);
	virtual ~CSpline();
    double Fun(double x, double y, int FunNum);
};

#endif // !defined(AFX_SPLINE_H__6A410A5B_59F9_4EC0_A378_9D2D5FCE8EC3__INCLUDED_)
Соседние файлы в папке Spline_3d