QGIS API Documentation
3.18.1-Zürich (202f1bf7e5)
|
The feature class encapsulates a single feature including its id, geometry and a list of field/values attributes. More...
#include <qgsfeature.h>
Public Member Functions | |
QgsFeature (const QgsFeature &rhs) | |
Copy constructor. More... | |
QgsFeature (const QgsFields &fields, QgsFeatureId id=FID_NULL) | |
Constructor for QgsFeature. More... | |
QgsFeature (QgsFeatureId id=FID_NULL) | |
Constructor for QgsFeature. More... | |
virtual | ~QgsFeature () |
int | approximateMemoryUsage () const |
Returns the approximate RAM usage of the feature, in bytes. More... | |
QVariant | attribute (const QString &name) const |
Lookup attribute value from attribute name. More... | |
QVariant | attribute (int fieldIdx) const |
Lookup attribute value from its index. More... | |
int | attributeCount () const |
Returns the number of attributes attached to the feature. More... | |
QgsAttributes | attributes () const |
Returns the feature's attributes. More... | |
void | clearGeometry () |
Removes any geometry associated with the feature. More... | |
bool | deleteAttribute (const QString &name) |
Removes an attribute value by field name. More... | |
void | deleteAttribute (int field) |
Deletes an attribute and its value. More... | |
int | fieldNameIndex (const QString &fieldName) const |
Utility method to get attribute index from name. More... | |
QgsFields | fields () const |
Returns the field map associated with the feature. More... | |
QgsGeometry | geometry () const |
Returns the geometry associated with this feature. More... | |
bool | hasGeometry () const |
Returns true if the feature has an associated geometry. More... | |
QgsFeatureId | id () const |
Gets the feature ID for this feature. More... | |
void | initAttributes (int fieldCount) |
Initialize this feature with the given number of fields. More... | |
bool | isValid () const |
Returns the validity of this feature. More... | |
operator QVariant () const | |
Allows direct construction of QVariants from features. More... | |
bool | operator!= (const QgsFeature &other) const |
Compares two features. More... | |
QgsFeature & | operator= (const QgsFeature &rhs) |
Assignment operator. More... | |
bool | operator== (const QgsFeature &other) const |
Compares two features. More... | |
void | padAttributes (int count) |
Resizes the attributes attached to this feature by appending the specified count of NULL values to the end of the existing attributes. More... | |
void | resizeAttributes (int fieldCount) |
Resizes the attributes attached to this feature to the given number of fields. More... | |
bool | setAttribute (const QString &name, const QVariant &value) |
Insert a value into attribute. More... | |
bool | setAttribute (int field, const QVariant &attr) |
Set an attribute's value by field index. More... | |
void | setAttributes (const QgsAttributes &attrs) |
Sets the feature's attributes. More... | |
void | setFields (const QgsFields &fields, bool initAttributes=false) |
Assign a field map with the feature to allow attribute access by attribute name. More... | |
void | setGeometry (const QgsGeometry &geometry) |
Set the feature's geometry. More... | |
void | setGeometry (std::unique_ptr< QgsAbstractGeometry > geometry) |
Set the feature's geometry. More... | |
void | setId (QgsFeatureId id) |
Sets the feature ID for this feature. More... | |
void | setValid (bool validity) |
Sets the validity of the feature. More... | |
Properties | |
QgsAttributes | attributes |
QgsFields | fields |
QgsGeometry | geometry |
Q_GADGET QgsFeatureId | id |
The feature class encapsulates a single feature including its id, geometry and a list of field/values attributes.
Definition at line 55 of file qgsfeature.h.
QgsFeature::QgsFeature | ( | QgsFeatureId | id = FID_NULL | ) |
QgsFeature::QgsFeature | ( | const QgsFields & | fields, |
QgsFeatureId | id = FID_NULL |
||
) |
Constructor for QgsFeature.
fields | feature's fields |
id | feature id |
Definition at line 44 of file qgsfeature.cpp.
QgsFeature::QgsFeature | ( | const QgsFeature & | rhs | ) |
Copy constructor.
Definition at line 51 of file qgsfeature.cpp.
|
virtual |
Definition at line 82 of file qgsfeature.cpp.
int QgsFeature::approximateMemoryUsage | ( | ) | const |
Returns the approximate RAM usage of the feature, in bytes.
This method takes into account the size of variable elements (strings, geometry, ...), but the value returned should be considered as a lower bound estimation.
Definition at line 334 of file qgsfeature.cpp.
QVariant QgsFeature::attribute | ( | const QString & | name | ) | const |
Lookup attribute value from attribute name.
Field map must be associated using setFields() before this method can be used.
name | The name of the attribute to get |
Definition at line 287 of file qgsfeature.cpp.
QVariant QgsFeature::attribute | ( | int | fieldIdx | ) | const |
Lookup attribute value from its index.
Field map must be associated using setFields() before this method can be used.
fieldIdx | The index of the attribute to get |
Definition at line 279 of file qgsfeature.cpp.
int QgsFeature::attributeCount | ( | ) | const |
Returns the number of attributes attached to the feature.
Definition at line 129 of file qgsfeature.cpp.
QgsAttributes QgsFeature::attributes | ( | ) | const |
Returns the feature's attributes.
Definition at line 124 of file qgsfeature.cpp.
void QgsFeature::clearGeometry | ( | ) |
Removes any geometry associated with the feature.
Definition at line 158 of file qgsfeature.cpp.
bool QgsFeature::deleteAttribute | ( | const QString & | name | ) |
Removes an attribute value by field name.
Field map must be associated using setFields() before this method can be used.
name | The name of the field to delete |
false
if attribute name could not be converted to index (C++ only) false
Definition at line 268 of file qgsfeature.cpp.
void QgsFeature::deleteAttribute | ( | int | field | ) |
Deletes an attribute and its value.
field | the index of the field |
Definition at line 97 of file qgsfeature.cpp.
int QgsFeature::fieldNameIndex | ( | const QString & | fieldName | ) | const |
Utility method to get attribute index from name.
Field map must be associated using setFields() before this method can be used.
fieldName | name of field to get attribute index of |
Definition at line 302 of file qgsfeature.cpp.
QgsFields QgsFeature::fields | ( | ) | const |
Returns the field map associated with the feature.
Definition at line 179 of file qgsfeature.cpp.
QgsGeometry QgsFeature::geometry | ( | ) | const |
Returns the geometry associated with this feature.
If the feature has no geometry, an empty QgsGeometry object will be returned.
Definition at line 103 of file qgsfeature.cpp.
bool QgsFeature::hasGeometry | ( | ) | const |
Returns true
if the feature has an associated geometry.
Definition at line 204 of file qgsfeature.cpp.
QgsFeatureId QgsFeature::id | ( | ) | const |
Gets the feature ID for this feature.
Definition at line 92 of file qgsfeature.cpp.
void QgsFeature::initAttributes | ( | int | fieldCount | ) |
Initialize this feature with the given number of fields.
Discard any previously set attribute data.
fieldCount | Number of fields to initialize |
Definition at line 209 of file qgsfeature.cpp.
bool QgsFeature::isValid | ( | ) | const |
Returns the validity of this feature.
This is normally set by the provider to indicate some problem that makes the feature invalid or to indicate a null feature.
Definition at line 190 of file qgsfeature.cpp.
|
inline |
Allows direct construction of QVariants from features.
Definition at line 582 of file qgsfeature.h.
bool QgsFeature::operator!= | ( | const QgsFeature & | other | ) | const |
Compares two features.
Definition at line 77 of file qgsfeature.cpp.
QgsFeature & QgsFeature::operator= | ( | const QgsFeature & | rhs | ) |
Assignment operator.
Definition at line 56 of file qgsfeature.cpp.
bool QgsFeature::operator== | ( | const QgsFeature & | other | ) | const |
Compares two features.
Definition at line 62 of file qgsfeature.cpp.
void QgsFeature::padAttributes | ( | int | count | ) |
Resizes the attributes attached to this feature by appending the specified count of NULL values to the end of the existing attributes.
Definition at line 227 of file qgsfeature.cpp.
void QgsFeature::resizeAttributes | ( | int | fieldCount | ) |
Resizes the attributes attached to this feature to the given number of fields.
If the new fieldCount is greater than the original number of fields then the additional attributes will be filled with NULL values. All existing attributes will remain unchanged.
If the new fieldCount is less than the original number of fields then the unwanted values will be discarded from the end of the existing attributes.
Definition at line 218 of file qgsfeature.cpp.
bool QgsFeature::setAttribute | ( | const QString & | name, |
const QVariant & | value | ||
) |
Insert a value into attribute.
Returns false
if attribute name could not be converted to index. Field map must be associated using setFields() before this method can be used. The feature will be valid if it was successful
name | The name of the field to set |
value | The value to set |
false
if attribute name could not be converted to index (C++ only) false
Definition at line 256 of file qgsfeature.cpp.
bool QgsFeature::setAttribute | ( | int | field, |
const QVariant & | attr | ||
) |
Set an attribute's value by field index.
The feature will be valid if it was successful.
field | the index of the field to set |
attr | the value of the attribute |
false
, if the field index does not exist false
Definition at line 236 of file qgsfeature.cpp.
void QgsFeature::setAttributes | ( | const QgsAttributes & | attrs | ) |
Sets the feature's attributes.
The feature will be valid after.
attrs | attribute list |
Definition at line 134 of file qgsfeature.cpp.
void QgsFeature::setFields | ( | const QgsFields & | fields, |
bool | initAttributes = false |
||
) |
Assign a field map with the feature to allow attribute access by attribute name.
fields | The attribute fields which this feature holds |
initAttributes | If true , attributes are initialized. Clears any data previously assigned. C++: Defaults to false Python: Defaults to true |
Definition at line 169 of file qgsfeature.cpp.
void QgsFeature::setGeometry | ( | const QgsGeometry & | geometry | ) |
Set the feature's geometry.
The feature will be valid after.
geometry | new feature geometry |
Definition at line 144 of file qgsfeature.cpp.
void QgsFeature::setGeometry | ( | std::unique_ptr< QgsAbstractGeometry > | geometry | ) |
Set the feature's geometry.
Ownership of the geometry is transferred to the feature. The feature will be made valid after calling this method.
This method is a shortcut for calling:
Definition at line 151 of file qgsfeature.cpp.
void QgsFeature::setId | ( | QgsFeatureId | id | ) |
Sets the feature ID for this feature.
id | feature id |
Definition at line 114 of file qgsfeature.cpp.
void QgsFeature::setValid | ( | bool | validity | ) |
Sets the validity of the feature.
validity | set to true if feature is valid |
Definition at line 195 of file qgsfeature.cpp.
|
readwrite |
Definition at line 62 of file qgsfeature.h.
|
readwrite |
Definition at line 62 of file qgsfeature.h.
|
readwrite |
Definition at line 62 of file qgsfeature.h.
|
readwrite |
Definition at line 62 of file qgsfeature.h.