//#if 0 //pj change #pragma once #include "Stdafx_M.h" #include "Stdafx.h" #include "OCC/OCCModeling/OCCStructDataMD.h" #include "Common/BusinessGlobal.h" //#define DLLEXPORT extern "C" __declspec(dllexport) /*************************** Interface Definition *****************************/ //******************** View Control ************************* //图形界面初始化 //DLLEXPORT BOOL InitView(int viewsize,HWND view[]); //图形界面重绘 DLLEXPORT void RedrawView(int flag); //图形界面刷新 DLLEXPORT void UpdateView(int flag); //图形缩放 DLLEXPORT void ZoomWheel(float delta,int curviewflag); //设置旋转起始点 DLLEXPORT void StartRotation(int x,int y,int curviewflag); //设置旋转停止点 DLLEXPORT void Rotation(int x, int y,int flag); //平移 DLLEXPORT void Pan(int x, int y, int flag); //图形自适应 DLLEXPORT void FitAll(int flag,bool isUpdate); //局域放大 DLLEXPORT void WindowFitAll(int myXmin, int myYmin, int myXmax, int myYmax); //视图移动 DLLEXPORT void MoveTo(int x,int y ,int flag); //*** HighLight:高亮 *** DLLEXPORT void HighLight(int nid,int id[]); //*** SetDisplayMode:设置显示模式:点线面体的显隐 *** DLLEXPORT void SetDisplayMode(int aMode); //***SetAISDisplayMode:区域显示 flag--0:关闭,1:开启*** DLLEXPORT void SetAISDisplayMode(int aMode); //***ShowRegion:区域显示 flag--0:关闭,1:开启*** DLLEXPORT void ShowRegion(int flag); //***SetViewDirection:设置视角 dir--0前,1后,2顶,3底,4左,5右,6侧前,7侧后*** DLLEXPORT void SetViewDirection(int flag, int dir); // DLLEXPORT void Select(); //点选 DLLEXPORT BOOL SelectOneMode(int x, int y,int id[],int flag, double &rx, double &ry, double &rz,bool bctrlselect=false); //框选 DLLEXPORT BOOL SelectFrameMode(int prex,int prey,int x,int y,int flag,int id[], double &rx, double &ry, double &rz,bool bctrlselect = false); //反向框选 DLLEXPORT BOOL SelectOppositeFrameMode(int prex,int prey,int x,int y,int flag,int id[], double &rx, double &ry, double &rz,bool bctrlselect = false); //高亮 DLLEXPORT bool HiLight( int id []); //设置图元显隐 DLLEXPORT void SetObjVisible(int n,int id[], int visible[]); //***可选择对象类型:0所有图元,1屏幕任意位置,2曲线节点(knot),3面顶点 DLLEXPORT void SetInteractType(int type); //***显示剖面位置 DLLEXPORT void ShowSectionPos(double x,bool bdrawprofle); //***生成型线 DLLEXPORT int GenShapeLine2(double x,ScPoint2D *pt,bool withDeck, int dir, double v); //*** 生成型线 ptr:返回节点序列;dir1:用于切割船壳的切面方向:0X,1Y,2Z;v1:用于切割船壳的切面位置;dir2:节点坐标限制方向(即用于切割型线的切面方向):-1无(返回所有节点),0X,1Y,2Z :v2>节点坐标限制(即用于切割型线的切面位置) DLLEXPORT int GenShapeLine(OffsetTablePoint *pt,int dir1, double v1, int dir2, double v2); //***设置选项 autoCross:选择状态 displayOptions各类图元显示选项,数组固定长度12按照\Source\Infrastructure\Infrastructure.Data\DataContainer\ModelData.cs中三维数据从0-12依次获取 DLLEXPORT void SetOptions(bool autoCross,ModelDisplayOption displayOptions[]); // 显示临时曲线 DLLEXPORT void ShowTempCurve(bool show, Curve crv, int npnt, Point3D pnt[]); //打开或关闭定时器 Lvxj DLLEXPORT void EnableTimer(bool isTimerEnable); //删除上次选中对象,如果是线,则要取消线上点的显示 void ClearAisTempmodel(); //显示肋位标尺 void ShowFrameRulerModel(); //显示型线 void ShowProfileModel(); //显示线上的型值点 //void ShowPointOnLine(int id);// XUEFENG DELETE 20190329 void ShowPointOnLine(int id, bool isHighLight=false);// XUEFENG ADDED 20190329 // void PixelToModel(int x, int y,double &rx,double &ry,double &rz,int flag,BOOL bWCS = TRUE); //图元重绘 void RedrawTypeObjProps(); // Added by XUEFENG 20180926 // 三角显示 DLLEXPORT bool ShowMeshTriOrNot(bool flag); // End Added // XUEFENG ADDED 20230310 DLLEXPORT void SetVertexSelectMode(); DLLEXPORT void RemoveVertexSelectMode(); // END ADDED