diff --git a/EGkColor.h b/EGkColor.h index 6004a57..fab601d 100644 --- a/EGkColor.h +++ b/EGkColor.h @@ -77,6 +77,9 @@ class Color { return ( m_Col[BLUE] * INV_MAX_RGB) ; } float GetAlpha( void) const { return ( m_Col[ALPHA] * INV_MAX_ALPHA) ; } + void GetFloat( float vCol[4]) const + { vCol[0] = m_Col[RED] * INV_MAX_RGB ; vCol[1] = m_Col[GREEN] * INV_MAX_RGB ; + vCol[2] = m_Col[BLUE] * INV_MAX_RGB ; vCol[3] = m_Col[ALPHA] * INV_MAX_ALPHA ; } bool operator == ( const Color& other) const { return ( m_Col[RED] == other.m_Col[RED] && m_Col[GREEN] == other.m_Col[GREEN] && diff --git a/EGrScene.h b/EGrScene.h index 6d0803d..d9868a3 100644 --- a/EGrScene.h +++ b/EGrScene.h @@ -84,6 +84,7 @@ class IEGrScene virtual bool SetExtension( const BBox3d& b3Ext) = 0 ; virtual bool UpdateExtension( void) = 0 ; virtual bool SetMark( Color colMark) = 0 ; + virtual bool SetSelSurf( Color colSelSurf) = 0 ; // Grid virtual bool SetGridShow( bool bShowGrid, bool bShowFrame) = 0 ; virtual bool SetGridFrame( const Frame3d& frFrame) = 0 ; diff --git a/EInAPI.h b/EInAPI.h index 27da93c..f4b6a91 100644 --- a/EInAPI.h +++ b/EInAPI.h @@ -56,6 +56,8 @@ EIN_EXPORT BOOL __stdcall EgtVectorToLoc( double* pdX, double* pdY, double* pdZ, EIN_EXPORT BOOL __stdcall EgtVectorLocToLoc( double* pdX, double* pdY, double* pdZ, const double ptO1[3], const double vtX1[3], const double vtY1[3], const double vtZ1[3], const double ptO2[3], const double vtX2[3], const double vtY2[3], const double vtZ2[3]) ; +EIN_EXPORT BOOL __stdcall EgtGetVectorRotation( const double vtS[3], const double vtE[3], const double vtAx[3], + double* pdAngRotDeg, BOOL* pbDet) ; EIN_EXPORT BOOL __stdcall EgtPointTranslate( double* pdX, double* pdY, double* pdZ, const double vtMove[3]) ; EIN_EXPORT BOOL __stdcall EgtPointRotate( double* pdX, double* pdY, double* pdZ, @@ -74,6 +76,8 @@ EIN_EXPORT BOOL __stdcall EgtPointToLoc( double* pdX, double* pdY, double* pdZ, EIN_EXPORT BOOL __stdcall EgtPointLocToLoc( double* pdX, double* pdY, double* pdZ, const double ptO1[3], const double vtX1[3], const double vtY1[3], const double vtZ1[3], const double ptO2[3], const double vtX2[3], const double vtY2[3], const double vtZ2[3]) ; +EIN_EXPORT BOOL __stdcall EgtFrameFrom3Points( double ptO[3], double ptOnX[3], double ptNearY[3], + double ptOrig[3], double vtX[3], double vtY[3], double vtZ[3]) ; EIN_EXPORT BOOL __stdcall EgtFrameTranslate( double ptOrig[3], double vtX[3], double vtY[3], double vtZ[3], const double vtMove[3]) ; EIN_EXPORT BOOL __stdcall EgtFrameRotate( double ptOrig[3], double vtX[3], double vtY[3], double vtZ[3], @@ -85,8 +89,6 @@ EIN_EXPORT BOOL __stdcall EgtFrameToLoc( double ptOrig[3], double vtX[3], double EIN_EXPORT BOOL __stdcall EgtFrameLocToLoc( double ptOrig[3], double vtX[3], double vtY[3], double vtZ[3], const double ptO1[3], const double vtX1[3], const double vtY1[3], const double vtZ1[3], const double ptO2[3], const double vtX2[3], const double vtY2[3], const double vtZ2[3]) ; -EIN_EXPORT BOOL __stdcall EgtGetVectorRotation( const double vtS[3], const double vtE[3], const double vtAx[3], - double* pdAngRotDeg, BOOL* pbDet) ; // GeomDB EIN_EXPORT int __stdcall EgtInitGeomDB( void) ; @@ -241,10 +243,11 @@ EIN_EXPORT BOOL __stdcall EgtTrimCurveEndAtLen( int nId, double dLen) ; EIN_EXPORT BOOL __stdcall EgtTrimCurveStartAtParam( int nId, double dPar) ; EIN_EXPORT BOOL __stdcall EgtTrimCurveEndAtParam( int nId, double dPar) ; EIN_EXPORT BOOL __stdcall EgtTrimCurveStartEndAtParam( int nId, double dParS, double dParE) ; +EIN_EXPORT BOOL __stdcall EgtSplitCurveAtPoint( int nId, double ptOn[3]) ; EIN_EXPORT BOOL __stdcall EgtModifyCurveCircleCPN( int nId, const double ptOn[3]) ; EIN_EXPORT BOOL __stdcall EgtModifyCurveArcC2PN( int nId, const double ptEnd[3]) ; EIN_EXPORT BOOL __stdcall EgtModifyCurveArc3P( int nId, const double ptMid[3]) ; -EIN_EXPORT BOOL __stdcall EgtSplitCurveCompo( int nId) ; +EIN_EXPORT BOOL __stdcall EgtSeparateCurveCompo( int nId) ; // Geo Snap Vector/Point/Frame EIN_EXPORT BOOL __stdcall EgtStartPoint( int nId, double ptP[3]) ; @@ -293,6 +296,7 @@ EIN_EXPORT BOOL __stdcall EgtShearGroup( int nId, const double vPnt[3], const do EIN_EXPORT BOOL __stdcall EgtInitScene( HWND hWnd, int nDriver, int b2Buff, int nColorBits, int nDepthBits) ; EIN_EXPORT BOOL __stdcall EgtSetBackground( const int nTopCol[4], const int nBottomCol[4], BOOL bRedraw) ; EIN_EXPORT BOOL __stdcall EgtSetMarkAttribs( const int MarkCol[4]) ; +EIN_EXPORT BOOL __stdcall EgtSetSelSurfAttribs( const int SelSurfCol[4]) ; EIN_EXPORT BOOL __stdcall EgtSetGeoLineAttribs( const int GlCol[4]) ; EIN_EXPORT BOOL __stdcall EgtSetWinRectAttribs( BOOL bOutline, const int WrCol[4]) ; EIN_EXPORT BOOL __stdcall EgtSetGridShow( BOOL bShowGrid, BOOL bShowFrame) ;