// Correct this!!!###!!! int BodyLayer::getMeshQuadGridN(int mesh_index, int element_id) { if ( !acceptsStructuredMesh() ) return 0; if ( mesh_index < 0 || mesh_index >= model->getNofMeshes() ) return 0; Parameter* param = NULL; for (int i = 0; i < nofGridParameterIds; i++) { if ( gridParameterMeshIndices[i] == mesh_index ) { param = model->getParameterById(ECIF_GRID_PARAMETER, gridParameterIds[i]); break; } } if ( param == NULL ) { return 0; } char value_buffer[1 + 128]; // Check if Quadrilateral mesh defined for the grid layer if ( !( param->getFieldValueBySifName("Mesh Element Type", 128, value_buffer) && LibFront::ncEqual(value_buffer, "Quad") ) ) { return 0; } Body* body = model->getBodyById(bodyId); if (body == NULL) return 0; // Check element index int index = NO_INDEX; int layer = 0; // Correct this !!!###!!! int be_index = 0; while (true) { BodyElement* be = body->getElement(layer, be_index++); if (be==NULL) break; if ( be->Id() == element_id ) { index++; break; } } if ( index == NO_INDEX ) { return 0; } int n; bool found = false; if ( index == 0 || index == 2 ) { found = param->getFieldValueBySifName("Mesh Quadgrid N1", n); } else if ( index == 1 || index == 3 ) { found = param->getFieldValueBySifName("Mesh Quadgrid N2", n); } else { return 0; } if (found) { return n; } return 0; }