| 
    QGIS API Documentation 3.99.0-Master (f78f5286a64)
    
   | 
 
A child rule for a QgsRuleBased3DRenderer. More...
#include <qgsrulebased3drenderer.h>
Public Types | |
| enum | RegisterResult { Filtered = 0 , Inactive , Registered } | 
| The result of registering a rule.  More... | |
Public Member Functions | |
| Rule (const Rule &rh)=delete | |
| Rule (QgsAbstract3DSymbol *symbol, const QString &filterExp=QString(), const QString &description=QString(), bool elseRule=false) | |
takes ownership of symbol, symbol may be nullptr   | |
| ~Rule () | |
| bool | active () const | 
| Returns if this rule is active.   | |
| void | appendChild (QgsRuleBased3DRenderer::Rule *rule) | 
| add child rule, take ownership, sets this as parent   | |
| QgsRuleBased3DRenderer::RuleList & | children () | 
| Returns all children rules of this rule.   | |
| const QgsRuleBased3DRenderer::RuleList & | children () const | 
| Returns all children rules of this rule.   | |
| QgsRuleBased3DRenderer::Rule * | clone () const | 
| clone this rule, return new instance   | |
| void | createHandlers (QgsVectorLayer *layer, RuleToHandlerMap &handlers) const | 
| add handlers   | |
| QgsRuleBased3DRenderer::RuleList | descendants () const | 
| Returns all children, grand-children, grand-grand-children, grand-gra... you get it.   | |
| QString | description () const | 
| A human readable description for this rule.   | |
| QString | filterExpression () const | 
| A filter that will check if this rule applies.   | |
| QgsRuleBased3DRenderer::Rule * | findRuleByKey (const QString &key) | 
| Find a rule thanks to its key.   | |
| const QgsRuleBased3DRenderer::Rule * | findRuleByKey (const QString &key) const | 
| Try to find a rule given its unique key.   | |
| void | insertChild (int i, QgsRuleBased3DRenderer::Rule *rule) | 
| add child rule, take ownership, sets this as parent   | |
| bool | isElse () const | 
| Check if this rule is an ELSE rule.   | |
| Rule & | operator= (const Rule &rh)=delete | 
| QgsRuleBased3DRenderer::Rule * | parent () | 
| The parent rule.   | |
| const QgsRuleBased3DRenderer::Rule * | parent () const | 
| The parent rule.   | |
| void | prepare (const Qgs3DRenderContext &context, QSet< QString > &attributeNames, const QgsVector3D &chunkOrigin, RuleToHandlerMap &handlers) const | 
| call prepare() on handlers and populate attributeNames   | |
| RegisterResult | registerFeature (QgsFeature &feature, Qgs3DRenderContext &context, RuleToHandlerMap &handlers) const | 
| register individual features   | |
| void | removeChildAt (int i) | 
| delete child rule   | |
| QString | ruleKey () const | 
| Unique rule identifier (for identification of rule within labeling, used as provider ID)   | |
| QDomElement | save (QDomDocument &doc, const QgsReadWriteContext &context) const | 
| store labeling info to XML element   | |
| void | setActive (bool state) | 
| Sets if this rule is active.   | |
| void | setDescription (const QString &description) | 
| Set a human readable description for this rule.   | |
| void | setFilterExpression (const QString &filterExp) | 
| Set the expression used to check if a given feature shall be rendered with this rule.   | |
| void | setIsElse (bool iselse) | 
| Sets if this rule is an ELSE rule.   | |
| void | setRuleKey (const QString &key) | 
| Override the assigned rule key (should be used just internally by rule-based renderer)   | |
| void | setSymbol (QgsAbstract3DSymbol *symbol) | 
Sets new symbol (or nullptr). Deletes old symbol if any.   | |
| QgsAbstract3DSymbol * | symbol () const | 
| Returns the labeling settings.   | |
Static Public Member Functions | |
| static QgsRuleBased3DRenderer::Rule * | create (const QDomElement &ruleElem, const QgsReadWriteContext &context) | 
| Create a rule from an XML definition.   | |
A child rule for a QgsRuleBased3DRenderer.
Definition at line 73 of file qgsrulebased3drenderer.h.
The result of registering a rule.
| Enumerator | |
|---|---|
| Filtered | The rule does not apply.  | 
| Inactive | The rule is inactive.  | 
| Registered | Something was registered.  | 
Definition at line 84 of file qgsrulebased3drenderer.h.
| QgsRuleBased3DRenderer::Rule::Rule | ( | QgsAbstract3DSymbol * | symbol, | 
| const QString & | filterExp = QString(),  | 
        ||
| const QString & | description = QString(),  | 
        ||
| bool | elseRule = false  | 
        ||
| ) | 
takes ownership of symbol, symbol may be nullptr 
Definition at line 52 of file qgsrulebased3drenderer.cpp.
| QgsRuleBased3DRenderer::Rule::~Rule | ( | ) | 
Definition at line 62 of file qgsrulebased3drenderer.cpp.
      
  | 
  delete | 
      
  | 
  inline | 
Returns if this rule is active.
true if the rule is active Definition at line 114 of file qgsrulebased3drenderer.h.
| void QgsRuleBased3DRenderer::Rule::appendChild | ( | QgsRuleBased3DRenderer::Rule * | rule | ) | 
add child rule, take ownership, sets this as parent
Definition at line 115 of file qgsrulebased3drenderer.cpp.
      
  | 
  inline | 
