# CDPGeometryInfo

## Functions

| `~CDPGeometryInfo`
void | `addElementGroupInfo`
void | `addElementGroupInfoWithColor`
CDPElementGroupInfo * | `addElementGroupInfo`
void | `setHasAdaptiveGeometry`

## Detailed Description

class `CDPGeometryInfo`

  Contains information about one geometry.

  A geometry contains one or more element groups and one or more node groups. The element groups can have individual node groups, or many element groups can share the same node group.

  There are two ways to define what becomes “parts” in the host application from a data provider:

  1. Each element group becomes one part
  2. Each element group is split into one or more parts based on a per element assignment inside @ the group.

  In the first case, each group becomes a part and the id and the name specified in the CDPGeometryInfo::addElementGroupInfo() is used for the part.

  In the second case, you can add the element group info with the addElementGroupInfo() method (without parameters). You then add information about all the parts produced by this group with the CDPElementGroupInfo::addPartInfo() method.

  There are two restrictions regarding part ids:

  1. Part ids must be unique within one geometry
  2. Part ids cannot span multiple element groups. So in the case of per element part subdivision, each element group must produce unique parts.

  See CDPDataProvider::getGeometry() for more information about how geometries are used.

  Public Functions

  inline virtual `~CDPGeometryInfo`()
  virtual void `addElementGroupInfo`(cdp_int_t partId, const CDPString &name) = 0

    Adds information about one element group.

    By using this method, all the elements in the group will become one part in the host and it will have the given name and id.

  virtual void `addElementGroupInfoWithColor`(cdp_int_t partId, const CDPString &name, const CDPColor4 &color) = 0

    Adds information about one element group.

    By using this method, all the elements in the group will become one part in the host and it will have the given name and id. In addition a default color is provided.

    Note

    You need to specify that your provider is specifying default colors in your derived factory (implementation of CDPDataProviderFactory::getProviderInfo()) by using the CDPDataProviderInfo::setHasDefaultColors() method to tell the host to use the default colors.

  virtual CDPElementGroupInfo *`addElementGroupInfo`() = 0

    Adds information about one element group with sub-group part splitting.

    Use this method if you want to provide per element part assignment within this group. See description above for restrictions regarding use of part ids.

    Use the CDPElementGroupInfo::addPartInfo() method to add meta data about each part produced from this group.

    Per element part ids are provided with the CDPElementGroup::setElementPartIds() method.

  virtual void `setHasAdaptiveGeometry`(bool hasAdaptiveGeo) = 0

    Specifies if this geometry is adaptive or not.

    If set to true, you will be asked to provide a CDPGeometry for each state in the analysis.

    If set to false (default), the same geometry will be used for all states and you will only have to provide this once.

Conversation saved
HOOPSY BETA

### Hello! I'm HOOPSY

Your Docs generative AI assistant. Ask me anything about HOOPS Envision for Desktop or choose a sample question below to start a conversation:

What is HOOPS Envision for Desktop?
What are the latest release notes for HOOPS Envision for Desktop?
How do I start evaluating HOOPS Envision for Desktop?
How do I write my first sample application?
How can I get assistance?

HOOPSY may store conversations according to OpenAI's policy. Responses may not always be accurate.

HOOPSY is thinking...