// ----------------------------------------------------------------------------- // // ----------------------------------------------------------------------------- void BoundaryPhaseWidget::extractStatsData(VoxelDataContainer::Pointer m, int index) { setPhaseIndex(index); IDataArray* iDataPtr = NULL; iDataPtr = m->getEnsembleData(DREAM3D::EnsembleData::CrystalStructures).get(); UInt32ArrayType* data = UInt32ArrayType::SafeObjectDownCast<IDataArray*, UInt32ArrayType*>(iDataPtr); m_CrystalStructure = data->GetValue(index); iDataPtr = m->getEnsembleData(DREAM3D::EnsembleData::PhaseTypes).get(); data = UInt32ArrayType::SafeObjectDownCast<IDataArray*, UInt32ArrayType*>(iDataPtr); m_PhaseType = data->GetValue(index); iDataPtr = m->getEnsembleData(DREAM3D::EnsembleData::Statistics).get(); StatsDataArray* statsDataArray = StatsDataArray::SafeObjectDownCast<IDataArray*, StatsDataArray*>(iDataPtr); if (statsDataArray == NULL) { return; } StatsData::Pointer statsData = statsDataArray->getStatsData(index); BoundaryStatsData* boundaryStatsData = BoundaryStatsData::SafePointerDownCast(statsData.get()); m_PhaseFraction = boundaryStatsData->getPhaseFraction(); }
// ----------------------------------------------------------------------------- // // ----------------------------------------------------------------------------- void BoundaryPhaseWidget::extractStatsData(AttributeMatrix::Pointer attrMat, int index) { setPhaseIndex(index); IDataArray::Pointer iDataArray = attrMat->getAttributeArray(DREAM3D::EnsembleData::CrystalStructures); unsigned int* attributeArray = boost::dynamic_pointer_cast< UInt32ArrayType >(iDataArray)->getPointer(0); m_CrystalStructure = attributeArray[index]; iDataArray = attrMat->getAttributeArray(DREAM3D::EnsembleData::PhaseTypes); attributeArray = boost::dynamic_pointer_cast< UInt32ArrayType >(iDataArray)->getPointer(0); m_PhaseType = attributeArray[index]; iDataArray = attrMat->getAttributeArray(DREAM3D::EnsembleData::Statistics); StatsDataArray* statsDataArray = StatsDataArray::SafeObjectDownCast<IDataArray*, StatsDataArray*>(iDataArray.get()); if (statsDataArray == NULL) { return; } StatsData::Pointer statsData = statsDataArray->getStatsData(index); BoundaryStatsData* boundaryStatsData = BoundaryStatsData::SafePointerDownCast(statsData.get()); m_PhaseFraction = boundaryStatsData->getPhaseFraction(); }