Returns all children rules of this rule.
Definition at line 178 of file qgsrulebased3drenderer.h.
      
  | 
  inline | 
Returns all children rules of this rule.
Definition at line 171 of file qgsrulebased3drenderer.h.
| QgsRuleBased3DRenderer::Rule * QgsRuleBased3DRenderer::Rule::clone | ( | ) | const | 
clone this rule, return new instance
Definition at line 166 of file qgsrulebased3drenderer.cpp.
      
  | 
  static | 
Create a rule from an XML definition.
| ruleElem | The XML rule element | 
| context | reading context | 
Definition at line 177 of file qgsrulebased3drenderer.cpp.
| void QgsRuleBased3DRenderer::Rule::createHandlers | ( | QgsVectorLayer * | layer, | 
| QgsRuleBased3DRenderer::RuleToHandlerMap & | handlers | ||
| ) | const | 
add handlers
Definition at line 246 of file qgsrulebased3drenderer.cpp.
| QgsRuleBased3DRenderer::RuleList QgsRuleBased3DRenderer::Rule::descendants | ( | ) | const | 
Returns all children, grand-children, grand-grand-children, grand-gra... you get it.
Definition at line 76 of file qgsrulebased3drenderer.cpp.
      
  | 
  inline | 
A human readable description for this rule.
Definition at line 107 of file qgsrulebased3drenderer.h.
      
  | 
  inline | 
A filter that will check if this rule applies.
Definition at line 100 of file qgsrulebased3drenderer.h.
| QgsRuleBased3DRenderer::Rule * QgsRuleBased3DRenderer::Rule::findRuleByKey | ( | const QString & | key | ) | 
Find a rule thanks to its key.
| key | The key of the rule to find | 
nullptr if not found Definition at line 152 of file qgsrulebased3drenderer.cpp.
| const QgsRuleBased3DRenderer::Rule * QgsRuleBased3DRenderer::Rule::findRuleByKey | ( | const QString & | key | ) | const | 
Try to find a rule given its unique key.
Definition at line 136 of file qgsrulebased3drenderer.cpp.
| void QgsRuleBased3DRenderer::Rule::insertChild | ( | int | i, | 
| QgsRuleBased3DRenderer::Rule * | rule | ||
| ) | 
add child rule, take ownership, sets this as parent
Definition at line 122 of file qgsrulebased3drenderer.cpp.
      
  | 
  inline | 
Check if this rule is an ELSE rule.
true if this rule is an else rule Definition at line 121 of file qgsrulebased3drenderer.h.
      
  | 
  inline | 
      
  | 
  inline | 
| void QgsRuleBased3DRenderer::Rule::prepare | ( | const Qgs3DRenderContext & | context, | 
| QSet< QString > & | attributeNames, | ||
| const QgsVector3D & | chunkOrigin, | ||
| QgsRuleBased3DRenderer::RuleToHandlerMap & | handlers | ||
| ) | const | 
call prepare() on handlers and populate attributeNames
Definition at line 265 of file qgsrulebased3drenderer.cpp.
| QgsRuleBased3DRenderer::Rule::RegisterResult QgsRuleBased3DRenderer::Rule::registerFeature | ( | QgsFeature & | feature, | 
| Qgs3DRenderContext & | context, | ||
| QgsRuleBased3DRenderer::RuleToHandlerMap & | handlers | ||
| ) | const | 
register individual features
Definition at line 290 of file qgsrulebased3drenderer.cpp.
| void QgsRuleBased3DRenderer::Rule::removeChildAt | ( | int | i | ) | 
delete child rule
Definition at line 129 of file qgsrulebased3drenderer.cpp.
      
  | 
  inline | 
Unique rule identifier (for identification of rule within labeling, used as provider ID)
Definition at line 124 of file qgsrulebased3drenderer.h.
| QDomElement QgsRuleBased3DRenderer::Rule::save | ( | QDomDocument & | doc, | 
| const QgsReadWriteContext & | context | ||
| ) | const | 
store labeling info to XML element
Definition at line 217 of file qgsrulebased3drenderer.cpp.
      
  | 
  inline | 
Sets if this rule is active.
| state | Determines if the rule should be activated or deactivated | 
Definition at line 151 of file qgsrulebased3drenderer.h.
      
  | 
  inline | 
Set a human readable description for this rule.
| description | Description | 
Definition at line 145 of file qgsrulebased3drenderer.h.
      
  | 
  inline | 
Set the expression used to check if a given feature shall be rendered with this rule.
| filterExp | An expression | 
Definition at line 134 of file qgsrulebased3drenderer.h.
      
  | 
  inline | 
Sets if this rule is an ELSE rule.
| iselse | If true, this rule is an ELSE rule  | 
Definition at line 158 of file qgsrulebased3drenderer.h.
      
  | 
  inline | 
Override the assigned rule key (should be used just internally by rule-based renderer)
Definition at line 162 of file qgsrulebased3drenderer.h.
| void QgsRuleBased3DRenderer::Rule::setSymbol | ( | QgsAbstract3DSymbol * | symbol | ) | 
Sets new symbol (or nullptr). Deletes old symbol if any. 
Definition at line 68 of file qgsrulebased3drenderer.cpp.
      
  | 
  inline | 
Returns the labeling settings.
May return nullptr. 
Definition at line 94 of file qgsrulebased3drenderer.h.