Creating ICE Trees after you create a cluster


In brief: don’t click Create ICE Tree immediately after you create a cluster that you want to use in your ICE tree, because the ICE tree will be created on the cluster. And the ICE tree will be in the wrong place in the operator stack.

Check this out: in the ICE Tree view expolorer, I have two ICETree operators with the same name.

So, how did this happen? Like this:

  • Create a polygon cluster.
  • In the ICE Tree view, click Create ICE Tree (this creates an ICETree on the cluster, not on the mesh).
  • Select the mesh object.
  • In the ICE Tree view, click Create ICE Tree (this ICETree is on the mesh).

This can lead to problems when you use the cluster in the ICE tree. For example, if you use IsElement, it will return False for everything, and NbElements will return 0.

To understand why, take a look at the dump of the connection stack.

Line 6 is the ICETree on the cluster. That ICETree is below the ops that create the cluster, so you cannot use IsElement in that ICETree.

# sphere1.polymsh.modelingmarker
# sphere1.polymsh.ICETree (out)
# sphere1.polymsh.ICETree (in)
# sphere1.polymsh.cls.poly.clslist.Polygon.AddToClsOp (out)
# sphere1.polymsh.cls.poly.default_Polygon.SetClsOp (out)
# sphere1.polymsh.ICETree (in)
# Unnamed Operator (out)
# sphere1.polymsh.geom (in)

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s