⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rlplot.h

📁 Linux/windows 环境下跨平台开发程序
💻 H
📖 第 1 页 / 共 5 页
字号:
	void DoPlot(anyOutput *o);	void DoMark(anyOutput *o, bool mark);	bool Command(int cmd, void *tmpl, anyOutput *o);	bool PropertyDlg();	bool FileIO(int rw);private:	double size;	lfPOINT pos1, pos2;	POINT pts[5];	LineDEF Outline, Hatchline;	FillDEF Fill;	POINT *ssRef;	long cssRef;};class Whisker:public GraphObj {public:	Whisker(GraphObj *par, DataObj *d, lfPOINT fp1, lfPOINT fp2, int which,		int xc1=-1, int xr1=-1, int yc1=-1, int yr1=-1, int xc2=-1, int xr2=-1,		int yc2=-1, int yr2=-1);	Whisker(int src);	bool SetSize(int select, double value);	bool SetColor(int select, DWORD col);	void DoPlot(anyOutput *o);	void DoMark(anyOutput *o, bool mark);	bool Command(int cmd, void *tmpl, anyOutput *o);	bool PropertyDlg();	bool FileIO(int rw);private:	double size;	POINT pts[6];	lfPOINT pos1, pos2;	LineDEF LineDef;	POINT *ssRef;	long cssRef;};class DropLine:public GraphObj{public:	DropLine(GraphObj *par, DataObj *d, double x, double y, int which, int xc = -1, 		int xr = -1, int yc = -1, int yr = -1);	DropLine(int src);	~DropLine();	void DoPlot(anyOutput *o);	void DoMark(anyOutput *o, bool mark);	bool Command(int cmd, void *tmpl, anyOutput *o);	bool PropertyDlg();	bool FileIO(int rw);private:	lfPOINT fPos;	POINT pts[4];	LineDEF LineDef;	POINT *ssRef;	long cssRef;	bool bModified;};class line_segment:public GraphObj{public:	line_segment(GraphObj *par, DataObj *d, LineDEF *ld, POINT3D *p1, POINT3D *p2);	~line_segment();	double GetSize(int select);	void DoPlot(anyOutput *o);	bool Command(int cmd, void *tmpl, anyOutput *o);	void * ObjThere(int x, int y);private:	LineDEF Line;	POINT3D **ldata;	fPOINT3D fmin, fmax;	int *nldata, nli, ndf_go;	double prop;	bool bDrawDone;	GraphObj *co, **df_go;	void DoClip(GraphObj *co);};class sph_scanline:public GraphObj{public:	int rad;	bool vert;	sph_scanline(POINT3D *center, int radius, bool bVert);	bool Command(int cmd, void *tmpl, anyOutput *o);	void DoClip(GraphObj *co);	bool GetPoint(POINT *p, int sel);private:	POINT3D p1, p2, cent;	bool bValid1, bValid2;};class Sphere:public GraphObj{public:	Sphere(GraphObj *par, DataObj *d, int sel, double x, double y, double z, double r,		int xc = -1, int xr = -1, int yc = -1, int yr = -1, int zc = -1, int zr = -1,		int rc = -1, int rr = -1);	Sphere(int src);	~Sphere();	double GetSize(int select);	bool SetSize(int select, double value);	DWORD GetColor(int select);
	bool SetColor(int select, DWORD col);	void DoPlot(anyOutput *o);	bool Command(int cmd, void *tmpl, anyOutput *o);	bool PropertyDlg();	bool FileIO(int rw);private:	int ix, iy, rx, ry, nscl;	LineDEF Line;	FillDEF Fill;	fPOINT3D fPos, fip;	double size;	POINT *ssRef;	long cssRef;	GraphObj *co;	bool bModified, bDrawDone;	sph_scanline **scl;	void DoClip(GraphObj *co);	void DrawPG(anyOutput *o, int start);};class plane:public GraphObj{public:	plane(GraphObj *par, DataObj *d, fPOINT3D *pts, int nPts, LineDEF *line, 		FillDEF *fill);	~plane();	double GetSize(int select);	void DoPlot(anyOutput *o);	void DoMark(anyOutput *o, bool mark);	bool Command(int cmd, void *tmpl, anyOutput *o);	void * ObjThere(int x, int y);	bool GetPolygon(POINT3D **pla, int *npt, int sel);	double *GetVec() {return PlaneVec;};
private:	LineDEF Line;	FillDEF Fill;	double *PlaneVec;	POINT3D **ldata, ReqPoint;	int *nldata, nli, n_ipts, n_lines;	POINT *ipts;	lfPOINT xBounds, yBounds, zBounds;	bool bDrawDone, bReqPoint;	GraphObj *co;	line_segment **lines;	long totalArea;	void DoClip(GraphObj *co);	bool IsValidPG(POINT3D *pg, int npg);};class Plane3D:public GraphObj {public:	Plane3D(GraphObj *par, DataObj *da, fPOINT3D *pt, long npt);	Plane3D(int src);	~Plane3D();	bool SetSize(int select, double value);	bool SetColor(int select, DWORD col);	void DoPlot(anyOutput *o);	void DoMark(anyOutput *o, bool mark);	bool Command(int cmd, void *tmpl, anyOutput *o);	bool PropertyDlg();	bool FileIO(int rw);private:	plane *ipl;	fPOINT3D *dt, *pts;	long ndt;	LineDEF Line;	FillDEF Fill;};class Brick:public GraphObj{public:	Brick(GraphObj *par, DataObj *da, double x, double y, double z, 		double d, double w, double h, DWORD flags, int xc = -1,		int xr = -1, int yc = -1, int yr = -1, int zc = -1, int zr = -1,		int dc = -1, int dr = -1, int wc = -1, int wr = -1, int hc = -1,		int hr = -1);	Brick(int src);	~Brick();	bool SetSize(int select, double value);	bool SetColor(int select, DWORD col);	void DoPlot(anyOutput *o);	void DoMark(anyOutput *o, bool mark);	bool Command(int cmd, void *tmpl, anyOutput *o);	bool PropertyDlg();	bool FileIO(int rw);private:	LineDEF Line;	FillDEF Fill;	fPOINT3D fPos;	double depth, width, height;	DWORD flags;	POINT *ssRef;	long cssRef;	plane **faces;	anyOutput *mo;
	RECT mrc;
	bool bModified;};class DropLine3D:public GraphObj{public:	DropLine3D(GraphObj *par, DataObj *d, fPOINT3D *p1, int xc = -1,		int xr = -1, int yc = -1, int yr = -1, int zc = -1, int zr = -1);	DropLine3D(int src);	~DropLine3D();	void DoPlot(anyOutput *o);	void DoMark(anyOutput *o, bool mark);	bool Command(int cmd, void *tmpl, anyOutput *o);	bool PropertyDlg();	bool FileIO(int rw);private:	line_segment *ls[6];	POINT mpts[6][2];	LineDEF Line;	fPOINT3D fPos;	POINT *ssRef;	long cssRef;	bool bModified;	anyOutput *mo;	RECT mrc;};class Arrow3D:public GraphObj{public:	Arrow3D(GraphObj *par, DataObj *d, fPOINT3D *p1, fPOINT3D *p2, int xc1 = -1,		int xr1 = -1, int yc1 = -1, int yr1 = -1, int zc1 = -1, int zr1 = -1, 		int xc2 = -1, int xr2 = -1, int yc2 = -1, int yr2 = -1, int zc2 = -1, 		int zr2 = -1);	Arrow3D(int src);	~Arrow3D();	bool SetSize(int select, double value);	bool SetColor(int select, DWORD col);	void DoPlot(anyOutput *o);	void DoMark(anyOutput *o, bool mark);	bool Command(int cmd, void *tmpl, anyOutput *o);	bool PropertyDlg();	bool FileIO(int rw);private:	line_segment *ls[3];	plane *cap;	double cw, cl;	POINT mpts[3][2];	LineDEF Line;	fPOINT3D fPos1, fPos2;	POINT *ssRef;	long cssRef;	bool bModified;};class Line3D:public GraphObj{public:
	LineDEF Line;
	Line3D(GraphObj *par, DataObj *d, char *rx, char *ry, char *rz);	Line3D(GraphObj *par, DataObj *d, fPOINT3D *pt, int n_pt, int xc1 = -1,
		int xr1 = -1, int yc1 = -1, int yr1 = -1, int zc1 = -1, int zr1 = -1, 
		int xc2 = -1, int xr2 = -1, int yc2 = -1, int yr2 = -1, int zc2 = -1, 
		int zr2 = -1);
	Line3D(int src);	~Line3D();	void DoPlot(anyOutput *o);	void DoMark(anyOutput *o, bool mark);	bool Command(int cmd, void *tmpl, anyOutput *o);	bool PropertyDlg();	bool FileIO(int rw);private:	line_segment **ls;	fPOINT3D *values, min, max;	POINT *pts;	long nPts, npts;
	char *x_range, *y_range, *z_range;	POINT *ssRef;
	long cssRef;
	bool bModified;	anyOutput *mo;	RECT mrc;	void DoUpdate();};class Label:public GraphObj{public:	Label(GraphObj *par, DataObj *d, double x, double y, TextDEF *td, DWORD flg,		int xc = -1, int xr = -1, int yc = -1, int yr = -1, int tc = -1, int tr = -1);	Label(int src);	~Label();	double GetSize(int select);	bool SetSize(int select, double value);	bool SetColor(int select, DWORD col);	void DoPlot(anyOutput *o);	void DoMark(anyOutput *o, bool mark);	bool Command(int cmd, void *tmpl, anyOutput *o);	bool PropertyDlg();	bool FileIO(int rw);	void * ObjThere(int x, int y);	void Track(POINT *p, anyOutput *o);	bool CalcRect(anyOutput *o);	void RedrawEdit(anyOutput *o);	void ShowCursor(anyOutput *o);	bool AddChar(int ci, anyOutput *o);	void CalcCursorPos(int x, int y, anyOutput *o);	void SetModified();
	void DoPlotText(anyOutput *o);	TextDEF *GetTextDef(){return &TextDef;};private:	lfPOINT fPos, fDist;	double si, csi, curr_z;	DWORD flags, bgcolor;	TextDEF TextDef;	LineDEF bgLine;	int ix, iy, CursorPos;
	bool is3D;	RECT Cursor;	POINT pts[5];	POINT *ssRef;	long cssRef;	anyOutput *defDisp;	bool bModified, bBGvalid;
	fmtText *fmt_txt;};class mLabel:public GraphObj{public:	mLabel(GraphObj *, DataObj *, double, double, TextDEF *, char *, int, DWORD);	mLabel(GraphObj *, DataObj *, double, double, TextDEF *, char *);	mLabel(int src);	~mLabel();	double GetSize(int select);	bool SetSize(int select, double value);	void DoPlot(anyOutput *o);	bool Command(int cmd, void *tmpl, anyOutput *o);	void RegGO(void *n);
	bool FileIO(int rw);	void Track(POINT *p, anyOutput *o);private:	lfPOINT fPos, fDist, cPos, cPos1, dist;	double si, csi, curr_z, lspc;	DWORD flags, undo_flags;	TextDEF TextDef;	long nLines;	int cli;
	bool is3D;	Label **Lines;};class segment:public GraphObj{public:	segment(GraphObj *par, DataObj *d, lfPOINT *c, double r1, double r2, double a1, double a2);	segment(int src);	~segment();	bool SetSize(int select, double value);	void DoPlot(anyOutput *o);	void DoMark(anyOutput *o, bool mark);	bool Command(int cmd, void *tmpl, anyOutput *o);	bool PropertyDlg();	bool FileIO(int rw);	void * ObjThere(int x, int y);	void Track(POINT *p, anyOutput *o);private:	lfPOINT fCent;	long nPts;	double radius1, radius2, angle1, angle2, shift;	LineDEF segLine, segFillLine;	FillDEF segFill;	POINT *pts;	bool bModified;};class polyline:public GraphObj {public:	lfPOINT *Values;	long nPoints, nPts;	POINT *pts;	LineDEF pgLine, pgFillLine;	FillDEF pgFill;	bool bModified;	polyline(GraphObj *par, DataObj *d, lfPOINT *fpts, int cpts);	polyline(int src);	~polyline();	double GetSize(int select);	bool SetSize(int select, double value);	DWORD GetColor(int select);	void DoPlot(anyOutput *o);	void DoMark(anyOutput *o, bool mark);	bool Command(int cmd, void *tmpl, anyOutput *o);	virtual bool PropertyDlg();	bool FileIO(int rw);	void * ObjThere(int x, int y);	void Track(POINT *p, anyOutput *o);private:	dragHandle **pHandles;	void ShowPoints(anyOutput *o);};class polygon:public polyline {public:	polygon(GraphObj *par, DataObj *d, lfPOINT *fpts, int cpts);	polygon(int src):polyline(src){};	bool PropertyDlg();};class rectangle:public GraphObj {public:	lfPOINT fp1, fp2;	LineDEF Line, FillLine;	FillDEF Fill;	double rad;	bool bModified;	rectangle(GraphObj *par, DataObj *d, lfPOINT *p1, lfPOINT *p2);	rectangle(int src);	~rectangle();	double GetSize(int select);	bool SetSize(int select, double value);	DWORD GetColor(int select){return Line.color;};	void DoMark(anyOutput *o, bool mark);	void DoPlot(anyOutput *o);	bool Command(int cmd, void *tmpl, anyOutput *o);	bool PropertyDlg();	bool FileIO(int rw);	void * ObjThere(int x, int y);	void Track(POINT *p, anyOutput *o);private:	POINT *pts;	long nPts;	dragRect *drc;	void PlotRoundRect(anyOutput *o);};class ellipse:public rectangle {public:	ellipse(GraphObj *par, DataObj *d, lfPOINT *p1, lfPOINT *p2);	ellipse(int src);};class roundrec:public rectangle {public:	roundrec(GraphObj *par, DataObj *d, lfPOINT *p1, lfPOINT *p2);	roundrec(int src);};class LegItem:public GraphObj{public:	LegItem(GraphObj *par, DataObj *d, LineDEF *ld, LineDEF *lf, FillDEF *fill);	LegItem(GraphObj *par, DataObj *d, LineDEF *ld, Symbol *sy);	LegItem(int src);	~LegItem();	double GetSize(int select);	void DoPlot(anyOutput *o);	void DoMark(anyOutput *o, bool mark);	bool Command(int cmd, void *tmpl, anyOutput *o);	void RegGO(void *n);
	bool FileIO(int rw);	void Track(POINT *p, anyOutput *o);	bool HasFill(LineDEF *ld, FillDEF *fd);	bool HasSym(LineDEF *ld, GraphObj *sy);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -