# Envision 1.1

November 25, 2022 - SHA: 68b113ab

## New Features

### CAE-848 cee.ug.ScalarSettings: Custom continuous color scheme support

Added support for specifying a custom color mapping for continuous color legends. You can provide an array of colors and the legend will then be interpolated between these colors. If values are provided the legend will have the given color at the given value. If no values are provided the colors will be evenly spaced.

    scalarSettings.setCustomContinuousColorArr([
        {r: 148/255, g:   0/255, b: 211/255},
        {r:  75/255, g:   0/255, b: 130/255},
        {r:   0/255, g:   0/255, b: 255/255},
        {r:   0/255, g: 255/255, b:   0/255},
        {r: 255/255, g: 255/255, b:   0/255},
        {r: 255/255, g: 127/255, b:   0/255},
        {r: 255/255, g:   0/255, b:   0/255},
    ], [0,1,2,3,4,5,6]);

    scalarSettings.setCustomContinuousColorArr(
    [
        { r: 0.9, g: 0.9, b: 0.9 },
        { r: 1, g: 0, b: 0 }
    ], [0, 1000]);

    scalarSettings.setCustomContinuousColorArr([
        {r: 148/255, g:   0/255, b: 211/255},
        {r:  75/255, g:   0/255, b: 130/255},
        {r:   0/255, g:   0/255, b: 255/255},
        {r:   0/255, g: 255/255, b:   0/255},
        {r: 255/255, g: 255/255, b:   0/255},
        {r: 255/255, g: 127/255, b:   0/255},
        {r: 255/255, g:   0/255, b:   0/255},
    ], [0, 0.33, 0.66, 1, 5.5, 5.9, 6.3]);

See `cee.ug.ScalarSettings.setCustomContinuousColorArr()` for more info.

Note

Setting `cee.ug.ScalarSettings..colorScheme = cee.ug.ColorScheme.CUSTOM` was never intended to be a valid operation and this is now documented and the property will throw if this is tried.

### CAE-867 Element edge, face and node DataSets

Added support for element edge, element face and element node sets in Envision Web and VTFx.

CeeVTFx:

- Added `ELEMENT_FACE`, `ELEMENT_EDGE`, `ELEMENT_NODE` and `NODE` as supported item types in `cee::vtfx::SetBlock`.
- Added `itemSubIndex` to `cee::vtfx::SetItemGroup` in order to specify a local face, edge, node index for these new set types.
- Added new example VTFxSets which showcases how to use sets in VTFx.

Envision Web: (cee.ug)

- Added `elementFaceIndex`, `elementEdgeIndex` and `elementNodeIndex` to `cee.ug.HitItem`.
- Added itemType to `cee.ug.SetInfo`
- Added new query `QuerySetItems` to get items in a given set. This has an option to also return the tesselation of the set items (triangles for element face sets, lines for element edge sets and points for element node/node sets). This is useful for showing the sets by feeding these tessellations into the Markup or Geometry model.

Updated documentation to show element edge and surface order for Envision Desktop and VTFx:

Screenshot from new documentation

Note: Full support in Envision Desktop is coming in a later version, as well as support in Data Providers.

### CAE-870 Add cug-server to examples docker installation

The Envision distribution demo (http://envision.ceetron.com) now has a CugServer running to the CUG examples should work as intended.

### CAE-876 cee.ug.CuttingPlane: Eye-lift support for cutting planes

Added a setting for giving cutting planes a visual priority (eye-lift) to control z-fighting when the cutting plane is competing against other geometry.

See `cee.ug.CuttingPlane.eyeLift` for more info.

### CAE-879 Added Data Provider Framework documentation to the Envision Desktop documentation

The documentation for the Data Provider Framework is now a part of the Envision Documentation.

### CAE-881 The web ugServer is now built with CentOS7 and only requires glibc 2.17

The server for RemoteModel (server/UgServer) is now built with CentOS7 and requires only glibc 2.17. The previous requirement was Ubuntu16 (glibc 2.23).

### CAE-885 Add support for serving web apps through CUG server

- Add support to CUG server for serving web apps over same port
- Add `CEW_CUGS_PUBLIC_DIR` env var for specifying dir to be served statically
- Add `CEW_CUGS_CONFIGURE_EXPRESS_APP_JS_FILE` env var for providing extra routes required by the app
- Move status route to /status
- Rename docker container models dir from “TestModels” to more generic name “Models”

### CAE-888 Add DataProviderFramework/ResultCalculatorFramework to Envision Desktop distribution

Added the Data Provider Framework and the Result Calculator Framework distribution to Envision Desktop.

### CAE-895 Add interface name to SimulationInfo

Added name of interface (file reader / data provider) currently used by RemoteModel to SimulationInfo (e.g. NASTRAN, ABAQUS, OpenFOAM, etc)

See `cee.ug.SimulationInfo.interfaceName` for more info.

### CAE-904 cee.ug.CuttingPlane: Support for turning the light on/off

Add support for disabling lighting of cutting planes. This can be useful to see the colors on the cutting plane without shading effects.

See `cee.ug.CuttingPlane.lighting` for more info.

### CAE-907 Add OpenFOAM data provider to Envision Desktop distribution

The OpenFOAM data provider is now distributed as a part of Envision for Desktop.

### CAE-910 Upgrade Envision Desktop and Web to use CEETRON SAM 1.0.1

Upgrade Envision Desktop and Web to use CEETRON SAM 1.0.1

## Fixed Bugs

### CAE-756 VisualizationPartQuery: Crash when computing surface path on nodes connected to null-surface triangles

Fixed a crash when trying to do a surface path query starting on a beam or a point element.

### CAE-852 Default value for MODEL_PATH in server/UgServer/Main.js is wrong

Fixed the model path based on the package reorganization for Envision 1.0

### CAE-853 CugServer build fails for typescript 3.9

Fixed so you can compile the CugServer with TypeScript 3.9

### CAE-868 Web: BuildYourFirstApp/2-Viewer: The initial camera is not set as intended

The callback to the openModel() was not correct in the example so setting the initial camera did not work.

### CAE-878 ug.ScalarSettings.scalingConstantTerm and scalingFirstDegreeTerm not applied to legends

The use of unit conversion (setting a linear transformation of the results on the legend) did not always work as intended.

### CAE-880 Assertion failed if using continuous legend bar and setting same min and max range values

When using a continuous legend mapping (numLevels = 0) the client would assert if min was set to the same as max.

### CAE-892 HitItem returns undefined intersectionPointResult value for cutting plane when having parts without results

The intersectionPointResult value in cee.ug.HitItem was undefined or wrong if a model had some parts without any results defined.

### CAE-902 CugServer: CEW_CUGS_CONFIGURE_EXPRESS_APP_JS_FILE should be relative to current dir rather than Main.js

Changed the behavior of the `CEW_CUGS_CONFIGURE_EXPRESS_APP_JS_FILE` environment.

Conversation saved
HOOPSY BETA

### Hello! I'm HOOPSY

Your multilingual generative AI assistant for documentation. Ask me anything about HOOPS Envision for Desktop in your own language, 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...