#include <HYDROData_Image.h>
%End
-class HYDROData_Image : HYDROData_Object
+class HYDROData_Image : HYDROData_Entity
{
%ConvertToSubClassCode
- if ( !Handle(HYDROData_Image)::DownCast( sipCpp ).IsNull() )
- sipClass = sipClass_HYDROData_Image;
- else
- sipClass = NULL;
+ switch ( sipCpp->GetKind() )
+ {
+ case KIND_IMAGE:
+ sipClass = sipClass_HYDROData_Image;
+ break;
+
+ default:
+ // We don't recognise the type.
+ sipClass = NULL;
+ }
%End
%TypeHeaderCode
#include <HYDROData_Image.h>
%End
-public:
-
- const ObjectKind GetKind() const;
-
public:
/**
/**
* Stores the image transformation points (3 input + 3 output)
- * \param thePointAIn input point A
- * \param thePointBIn input point B
- * \param thePointCIn input point C
- * \param thePointAOut output point A
- * \param thePointBOut output point B
- * \param thePointCOut output point C
+ * \param thePointA input point A
+ * \param thePointB input point B
+ * \param thePointC input point C
+ * \param theLambertPointA output point A in Lambert93 coordinates
+ * \param theLambertPointB output point B in Lambert93 coordinates
+ * \param theLambertPointC output point C in Lambert93 coordinates
+ * \param theCartesianPointA output point A in Cartesian coordinates
+ * \param theCartesianPointB output point B in Cartesian coordinates
+ * \param theCartesianPointC output point C in Cartesian coordinates
*/
- void SetTrsfPoints( const QPoint& thePointAIn,
- const QPoint& thePointBIn,
- const QPoint& thePointCIn,
- const QPointF& thePointAOut,
- const QPointF& thePointBOut,
- const QPointF& thePointCOut );
+ void SetTrsfPoints( const QPoint& thePointA,
+ const QPoint& thePointB,
+ const QPoint& thePointC,
+ const QPointF& theLambertPointA,
+ const QPointF& theLambertPointB,
+ const QPointF& theLambertPointC,
+ const QPointF& theCartesianPointA,
+ const QPointF& theCartesianPointB,
+ const QPointF& theCartesianPointC );
/**
* Returns the image transformation points (3 input + 3 output)
- * \param thePointAIn input point A
- * \param thePointBIn input point B
- * \param thePointCIn input point C
- * \param thePointAOut output point A
- * \param thePointBOut output point B
- * \param thePointCOut output point C
+ * \param thePointA input point A
+ * \param thePointB input point B
+ * \param thePointC input point C
+ * \param theLambertPointA output point A in Lambert93 coordinates
+ * \param theLambertPointB output point B in Lambert93 coordinates
+ * \param theLambertPointC output point C in Lambert93 coordinates
+ * \param theCartesianPointA output point A in Cartesian coordinates
+ * \param theCartesianPointB output point B in Cartesian coordinates
+ * \param theCartesianPointC output point C in Cartesian coordinates
+ */
+ void TrsfPoints( QPoint& thePointA,
+ QPoint& thePointB,
+ QPoint& thePointC,
+ QPointF& theLambertPointA,
+ QPointF& theLambertPointB,
+ QPointF& theLambertPointC,
+ QPointF& theCartesianPointA,
+ QPointF& theCartesianPointB,
+ QPointF& theCartesianPointC ) const;
+
+ /**
+ * Returns true if the image has stored transformation points
+ */
+ bool HasTrsfPoints() const;
+
+ /**
+ * Stores the transformation mode (0 - Lambert93, 1 - Cartesian)
*/
- void TrsfPoints( QPoint& thePointAIn,
- QPoint& thePointBIn,
- QPoint& thePointCIn,
- QPointF& thePointAOut,
- QPointF& thePointBOut,
- QPointF& thePointCOut );
+ void SetTrsfMode(const int theMode);
+
+ /**
+ * Returns the transformation mode (0 - Lambert93, 1 - Cartesian)
+ */
+ int TrsfMode() const;
+
+
+ /**
+ * Returns the number of referenced images
+ * \return zero if there is no references
+ */
+ int NbReferences();
/**
* Appends reference to other image.
* \param theReferenced the image referenced by this
*/
- void AppendReference( HYDROData_Object theReferenced ) [void (Handle_HYDROData_Object)];
+ void AppendReference( HYDROData_Entity theReferenced ) [void (Handle_HYDROData_Entity)];
%MethodCode
- Handle(HYDROData_Object) aRefObj = createHandle( a0 );
+ Handle(HYDROData_Entity) aRefObj = createHandle( a0 );
if ( !aRefObj.IsNull() )
{
Py_BEGIN_ALLOW_THREADS
%End
- /**
- * Returns the number of referenced images
- * \return zero if there is no references
- */
- int NbReferences();
-
/**
* Returns reference by index.
* \param theIndex number of reference [0; NbReference)
* \returns the referenced image, or Null if index is invalid
*/
- HYDROData_Object Reference( const int theIndex ) const [Handle_HYDROData_Object (const int)];
+ HYDROData_Entity Reference( const int theIndex ) const [Handle_HYDROData_Entity (const int)];
%MethodCode
- Handle(HYDROData_Object) aRefObj;
+ Handle(HYDROData_Entity) aRefObj;
Py_BEGIN_ALLOW_THREADS
aRefObj = sipSelfWasArg ? sipCpp->HYDROData_Image::Reference( a0 ) :
* \param theIndex number of reference [0; NbReference]
* \param theReferenced the image referenced by this
*/
- void ChangeReference( const int theIndex, HYDROData_Object theReferenced ) [void (const int, Handle_HYDROData_Object)];
+ void ChangeReference( const int theIndex, HYDROData_Entity theReferenced ) [void (const int, Handle_HYDROData_Entity)];
%MethodCode
- Handle(HYDROData_Object) aRefObj = createHandle( a1 );
+ Handle(HYDROData_Entity) aRefObj = createHandle( a1 );
if ( !aRefObj.IsNull() )
{
Py_BEGIN_ALLOW_THREADS