
Input Processing / 3D Drawing Takes a Long Time
Processing of the geometry for 3D display as polygons may run into trouble if there are extremely complicated cell descriptions. We have encountered an extremely egregious case of a reactor containment wall with several dozen small cylindrical penetrations. For these cells, the polygonalization process took a very long time before it failed. An alternate cell description should be introduced for such cells. For the containment model, we used an alternate description for the wall that did not contain the penetrations.
If a model will be used many times, consider writing a polygon file for that model. When the model is reloaded, the polygons are taken from the file rather than calculated. The same file can be used for similar models that are extensions of the original.
Mortiz will write a message when the time required to polygonalize a cell exceeds the threshold value entered on the 3D Control property page. Attention can then be given to the cells that take to longest time.
An option on the 3D Options property page bypasses polygonalization for cells that are invisible in 3D. Setting this option and setting the offending cells to be transparent in 3D (ST or QT commands) will reduce the processing time. . Setting the 3D invisibility density on the 3D Options property page to slightly greater than the density of air will prevent polygonalization of air cells that are often complicated.
Cells polygonalized with the combinatorial triangles algorithm may require a long time to process, especially with complicated cell descriptions. The TriPoly Surface Limit on the 3D Control property page prohibits use of the algorithm for cell descriptions that have more surfaces and/or solid bodies than the limit. Interrupt Polyg’n if Time > N (msec) on the same page bails out of the algorithm if the elapsed time when processing a cell (or part of a cell) exceeds the value. We are actively investigating methods to speed up the algorithm and make it more robust.
Cell descriptions containing parentheses and unions are expanded to a sequence of signed surfaces separated by unions. For example,1 (2 : -3) 4is expanded to1 2 4 : 1 -3 4. Each surface sequence between the union operators is a part. The expansion is terminated if more than N parts results where N is the value of Union Part Limit on the 3D Control property page. The limit is not used if N <= 0.
If very complicated cell descriptions are present, it is very important that a finite limit be present. Otherwise, the expansion can lead to hundreds of thousands of parts and an apparently hung Moritz.
Models that result in lots of polygons and other 3D primitives may take a long time to draw in the 3D window. How much is `lots' depends on the computer's graphics processing capability. Trouble most often occurs with large lattices. See the sections on large lattices and scan lattices for techniques on coping.
Where possible, consider replacing a complicated cell with an equivalent number of simpler cells. Consider also rewriting cell descriptions to use a fewer number of parentheses.
As a last resort, bypass polygonalization of all cells on the 3D Advanced Options page or iconify the 3D window so that nothing is drawn.
| White Rock Science http://www.whiterockscience.com/wrs.html 505 672 1105 |