#define EXPORT_NAME "HYDRO_" + GetName()
+#include <SALOME_NamingService.hxx>
+#include <SALOME_LifeCycleCORBA.hxx>
+
+#define _DEVDEBUG_
+#include "HYDRO_trace.hxx"
+
IMPLEMENT_STANDARD_HANDLE(HYDROData_CalculationCase, HYDROData_Entity)
IMPLEMENT_STANDARD_RTTIEXT(HYDROData_CalculationCase, HYDROData_Entity)
void HYDROData_CalculationCase::CreateRegionsAuto( const Handle(HYDROData_Document)& theDoc,
const HYDROData_SplitToZonesTool::SplitDataList& theZones )
{
+ DEBTRACE("HYDROData_CalculationCase::CreateRegionsAuto");
QMap<QString, Handle(HYDROData_Region)> aRegionsMap; //object name to region
QMap<QString, QString> aRegionNameToObjNameMap;
QString aZonesPref = CALCULATION_ZONES_PREF;
Handle(HYDROData_Entity) aMergeEntity = aRegObj;
Handle(HYDROData_Object) aMergeObject = Handle(HYDROData_Object)::DownCast( aMergeEntity );
if ( !aMergeObject.IsNull() ) {
+ DEBTRACE("aMergeEntity " << aMergeEntity->GetName().toStdString());
aMergeEntity = aMergeObject->GetAltitudeObject();
}
Handle(HYDROData_Zone) aZone = GetZoneFromPoint( thePoint );
if ( !aZone.IsNull() )
{
+ //DEBTRACE("GetAltitudeForPoint Region " << theRegion->GetName().toStdString() << " Zone " << aZone->GetName().toStdString());
Handle(HYDROData_Region) aRefRegion = Handle(HYDROData_Region)::DownCast( aZone->GetFatherObject() );
if ( IsEqual( aRefRegion, theRegion ) )
aResAltitude = GetAltitudeForPoint( thePoint, aZone );
+ else
+ {
+ DEBTRACE("GetAltitudeForPoint Region " << aRefRegion->GetName().toStdString() << " Zone " << aZone->GetName().toStdString() << " ---------------------------");
+ aResAltitude = GetAltitudeForPoint( thePoint, aZone );
+ }
}
+ else
+ {
+ DEBTRACE(" --- GetAltitudeForPoint No Zone ---");
+ }
return aResAltitude;
}
double HYDROData_CalculationCase::GetAltitudeForPoint( const gp_XY& thePoint,
const Handle(HYDROData_Zone)& theZone ) const
{
+ //DEBTRACE("GetAltitudeForPoint Zone " << theZone->GetName().toStdString());
double aResAltitude = HYDROData_IAltitudeObject::GetInvalidAltitude();
if ( theZone.IsNull() )
+ {
+ DEBTRACE("Zone nulle");
return aResAltitude;
+ }
HYDROData_Zone::MergeType aZoneMergeType = theZone->GetMergeType();
+ //DEBTRACE("aZoneMergeType " << aZoneMergeType);
if ( !theZone->IsMergingNeed() )
{
aZoneMergeType = HYDROData_Zone::Merge_UNKNOWN;
+ //DEBTRACE("---");
}
else if ( aZoneMergeType == HYDROData_Zone::Merge_UNKNOWN )
{
+ DEBTRACE("GetAltitudeForPoint Zone " << theZone->GetName().toStdString() << " Merge_UNKNOWN");
return aResAltitude;
}
{
if ( aZoneInterpolator != NULL )
{
+ DEBTRACE("aZoneInterpolator != NULL");
aZoneInterpolator->SetAltitudeObject( aMergeAltitude );
aResAltitude = aZoneInterpolator->GetAltitudeForPoint( thePoint );
}
else
+ {
+ DEBTRACE("aZoneInterpolator == NULL");
aResAltitude = aMergeAltitude->GetAltitudeForPoint( thePoint );
+ }
}
}
else
{
+ //DEBTRACE("aZoneMergeType != HYDROData_Zone::Merge_Object");
HYDROData_SequenceOfObjects aZoneObjects = theZone->GetObjects();
HYDROData_SequenceOfObjects::Iterator anIter( aZoneObjects );
for ( ; anIter.More(); anIter.Next() )
double aPointAltitude = 0.0;
if ( aZoneInterpolator != NULL )
{
+ DEBTRACE("aZoneInterpolator != NULL");
aZoneInterpolator->SetAltitudeObject( anObjAltitude );
aPointAltitude = aZoneInterpolator->GetAltitudeForPoint( thePoint );
}
else
+ {
+ //DEBTRACE("aZoneInterpolator == NULL");
aPointAltitude = anObjAltitude->GetAltitudeForPoint( thePoint );
+ }
if ( ValuesEquals( aPointAltitude, HYDROData_IAltitudeObject::GetInvalidAltitude() ) )
continue;
const NCollection_Sequence<gp_XY>& thePoints,
const Handle(HYDROData_Region)& theRegion ) const
{
+ //DEBTRACE("HYDROData_CalculationCase::GetAltitudesForPoints " << theRegion->GetName().toStdString());
NCollection_Sequence<double> aResSeq;
for ( int i = 1, n = thePoints.Length(); i <= n; ++i )