+ /// \return pair of sub-shape type and inner point to identify sub-shape.
+ MODELHIGHAPI_EXPORT
+ virtual TypeInnerPointPair typeInnerPointPair() const;
+
+ /// \return pair of sub-shape type and pair of context name and sub-shape index.
+ MODELHIGHAPI_EXPORT
+ virtual TypeWeakNamingPair typeWeakNamingPair() const;
+
+ /// \return shape type.
+ MODELHIGHAPI_EXPORT
+ virtual std::string shapeType() const;
+
+ /// Shortcut for result()->data()->setName()
+ MODELHIGHAPI_EXPORT
+ void setName(const std::wstring& theName);
+
+ /// Shortcut for result()->data()->name()
+ MODELHIGHAPI_EXPORT
+ std::wstring name() const;
+
+ /// Change result's color
+ MODELHIGHAPI_EXPORT
+ void setColor(int theRed = 0, int theGreen = 0, int theBlue = 0, bool random = false);
+
+ /// Change result's deflection
+ MODELHIGHAPI_EXPORT
+ void setDeflection(double theValue);
+
+ /// Change result's transparency
+ MODELHIGHAPI_EXPORT
+ void setTransparency(double theValue);
+
+ /// Returns the number of sub-elements.
+ MODELHIGHAPI_EXPORT
+ int numberOfSubs() const;
+
+ /// Returns the sub-result by zero-base index.
+ MODELHIGHAPI_EXPORT
+ ModelHighAPI_Selection subResult(int theIndex) const;
+
+protected: