home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
DOS/V Power Report 1997 March
/
VPR9703A.ISO
/
VPR_DATA
/
DOGA
/
SOURCES
/
MEDIT.LZH
/
DISPLAY.H
< prev
next >
Wrap
C/C++ Source or Header
|
1995-10-06
|
3KB
|
104 lines
#if !defined(__display_h) // 番兵。まだインクルードされていない場合にのみ,このファイルを使用
#define __display_h
/* Project medit
Project Team DoGA
Copyright (c) 1995. All Rights Reserved.
サブシステム: medit.apx Application
ファイル: display.h
作成者: Taka2
概要
====
TWinDisplay (TWindow) 用のクラス定義
*/
#include <owl\owlpch.h>
#pragma hdrstop
#include <owl\window.h>
#include "meditapp.rh" // すべてのリソースの定義
#include "matrix.h"
#include "anim.h"
const int MaxMarkers = 20;
class AnimationData;
class Bezier;
class Motion;
enum SelectType;
//{{TWindow = TWinDisplay}}
class TWinDisplay : public TWindow {
AnimationData *anim;
SelectType type;
Matrix convmatrix;
TPoint markerpoint[MaxMarkers];
SelectType markertype[MaxMarkers];
int markers;
public:
TWinDisplay(TWindow* parent, AnimationData *a, SelectType sel, int x, int y, int w, int h);
virtual ~TWinDisplay();
void ShowCube(Matrix& m, int flag, SelectType t);
void ShowCamera(Matrix& m, int flag);
void ShowLight(Vector& vec, int flag);
void DrawBezier(Bezier *bezier);
void Redraw(void);
void ShowMotion(TDC& dc, Motion *m);
void ShowBezier(TDC& dc, Motion *m, int flag);
void ShowMarker(TDC& dc, Motion *m);
void ShowMesh(TDC& dc);
Matrix GetMatrix(void);
Matrix GetInvMatrix(void);
private:
void Set4Marker(SelectType type, TPoint& pc, TPoint& p1, TPoint& p2);
void Set5Marker(SelectType t1, SelectType t2, SelectType t3, TPoint& pc, TPoint& p1, TPoint& p2, TPoint& p3);
void Set9Marker(SelectType t, TPoint& pc, TPoint& p1, TPoint& p2, TPoint& p3);
void DrawMarker(TDC& dc);
void OpCubeBegin(UINT modKeys, TPoint& point);
void OpCubeDrag(UINT modKeys, TPoint& point, Vector& v);
void OpCubeEnd(UINT modKeys, TPoint& point, Vector& v);
void OpBezierBegin(UINT modKeys, TPoint& point);
void OpBezierDrag(UINT modKeys, TPoint& point, Vector& v);
void OpBezierEnd(UINT modKeys, TPoint& point, Vector& v);
void OpZoomBegin(UINT modKeys, TPoint& point);
void OpLightBegin(UINT modKeys, TPoint& point);
void OpLightDrag(UINT modKeys, TPoint& point, Vector& v);
void OpLightEnd(UINT modKeys, TPoint& point, Vector& v);
void OpSelectMotion(UINT modKeys, TPoint& point, Vector& v);
void OpSelectMotionAndDrag(UINT modKeys, TPoint& point, Vector& v);
int GetPositionDistance(Motion *motion, TPoint &point);
void DisplayCursorObject(UINT /*modKeys*/, TPoint& point);
//{{TWinDisplayVIRTUAL_BEGIN}}
public:
virtual void Paint (TDC& dc, BOOL erase, TRect& rect);
//{{TWinDisplayVIRTUAL_END}}
//{{TWinDisplayRSP_TBL_BEGIN}}
protected:
void EvLButtonDown (UINT modKeys, TPoint& point);
void EvMouseMove (UINT modKeys, TPoint& point);
void EvLButtonUp (UINT modKeys, TPoint& point);
void EvRButtonDown (UINT modKeys, TPoint& point);
//{{TWinDisplayRSP_TBL_END}}
DECLARE_RESPONSE_TABLE(TWinDisplay);
}; //{{TWinDisplay}}
#endif // __display_h の番兵