diff --git a/EGkGeoObj.h b/EGkGeoObj.h index 9e7406f..9aeb0b9 100644 --- a/EGkGeoObj.h +++ b/EGkGeoObj.h @@ -34,7 +34,7 @@ class _declspec( novtable) IGeoObj virtual ~IGeoObj( void) {} virtual IGeoObj* Clone( void) const = 0 ; virtual GeoObjType GetType( void) const = 0 ; - virtual std::string GetKey( void) const = 0 ; + virtual const std::string& GetKey( void) const = 0 ; virtual bool IsValid( void) const = 0 ; virtual bool Save( std::ostream& osOut) const = 0 ; virtual bool Load( CScan& TheScanner) = 0 ; @@ -48,4 +48,4 @@ class _declspec( novtable) IGeoObj } ; //----------------------------------------------------------------------------- -EGK_EXPORT IGeoObj* CreateGeoObj( std::string sKey) ; \ No newline at end of file +EGK_EXPORT IGeoObj* CreateGeoObj( int nType) ; \ No newline at end of file diff --git a/EGkGeoObjType.h b/EGkGeoObjType.h index a0b925d..1e9ebbe 100644 --- a/EGkGeoObjType.h +++ b/EGkGeoObjType.h @@ -28,12 +28,3 @@ enum GeoObjType { GEO_NONE = 0, CRV_BEZ = ( GEO_CURVE + 2), CRV_COMPO = ( GEO_CURVE + 3), SRF_TRIMESH = ( GEO_SURF + 0)} ; - -//----------------- Costanti chiavi oggetto geometrico ------------------------ -static const char* KEY_GEO_VECT3D = "G_VEC" ; -static const char* KEY_GEO_PNT3D = "G_PNT" ; -static const char* KEY_CRV_LINE = "C_LIN" ; -static const char* KEY_CRV_ARC = "C_ARC" ; -static const char* KEY_CRV_BEZ = "C_BEZ" ; -static const char* KEY_CRV_COMPO = "C_CMP" ; -static const char* KEY_SRF_TRIMESH = "S_TRM" ; diff --git a/EGkGeoPoint3d.h b/EGkGeoPoint3d.h index f15cc1d..137bbc3 100644 --- a/EGkGeoPoint3d.h +++ b/EGkGeoPoint3d.h @@ -25,7 +25,7 @@ class _declspec( novtable) IGeoPoint3d : public IGeoObj //----------------------------------------------------------------------------- inline IGeoPoint3d* CreateGeoPoint3d( void) - { return (static_cast( CreateGeoObj( KEY_GEO_PNT3D))) ; } + { return (static_cast( CreateGeoObj( GEO_PNT3D))) ; } inline IGeoPoint3d* CloneGeoPoint3d( const IGeoObj* pGObj) { if ( pGObj == nullptr || pGObj->GetType() != GEO_PNT3D) return nullptr ; diff --git a/EGkGeoVector3d.h b/EGkGeoVector3d.h index db8b338..f5ad8fd 100644 --- a/EGkGeoVector3d.h +++ b/EGkGeoVector3d.h @@ -25,7 +25,7 @@ class _declspec( novtable) IGeoVector3d : public IGeoObj //----------------------------------------------------------------------------- inline IGeoVector3d* CreateGeoVector3d( void) - { return (static_cast( CreateGeoObj( KEY_GEO_VECT3D))) ; } + { return (static_cast( CreateGeoObj( GEO_VECT3D))) ; } inline IGeoVector3d* CloneGeoVector3d( const IGeoObj* pGObj) { if ( pGObj == nullptr || pGObj->GetType() != GEO_VECT3D) return nullptr ; diff --git a/EgkCurveArc.h b/EgkCurveArc.h index 864411e..147c5c6 100644 --- a/EgkCurveArc.h +++ b/EgkCurveArc.h @@ -34,7 +34,7 @@ class _declspec( novtable) ICurveArc : public ICurve //----------------------------------------------------------------------------- inline ICurveArc* CreateCurveArc( void) - { return (static_cast( CreateGeoObj( KEY_CRV_ARC))) ; } + { return (static_cast( CreateGeoObj( CRV_ARC))) ; } inline ICurveArc* CloneCurveArc( const IGeoObj* pGObj) { if ( pGObj == nullptr || pGObj->GetType() != CRV_ARC) return nullptr ; diff --git a/EgkCurveBezier.h b/EgkCurveBezier.h index 0fcbce7..9646147 100644 --- a/EgkCurveBezier.h +++ b/EgkCurveBezier.h @@ -30,7 +30,7 @@ class _declspec( novtable) ICurveBezier : public ICurve //----------------------------------------------------------------------------- inline ICurveBezier* CreateCurveBezier( void) - { return (static_cast( CreateGeoObj( KEY_CRV_BEZ))) ; } + { return (static_cast( CreateGeoObj( CRV_BEZ))) ; } inline ICurveBezier* CloneCurveBezier( const IGeoObj* pGObj) { if ( pGObj == nullptr || pGObj->GetType() != CRV_BEZ) return nullptr ; diff --git a/EgkCurveComposite.h b/EgkCurveComposite.h index 77ed028..5e7cfec 100644 --- a/EgkCurveComposite.h +++ b/EgkCurveComposite.h @@ -28,7 +28,7 @@ class _declspec( novtable) ICurveComposite : public ICurve //----------------------------------------------------------------------------- inline ICurveComposite* CreateCurveComposite( void) - { return (static_cast( CreateGeoObj( KEY_CRV_COMPO))) ; } + { return (static_cast( CreateGeoObj( CRV_COMPO))) ; } inline ICurveComposite* CloneCurveComposite( const IGeoObj* pGObj) { if ( pGObj == nullptr || pGObj->GetType() != CRV_COMPO) return nullptr ; diff --git a/EgkCurveLine.h b/EgkCurveLine.h index e4ff346..63010d2 100644 --- a/EgkCurveLine.h +++ b/EgkCurveLine.h @@ -26,7 +26,7 @@ class _declspec( novtable) ICurveLine : public ICurve //----------------------------------------------------------------------------- inline ICurveLine* CreateCurveLine( void) - { return (static_cast( CreateGeoObj( KEY_CRV_LINE))) ; } + { return (static_cast( CreateGeoObj( CRV_LINE))) ; } inline ICurveLine* CloneCurveLine( const IGeoObj* pGObj) { if ( pGObj == nullptr || pGObj->GetType() != CRV_LINE) return nullptr ;