My Project
|
Public Member Functions | |
UnstructuredGridRepresentation (gsoap_resqml2_0_1::eml__DataObjectReference *partialObject) | |
UnstructuredGridRepresentation (soap *soapContext, resqml2::AbstractLocal3dCrs *crs, const std::string &guid, const std::string &title, const ULONG64 &cellCount) | |
UnstructuredGridRepresentation (resqml2::AbstractFeatureInterpretation *interp, resqml2::AbstractLocal3dCrs *crs, const std::string &guid, const std::string &title, const ULONG64 &cellCount) | |
UnstructuredGridRepresentation (gsoap_resqml2_0_1::_resqml2__UnstructuredGridRepresentation *fromGsoap) | |
virtual | ~UnstructuredGridRepresentation () |
bool | hasGeometry () const |
std::string | getHdfProxyUuid () const |
ULONG64 | getXyzPointCountOfPatch (const unsigned int &patchIndex) const |
void | getXyzPointsOfPatch (const unsigned int &patchIndex, double *xyzPoints) const |
void | getFaceIndicesOfCells (ULONG64 *faceIndices) const |
void | getCumulativeFaceCountPerCell (ULONG64 *cumulativeFaceCountPerCell) const |
void | getFaceCountPerCell (ULONG64 *faceCountPerCell) const |
bool | isFaceCountOfCellsConstant () const |
unsigned int | getConstantFaceCountOfCells () const |
void | getNodeIndicesOfFaces (ULONG64 *nodeIndices) const |
void | getCumulativeNodeCountPerFace (ULONG64 *nodeCountPerFace) const |
void | getNodeCountPerFace (ULONG64 *nodeCountPerFace) const |
bool | isNodeCountOfFacesConstant () const |
unsigned int | getConstantNodeCountOfFaces () const |
void | loadGeometry () |
void | unloadGeometry () |
unsigned int | getFaceCountOfCell (const ULONG64 &cellIndex) const |
unsigned int | getNodeCountOfFaceOfCell (const ULONG64 &cellIndex, const unsigned int &localFaceIndex) const |
ULONG64 * | getNodeIndicesOfFaceOfCell (const ULONG64 &cellIndex, const unsigned int &localFaceIndex) const |
ULONG64 | getCellCount () const |
ULONG64 | getFaceCount () const |
ULONG64 | getNodeCount () const |
void | getCellFaceIsRightHanded (unsigned char *cellFaceIsRightHanded) const |
void | setGeometryUsingExistingDatasets (const std::string &cellFaceIsRightHanded, const std::string &points, ULONG64 pointCount, resqml2::AbstractHdfProxy *proxy, const std::string &faceIndicesPerCell, const std::string &faceIndicesCumulativeCountPerCell, ULONG64 faceCount, const std::string &nodeIndicesPerFace, const std::string &nodeIndicesCumulativeCountPerFace, const gsoap_resqml2_0_1::resqml2__CellShape &cellShape) |
void | setGeometry (unsigned char *cellFaceIsRightHanded, double *points, ULONG64 pointCount, resqml2::AbstractHdfProxy *proxy, ULONG64 *faceIndicesPerCell, ULONG64 *faceIndicesCumulativeCountPerCell, ULONG64 faceCount, ULONG64 *nodeIndicesPerFace, ULONG64 *nodeIndicesCumulativeCountPerFace, const gsoap_resqml2_0_1::resqml2__CellShape &cellShape) |
void | setTetrahedraOnlyGeometryUsingExistingDatasets (const std::string &cellFaceIsRightHanded, const std::string &points, ULONG64 pointCount, ULONG64 faceCount, resqml2::AbstractHdfProxy *proxy, const std::string &faceIndicesPerCell, const std::string &nodeIndicesPerFace) |
void | setTetrahedraOnlyGeometry (unsigned char *cellFaceIsRightHanded, double *points, ULONG64 pointCount, ULONG64 faceCount, resqml2::AbstractHdfProxy *proxy, ULONG64 *faceIndicesPerCell, ULONG64 *nodeIndicesPerFace) |
void | setHexahedraOnlyGeometryUsingExistingDatasets (const std::string &cellFaceIsRightHanded, const std::string &points, ULONG64 pointCount, ULONG64 faceCount, resqml2::AbstractHdfProxy *proxy, const std::string &faceIndicesPerCell, const std::string &nodeIndicesPerFace) |
void | setHexahedraOnlyGeometry (unsigned char *cellFaceIsRightHanded, double *points, ULONG64 pointCount, ULONG64 faceCount, resqml2::AbstractHdfProxy *proxy, ULONG64 *faceIndicesPerCell, ULONG64 *nodeIndicesPerFace) |
virtual std::string | getXmlTag () const |
unsigned int | getPatchCount () const |
Public Member Functions inherited from resqml2::AbstractGridRepresentation | |
virtual | ~AbstractGridRepresentation () |
std::vector< resqml2::GridConnectionSetRepresentation * > | getGridConnectionSetRepresentationSet () const |
unsigned int | getGridConnectionSetRepresentationCount () const |
resqml2::GridConnectionSetRepresentation * | getGridConnectionSetRepresentation (const unsigned int &index) const |
AbstractGridRepresentation * | getParentGrid () const |
std::string | getParentGridUuid () const |
unsigned int | getChildGridCount () const |
AbstractGridRepresentation * | getChildGrid (const unsigned int &index) const |
void | setParentWindow (ULONG64 *cellIndices, const ULONG64 &cellIndexCount, resqml2_0_1::UnstructuredGridRepresentation *parentGrid) |
void | setParentWindow (unsigned int *columnIndices, const unsigned int &columnIndexCount, const unsigned int &kLayerIndexRegridStart, unsigned int *childCellCountPerInterval, unsigned int *parentCellCountPerInterval, const unsigned int &intervalCount, class AbstractColumnLayerGridRepresentation *parentGrid, double *childCellWeights=nullptr) |
void | setParentWindow (const unsigned int &iCellIndexRegridStart, unsigned int *childCellCountPerIInterval, unsigned int *parentCellCountPerIInterval, const unsigned int &iIntervalCount, const unsigned int &jCellIndexRegridStart, unsigned int *childCellCountPerJInterval, unsigned int *parentCellCountPerJInterval, const unsigned int &jIntervalCount, const unsigned int &kCellIndexRegridStart, unsigned int *childCellCountPerKInterval, unsigned int *parentCellCountPerKInterval, const unsigned int &kIntervalCount, resqml2_0_1::AbstractIjkGridRepresentation *parentGrid, double *iChildCellWeights=nullptr, double *jChildCellWeights=nullptr, double *kChildCellWeights=nullptr) |
void | setParentWindow (const unsigned int &iCellIndexRegridStart, unsigned int constantChildCellCountPerIInterval, unsigned int constantParentCellCountPerIInterval, const unsigned int &iIntervalCount, const unsigned int &jCellIndexRegridStart, unsigned int constantChildCellCountPerJInterval, unsigned int constantParentCellCountPerJInterval, const unsigned int &jIntervalCount, const unsigned int &kCellIndexRegridStart, unsigned int constantChildCellCountPerKInterval, unsigned int constantParentCellCountPerKInterval, const unsigned int &kIntervalCount, resqml2_0_1::AbstractIjkGridRepresentation *parentGrid, double *iChildCellWeights=nullptr, double *jChildCellWeights=nullptr, double *kChildCellWeights=nullptr) |
void | setParentWindow (const unsigned int &iCellIndexRegridStart, unsigned int iChildCellCount, unsigned int iParentCellCount, const unsigned int &jCellIndexRegridStart, unsigned int jChildCellCount, unsigned int jParentCellCount, const unsigned int &kCellIndexRegridStart, unsigned int kChildCellCount, unsigned int kParentCellCount, resqml2_0_1::AbstractIjkGridRepresentation *parentGrid, double *iChildCellWeights=nullptr, double *jChildCellWeights=nullptr, double *kChildCellWeights=nullptr) |
void | setForcedNonRegridedParentCell (ULONG64 *cellIndices, const ULONG64 &cellIndexCount) |
void | setCellOverlap (const ULONG64 &parentChildCellPairCount, ULONG64 *parentChildCellPair, const gsoap_resqml2_0_1::eml__VolumeUom &volumeUom=gsoap_resqml2_0_1::eml__VolumeUom__m3, double *overlapVolumes=nullptr) |
LONG64 | getParentCellIndexCount () const |
void | getParentCellIndices (ULONG64 *parentCellIndices) const |
LONG64 | getParentColumnIndexCount () const |
void | getParentColumnIndices (ULONG64 *parentColumnIndices) const |
ULONG64 | getRegridStartIndexOnParentGrid (const char &dimension) const |
ULONG64 | getRegridIntervalCount (const char &dimension) const |
bool | isRegridCellCountPerIntervalConstant (const char &dimension, const bool &childVsParentCellCount) const |
ULONG64 | getRegridConstantCellCountPerInterval (const char &dimension, const bool &childVsParentCellCount) const |
void | getRegridCellCountPerInterval (const char &dimension, ULONG64 *childCellCountPerInterval, const bool &childVsParentCellCount) const |
bool | hasRegridChildCellWeights (const char &dimension) const |
void | getRegridChildCellWeights (const char &dimension, ULONG64 *childCellWeights) const |
bool | hasForcedNonRegridedParentCell () const |
void | setCellAssociationWithStratigraphicOrganizationInterpretation (ULONG64 *stratiUnitIndices, const ULONG64 &nullValue, resqml2_0_1::AbstractStratigraphicOrganizationInterpretation *stratiOrgInterp) |
resqml2_0_1::AbstractStratigraphicOrganizationInterpretation * | getStratigraphicOrganizationInterpretation () const |
virtual std::string | getStratigraphicOrganizationInterpretationUuid () const |
bool | hasCellStratigraphicUnitIndices () const |
ULONG64 | getCellStratigraphicUnitIndices (ULONG64 *stratiUnitIndices) |
bool | isTruncated () const |
ULONG64 | getTruncatedFaceCount () const |
void | getNodeIndicesOfTruncatedFaces (ULONG64 *nodeIndices) const |
void | getCumulativeNodeCountPerTruncatedFace (ULONG64 *nodeCountPerFace) const |
void | getNodeCountPerTruncatedFace (ULONG64 *nodeCountPerFace) const |
ULONG64 | getTruncatedCellCount () const |
void | getTruncatedCellIndices (ULONG64 *cellIndices) const |
void | getTruncatedFaceIndicesOfTruncatedCells (ULONG64 *faceIndices) const |
void | getCumulativeTruncatedFaceCountPerTruncatedCell (ULONG64 *cumulativeFaceCountPerCell) const |
void | getTruncatedFaceCountPerTruncatedCell (ULONG64 *faceCountPerCell) const |
void | getNonTruncatedFaceIndicesOfTruncatedCells (ULONG64 *faceIndices) const |
void | getCumulativeNonTruncatedFaceCountPerTruncatedCell (ULONG64 *cumulativeFaceCountPerCell) const |
void | getNonTruncatedFaceCountPerTruncatedCell (ULONG64 *faceCountPerCell) const |
void | getTruncatedFaceIsRightHanded (unsigned char *cellFaceIsRightHanded) const |
Public Member Functions inherited from resqml2::AbstractRepresentation | |
virtual | ~AbstractRepresentation () |
class AbstractLocal3dCrs * | getLocalCrs () const |
virtual std::string | getLocalCrsUuid () const |
class AbstractHdfProxy * | getHdfProxy () const |
const std::vector< class AbstractProperty * > & | getPropertySet () const |
std::vector< class AbstractValuesProperty * > | getValuesPropertySet () const |
unsigned int | getValuesPropertyCount () const |
class AbstractValuesProperty * | getValuesProperty (const unsigned int &index) const |
void | setInterpretation (class AbstractFeatureInterpretation *interp) |
class AbstractFeatureInterpretation * | getInterpretation () const |
std::string | getInterpretationUuid () const |
std::string | getInterpretationContentType () const |
void | addSubRepresentation (SubRepresentation *subRep) |
std::vector< SubRepresentation * > | getSubRepresentationSet () const |
unsigned int | getSubRepresentationCount () const |
SubRepresentation * | getSubRepresentation (const unsigned int &index) const |
std::vector< SubRepresentation * > | getFaultSubRepresentationSet () const |
unsigned int | getFaultSubRepresentationCount () const |
SubRepresentation * | getFaultSubRepresentation (const unsigned int &index) const |
ULONG64 | getXyzPointCountOfAllPatches () const |
void | getXyzPointsOfPatchInGlobalCrs (const unsigned int &patchIndex, double *xyzPoints) const |
void | getXyzPointsOfAllPatches (double *xyzPoints) const |
void | getXyzPointsOfAllPatchesInGlobalCrs (double *xyzPoints) const |
AbstractRepresentation * | getSeismicSupportOfPatch (const unsigned int &patchIndex) |
void | pushBackIntoRepresentationSet (class RepresentationSetRepresentation *repSet, bool xml=true) |
void | setHdfProxy (resqml2::AbstractHdfProxy *proxy) |
void | addSeismic3dCoordinatesToPatch (const unsigned int patchIndex, double *inlines, double *crosslines, const unsigned int &pointCount, resqml2::AbstractRepresentation *seismicSupport, resqml2::AbstractHdfProxy *proxy) |
void | addSeismic3dCoordinatesToPatch (const unsigned int patchIndex, const double &startInline, const double &incrInline, const unsigned int &countInline, const double &startCrossline, const double &incrCrossline, const unsigned int &countCrossline, resqml2::AbstractRepresentation *seismicSupport) |
void | addSeismic2dCoordinatesToPatch (const unsigned int patchIndex, double *lineAbscissa, const unsigned int &pointCount, resqml2::AbstractRepresentation *seismicSupport, resqml2::AbstractHdfProxy *proxy) |
void | getSeismicLineAbscissaOfPointsOfPatch (const unsigned int &patchIndex, double *values) |
Public Member Functions inherited from resqml2::AbstractObject | |
bool | isPartial () const |
std::string | getUuid () const |
std::string | getTitle () const |
std::string | getEditor () const |
time_t | getCreation () const |
std::string | getOriginator () const |
std::string | getDescription () const |
time_t | getLastUpdate () const |
std::string | getFormat () const |
std::string | getDescriptiveKeywords () const |
void | setTitle (const std::string &title) |
void | setEditor (const std::string &editor) |
void | setCreation (const time_t &creation) |
void | setOriginator (const std::string &originator) |
void | setDescription (const std::string &description) |
void | setLastUpdate (const time_t &lastUpdate) |
void | setFormat (const std::string &format) |
void | setDescriptiveKeywords (const std::string &descriptiveKeywords) |
void | setMetadata (const std::string &title, const std::string &editor, const time_t &creation, const std::string &originator, const std::string &description, const time_t &lastUpdate, const std::string &format, const std::string &descriptiveKeywords) |
void | serializeIntoStream (std::ostream *stream) |
gsoap_resqml2_0_1::eml__AbstractCitedDataObject * | getGsoapProxy () const |
soap * | getGsoapContext () const |
int | getGsoapType () const |
gsoap_resqml2_0_1::eml__DataObjectReference * | newResqmlReference () const |
gsoap_resqml2_0_1::resqml2__ContactElementReference * | newResqmlContactElementReference () const |
common::EpcDocument * | getEpcDocument () const |
virtual std::string | getXmlNamespace () const |
virtual std::string | getResqmlVersion () const |
std::string | getContentType () const |
std::string | getPartNameInEpcDocument () const |
std::string | serializeIntoString () |
void | addAlias (const std::string &authority, const std::string &title) |
unsigned int | getAliasCount () const |
std::string | getAliasAuthorityAtIndex (const unsigned int &index) const |
std::string | getAliasTitleAtIndex (const unsigned int &index) const |
const std::vector< resqml2::Activity * > & | getActivitySet () const |
void | addOrSetExtraMetadata (const std::string &key, const std::string &value) |
std::tr1::unordered_map< std::string, std::string > | getExtraMetadataSet () const |
std::string | getExtraMetadata (const std::string &key) |
unsigned int | getExtraMetadataCount () const |
std::string | getExtraMetadataKeyAtIndex (const unsigned int &index) const |
std::string | getExtraMetadataStringValueAtIndex (const unsigned int &index) const |
Static Public Attributes | |
static const char * | XML_TAG = "UnstructuredGridRepresentation" |
Static Public Attributes inherited from resqml2::AbstractGridRepresentation | |
static const char * | XML_TAG = "AbstractGridRepresentation" |
Static Public Attributes inherited from resqml2::AbstractRepresentation | |
static const char * | XML_TAG = "AbstractRepresentation" |
Additional Inherited Members | |
Public Types inherited from resqml2::AbstractRepresentation | |
enum | indexableElement { NODE = 0, EDGE = 1, FACE = 2, VOLUME = 3, PILLAR = 4 } |
Protected Member Functions inherited from resqml2::AbstractGridRepresentation | |
AbstractGridRepresentation (common::EpcDocument *epcDoc, gsoap_resqml2_0_1::eml__DataObjectReference *partialObject, bool withTruncatedPillars) | |
AbstractGridRepresentation (resqml2::AbstractFeatureInterpretation *interp, resqml2::AbstractLocal3dCrs *crs, bool withTruncatedPillars) | |
AbstractGridRepresentation (gsoap_resqml2_0_1::resqml2__AbstractGridRepresentation *fromGsoap, bool withTruncatedPillars) | |
virtual std::vector< epc::Relationship > | getAllEpcRelationships () const |
void | importRelationshipSetFromEpc (common::EpcDocument *epcDoc) |
Protected Member Functions inherited from resqml2::AbstractRepresentation | |
AbstractRepresentation (common::EpcDocument *epcDoc, gsoap_resqml2_0_1::eml__DataObjectReference *partialObject) | |
AbstractRepresentation (class AbstractFeatureInterpretation *interp, class AbstractLocal3dCrs *crs) | |
AbstractRepresentation (gsoap_resqml2_0_1::resqml2__AbstractRepresentation *fromGsoap) | |
void | pushBackSeismicSupport (AbstractRepresentation *seismicSupport) |
void | setXmlInterpretation (class AbstractFeatureInterpretation *interp) |
gsoap_resqml2_0_1::resqml2__PointGeometry * | createPointGeometryPatch2_0_1 (const unsigned int &patchIndex, double *points, unsigned long long *numPoints, const unsigned int &numDimensionsInArray, resqml2::AbstractHdfProxy *proxy) |
std::string | getHdfProxyUuidFromPointGeometryPatch (gsoap_resqml2_0_1::resqml2__PointGeometry *patch) const |
gsoap_resqml2_0_1::resqml2__Seismic2dCoordinates * | getSeismic2dCoordinates (const unsigned int &patchIndex) const |
gsoap_resqml2_0_1::resqml2__Seismic3dCoordinates * | getSeismic3dCoordinates (const unsigned int &patchIndex) const |
Protected Member Functions inherited from resqml2::AbstractObject | |
AbstractObject (common::EpcDocument *epcDoc, gsoap_resqml2_0_1::eml__DataObjectReference *partialObject) | |
Indicate whether methods update the XML (gSoap) or only the C++ classes of the API. More... | |
AbstractObject (gsoap_resqml2_0_1::eml__AbstractCitedDataObject *proxy=nullptr) | |
void | initMandatoryMetadata () |
void | setMetadata (const std::string &guid, const std::string &title, const std::string &editor, const time_t &creation, const std::string &originator, const std::string &description, const time_t &lastUpdate, const std::string &format, const std::string &descriptiveKeywords) |
Static Protected Member Functions inherited from resqml2::AbstractObject | |
static void | addActivityToResqmlObject (resqml2::Activity *activity, AbstractObject *resqmlObject) |
Protected Attributes inherited from resqml2::AbstractGridRepresentation | |
bool | withTruncatedPillars |
std::vector< AbstractGridRepresentation * > | childGridSet |
std::vector< resqml2::GridConnectionSetRepresentation * > | gridConnectionSetRepresentationSet |
std::vector< resqml2_0_1::BlockedWellboreRepresentation * > | blockedWellboreRepresentationSet |
Protected Attributes inherited from resqml2::AbstractRepresentation | |
class AbstractFeatureInterpretation * | interpretation |
resqml2::AbstractHdfProxy * | hdfProxy |
class AbstractLocal3dCrs * | localCrs |
std::vector< AbstractRepresentation * > | seismicSupportSet |
std::vector< SubRepresentation * > | subRepresentationSet |
std::vector< AbstractProperty * > | propertySet |
std::vector< AbstractRepresentation * > | seismicSupportedRepSet |
std::vector< class RepresentationSetRepresentation * > | representationSetRepresentationSet |
Protected Attributes inherited from resqml2::AbstractObject | |
gsoap_resqml2_0_1::eml__AbstractCitedDataObject * | gsoapProxy2_0_1 |
common::EpcDocument * | epcDocument |
std::vector< resqml2::Activity * > | activitySet |
bool | updateXml |
|
inline |
Only to be used in partial transfer context
UnstructuredGridRepresentation::UnstructuredGridRepresentation | ( | soap * | soapContext, |
resqml2::AbstractLocal3dCrs * | crs, | ||
const std::string & | guid, | ||
const std::string & | title, | ||
const ULONG64 & | cellCount | ||
) |
soapContext | The soap context where the underlying gsoap proxy is going to be created. |
|
inline |
Creates an instance of this class by wrapping a gsoap instance.
|
inlinevirtual |
Destructor does nothing since the memory is managed by the gsoap context.
|
virtual |
Get the cell count
Implements resqml2::AbstractGridRepresentation.
void UnstructuredGridRepresentation::getCellFaceIsRightHanded | ( | unsigned char * | cellFaceIsRightHanded | ) | const |
Retrieves orientation i.e. if each cell face is right handed or not
void UnstructuredGridRepresentation::getCumulativeFaceCountPerCell | ( | ULONG64 * | cumulativeFaceCountPerCell | ) | const |
Get the cumulative face count per cell. First value is the count of faces in the first cell. Second value is the count of faces in the first and in the second cell. Third value is the count of faces in the first and in the second and in the third cell. Etc... Count of this array is equal to getCellCount() A single face count should be at least 4.
cumulativeFaceCountPerCellIndex | It must be pre allocated with getCellCount() |
void UnstructuredGridRepresentation::getCumulativeNodeCountPerFace | ( | ULONG64 * | nodeCountPerFace | ) | const |
Get the cumulative node count per face. First value is the count of nodes in the first face. Second value is the count of nodes in the first and in the second face. Third value is the count of nodes in the first and in the second and in the third face. Etc... Count of this array is equal to getFaceCount() A single node count should be at least 3.
nodeCountPerFace | It must be pre allocated with getFaceCount() == last value of getCumulativeFaceCountOfCells() |
ULONG64 UnstructuredGridRepresentation::getFaceCount | ( | ) | const |
Get the face count
unsigned int UnstructuredGridRepresentation::getFaceCountOfCell | ( | const ULONG64 & | cellIndex | ) | const |
This method requires your have already loaded the geometry.
void UnstructuredGridRepresentation::getFaceCountPerCell | ( | ULONG64 * | faceCountPerCell | ) | const |
Less efficient than getCumulativeFaceCountOfCells. Get the face count per cell. First value is the count of faces in the first cell. Second value is the count of faces in the second cell. etc...
faceCountPerCell | It must be pre allocated with getCellCount() |
void UnstructuredGridRepresentation::getFaceIndicesOfCells | ( | ULONG64 * | faceIndices | ) | const |
Get all the face indices of all the cells.
faceIndices | It must be pre allocated with the last value returned by getCumulativeFaceCountOfCells() |
ULONG64 UnstructuredGridRepresentation::getNodeCount | ( | ) | const |
Get the node count
unsigned int UnstructuredGridRepresentation::getNodeCountOfFaceOfCell | ( | const ULONG64 & | cellIndex, |
const unsigned int & | localFaceIndex | ||
) | const |
This method requires your have already loaded the geometry.
void UnstructuredGridRepresentation::getNodeCountPerFace | ( | ULONG64 * | nodeCountPerFace | ) | const |
Less efficient than getCumulativeNodeCountPerFace. Get the node count per face. First value is the count of nodes in the first face. Second value is the count of nodes in the second face. etc...
nodeCountPerFace | It must be pre allocated with getFaceCount() == last value of getCumulativeFaceCountOfCells() |
ULONG64 * UnstructuredGridRepresentation::getNodeIndicesOfFaceOfCell | ( | const ULONG64 & | cellIndex, |
const unsigned int & | localFaceIndex | ||
) | const |
This method requires your have already loaded the geometry. It gets all the node indices of a particular face of a particular cell
void UnstructuredGridRepresentation::getNodeIndicesOfFaces | ( | ULONG64 * | nodeIndices | ) | const |
Get all the node indices of all the faces.
nodeIndices | It must be pre allocated with the last value returned by getCumulativeNodeCountOfFaces(). |
|
inlinevirtual |
Get the XML tag for the XML serialization of this instance
Implements resqml2::AbstractObject.
|
virtual |
Get the xyz point count in a given patch.
Implements resqml2::AbstractRepresentation.
|
virtual |
Get all the XYZ points of a particular patch of this representation. XYZ points are given in the local CRS.
xyzPoints | A linearized 2d array where the first (quickest) dimension is coordinate dimension (XYZ) and second dimension is vertex dimension. It must be pre allocated. |
Implements resqml2::AbstractRepresentation.
bool UnstructuredGridRepresentation::hasGeometry | ( | ) | const |
Indicates wether the grid has a geometry or not.
bool UnstructuredGridRepresentation::isFaceCountOfCellsConstant | ( | ) | const |
Detect if the face count per cell is constant in the grid.
bool UnstructuredGridRepresentation::isNodeCountOfFacesConstant | ( | ) | const |
Detect if the node count per face is constant in the grid.
void UnstructuredGridRepresentation::loadGeometry | ( | ) |
Load the geoemtry into memory in order to ease access. Be aware that you must unload by yourself this memory.
void UnstructuredGridRepresentation::setGeometry | ( | unsigned char * | cellFaceIsRightHanded, |
double * | points, | ||
ULONG64 | pointCount, | ||
resqml2::AbstractHdfProxy * | proxy, | ||
ULONG64 * | faceIndicesPerCell, | ||
ULONG64 * | faceIndicesCumulativeCountPerCell, | ||
ULONG64 | faceCount, | ||
ULONG64 * | nodeIndicesPerFace, | ||
ULONG64 * | nodeIndicesCumulativeCountPerFace, | ||
const gsoap_resqml2_0_1::resqml2__CellShape & | cellShape | ||
) |
Set the geometry and creates corresponding HDF5 datasets.
isRightHanded | Boolean mask used to indicate which cell faces have an outwardly directed normal following a right hand rule. Array length is the sum of the cell face count per cell, and the data follows the order of the faces per cell RESQMLlist-of-lists. |
points | All the XYZ points defining the nodes of the unstructured grid. There must a double count of pointCount * 3. |
pointCount | The count of points defining the nodes of this unstructured grid. |
proxy | The hdf proxy which will store all the numerical values of this unstructured grid. |
faceIndicesPerCell | Each item defines the index of the face of a cell. There must be a count of the last value in faceIndicesCumulativeCountPerCell. |
faceIndicesCumulativeCountPerCell | Each item defines the cumulative count of faces. The count of this array must be equal to the count of cells in this unstructured grid. For example if the first cell a 4 faces, the second cell 5 faces and the third cell 6 faces then the array would be {4, 9, 15} |
faceCount | The count of faces in this unstructured grid. Be aware this count does not duplicate shared faces. Most of time, you have less faceCount than the last value of faceIndicesCumulativeCountPerCell which is the count of faces per cell. |
nodeIndicesPerFace | Each item defines the index of the node of a face. There must be a count of the last value in nodeIndicesCumulativeCountPerFace. |
nodeIndicesCumulativeCountPerFace | Each item defines the cumulative count of nodes. The count of this array must be eqaul to faceCount. |
cellShape | A denormalization of the information which gives quick access to the most complex shape of polyhedron encountered in this unstructured grid. |
void UnstructuredGridRepresentation::setGeometryUsingExistingDatasets | ( | const std::string & | cellFaceIsRightHanded, |
const std::string & | points, | ||
ULONG64 | pointCount, | ||
resqml2::AbstractHdfProxy * | proxy, | ||
const std::string & | faceIndicesPerCell, | ||
const std::string & | faceIndicesCumulativeCountPerCell, | ||
ULONG64 | faceCount, | ||
const std::string & | nodeIndicesPerFace, | ||
const std::string & | nodeIndicesCumulativeCountPerFace, | ||
const gsoap_resqml2_0_1::resqml2__CellShape & | cellShape | ||
) |
Set the geometry using some existing hdf5 dataset
isRightHanded | The path to the hdf5 dataset in the hdf proxy where a boolean mask is used to indicate which cell faces have an outwardly directed normal following a right hand rule. Array length is the sum of the cell face count per cell, and the data follows the order of the faces per cell RESQMLlist-of-lists. |
points | The path to the hdf5 dataset in the hdf proxy where all the XYZ points defining the nodes of the unstructured grid are defined. There must a double count of pointCount * 3. |
pointCount | The count of points defining the nodes of this unstructured grid. |
proxy | The hdf proxy which contains the datasets given inthis method by means of path. |
faceIndicesPerCell | The path to the hdf5 dataset in the hdf proxy where each item defines the index of the face of a cell. There must be a count of the last value in faceIndicesCumulativeCountPerCell. |
faceIndicesCumulativeCountPerCell | The path to the hdf5 dataset in the hdf proxy where each item defines the cumulative count of faces. The count of this array must be equal to the count of cells in this unstructured grid. For example if the first cell a 4 faces, the second cell 5 faces and the third cell 6 faces then the array would be {4, 9, 15} |
faceCount | The count of faces in this unstructured grid. Be aware this count does not duplicate shared faces. Most of time, you have less faceCount than the last value of faceIndicesCumulativeCountPerCell which is the count of faces per cell. |
nodeIndicesPerFace | The path to the hdf5 dataset in the hdf proxy where each item defines the index of the node of a face. There must be a count of the last value in nodeIndicesCumulativeCountPerFace. |
nodeIndicesCumulativeCountPerFace | The path to the hdf5 dataset in the hdf proxy where each item defines the cumulative count of nodes. The count of this array must be eqaul to faceCount. |
cellShape | A denormalization of the information which gives quick access to the most complex shape of polyhedron encountered in this unstructured grid. |
void UnstructuredGridRepresentation::setHexahedraOnlyGeometry | ( | unsigned char * | cellFaceIsRightHanded, |
double * | points, | ||
ULONG64 | pointCount, | ||
ULONG64 | faceCount, | ||
resqml2::AbstractHdfProxy * | proxy, | ||
ULONG64 * | faceIndicesPerCell, | ||
ULONG64 * | nodeIndicesPerFace | ||
) |
Set a geometry which is only defined by means of tetrahedra and creates corresponding HDF5 datasets. This geometry only contains hexahedra.
isRightHanded | Boolean mask used to indicate which cell faces have an outwardly directed normal following a right hand rule. Array length is the sum of the cell face count per cell, and the data follows the order of the faces per cell RESQMLlist-of-lists. |
points | All the XYZ points defining the nodes of the unstructured grid. There must a double count of pointCount * 3. |
pointCount | The count of points defining the nodes of this unstructured grid. |
faceCount | The count of faces in this unstructured grid. Be aware this count does not duplicate shared faces. Most of time, you have less faceCount than the last value of faceIndicesCumulativeCountPerCell which is the count of faces per cell. |
proxy | The hdf proxy which contains the datasets given inthis method by means of path. |
faceIndicesPerCell | Each item defines the index of the face of a cell. There must be a count of faceCountPerCell * cellCount. |
nodeIndicesPerFace | Each item defines the index of the node of a face. There must be a count of nodeCountPerFace * faceCount. |
void UnstructuredGridRepresentation::setHexahedraOnlyGeometryUsingExistingDatasets | ( | const std::string & | cellFaceIsRightHanded, |
const std::string & | points, | ||
ULONG64 | pointCount, | ||
ULONG64 | faceCount, | ||
resqml2::AbstractHdfProxy * | proxy, | ||
const std::string & | faceIndicesPerCell, | ||
const std::string & | nodeIndicesPerFace | ||
) |
Set a geometry which is only defined by means of tetrahedra using some existing hdf5 dataset. This geometry only contains hexahedra.
isRightHanded | The path to the hdf5 dataset in the hdf proxy where a boolean mask is used to indicate which cell faces have an outwardly directed normal following a right hand rule. Array length is the sum of the cell face count per cell, and the data follows the order of the faces per cell RESQMLlist-of-lists. |
points | The path to the hdf5 dataset in the hdf proxy where all the XYZ points defining the nodes of the unstructured grid are defined. There must a double count of pointCount * 3. |
pointCount | The count of points defining the nodes of this unstructured grid. |
faceCount | The count of faces in this unstructured grid. Be aware this count does not duplicate shared faces. Most of time, you have less faceCount than the last value of faceIndicesCumulativeCountPerCell which is the count of faces per cell. |
proxy | The hdf proxy which contains the datasets given inthis method by means of path. |
faceIndicesPerCell | The path to the hdf5 dataset in the hdf proxy where each item defines the index of the face of a cell. There must be a count of faceCountPerCell * cellCount. |
nodeIndicesPerFace | The path to the hdf5 dataset in the hdf proxy where each item defines the index of the node of a face. There must be a count of nodeCountPerFace * faceCount. |
void UnstructuredGridRepresentation::setTetrahedraOnlyGeometry | ( | unsigned char * | cellFaceIsRightHanded, |
double * | points, | ||
ULONG64 | pointCount, | ||
ULONG64 | faceCount, | ||
resqml2::AbstractHdfProxy * | proxy, | ||
ULONG64 * | faceIndicesPerCell, | ||
ULONG64 * | nodeIndicesPerFace | ||
) |
Set a geometry which is only defined by means of tetrahedra and creates corresponding HDF5 datasets. This geometry only contains tetrahedra.
isRightHanded | Boolean mask used to indicate which cell faces have an outwardly directed normal following a right hand rule. Array length is the sum of the cell face count per cell, and the data follows the order of the faces per cell RESQMLlist-of-lists. |
points | All the XYZ points defining the nodes of the unstructured grid. There must a double count of pointCount * 3. |
pointCount | The count of points defining the nodes of this unstructured grid. |
faceCount | The count of faces in this unstructured grid. Be aware this count does not duplicate shared faces. Most of time, you have less faceCount than the last value of faceIndicesCumulativeCountPerCell which is the count of faces per cell. |
proxy | The hdf proxy which contains the datasets given inthis method by means of path. |
faceIndicesPerCell | Each item defines the index of the face of a cell. There must be a count of faceCountPerCell * cellCount. |
nodeIndicesPerFace | Each item defines the index of the node of a face. There must be a count of nodeCountPerFace * faceCount. |
void UnstructuredGridRepresentation::setTetrahedraOnlyGeometryUsingExistingDatasets | ( | const std::string & | cellFaceIsRightHanded, |
const std::string & | points, | ||
ULONG64 | pointCount, | ||
ULONG64 | faceCount, | ||
resqml2::AbstractHdfProxy * | proxy, | ||
const std::string & | faceIndicesPerCell, | ||
const std::string & | nodeIndicesPerFace | ||
) |
Set a geometry which is only defined by means of tetrahedra using some existing hdf5 dataset. This geometry only contains tetrahedra.
isRightHanded | The path to the hdf5 dataset in the hdf proxy where a boolean mask is used to indicate which cell faces have an outwardly directed normal following a right hand rule. Array length is the sum of the cell face count per cell, and the data follows the order of the faces per cell RESQMLlist-of-lists. |
points | The path to the hdf5 dataset in the hdf proxy where all the XYZ points defining the nodes of the unstructured grid are defined. There must a double count of pointCount * 3. |
pointCount | The count of points defining the nodes of this unstructured grid. |
faceCount | The count of faces in this unstructured grid. Be aware this count does not duplicate shared faces. Most of time, you have less faceCount than the last value of faceIndicesCumulativeCountPerCell which is the count of faces per cell. |
proxy | The hdf proxy which contains the datasets given inthis method by means of path. |
faceIndicesPerCell | The path to the hdf5 dataset in the hdf proxy where each item defines the index of the face of a cell. There must be a count of faceCountPerCell * cellCount. |
nodeIndicesPerFace | The path to the hdf5 dataset in the hdf proxy where each item defines the index of the node of a face. There must be a count of nodeCountPerFace * faceCount. |
void UnstructuredGridRepresentation::unloadGeometry | ( | ) |
Unload the split information from memory.