# Envision 1.9

December 20, 2023 - SHA: e2e38f7d

CEETRON Envision for Web CEETRON Envision for Desktop

## New Features

### CAE-42 Color vectors by any scalar (not just the one shown as fringes)

Added the option for a user to color any mapped vector results by any scalar result data set.

This setting is owned by the VectorSettings class on Desktop and Web. Enable this by setting vector color mode to `VectorSettings::ColorMode::COLOR_BY_MAP_SCALAR` and specifying the scalar result to map onto the vector arrows.

Desktop:

    int vecResId = model->modelSpec().vectorResultIds()[0];
    cee::ug::VectorSettings* vectorSettings = model->vectorSettings(vecResId);

    vectorSettings->setColorMode(cee::ug::VectorSettings::COLOR_BY_MAP_SCALAR);
    vectorSettings->setMapScalarResultId(model->dataSource()->directory()->scalarResultInfos()[1].id());

Web:

    const vecResId = model.modelSpec.vectorResultIdArray[0];
    const vectorSettings = model.getVectorSettingsById(vecResId);

    vectorSettings.colorMode = cee.ug.VectorColorMode.COLOR_BY_MAP_SCALAR;
    vectorSettings.mapScalarResultId = model.modelDirectory.scalarResultArray[1].id;

### CAE-1113 CeeVTFx: Added support for cross sections

Added support for cross section visualization of beam elements in CeeVTFx. The VTFx component has a new class `CrossSectionBlock` to store cross section specifications. Add these by calling `CrossSectionBlock::addCrossSection()` with cross section type and necessary parameters. These cross sections can be mapped to beam elements by adding the elements using `ElementBlock::addElementsWithCrossSections()` specifying both the element and the cross section mapping into the connected `CrossSectionBlock` block.

Supported cross section types are:

- BEAM_IORH
- BEAM_PIPE
- BEAM_BOX
- BEAM_CYLINDER
- BEAM_L
- BEAM_CHANNEL
- BEAM_BAR
- BEAM_UNSYMMETRIC_I
- BEAM_CONE

The distribution contains several examples on creating cross sections. These can be found in the Examples folder and described in the documentation for the VTFx component.

Models exported with cross section data will also be shown in Envision Web.

### CAE-916 Web: Controlling Label visibility with an occluder object

Controlling label visibility with an occluder object is now implemented in CEETRON Envision Web. Note that this feature requires WebGL 2.0 support.

Use `cee.mrk.PartLabels.setOccluderTriMesh()` to set the occluder tri-mesh to use for testing the visibility of the label at the specified index. If the mesh is visible, the label will be visible. If the mesh is occluded, the label will be hidden.

Note

Note the following shortcomings of the current implementation:

- Picking on occluded labels will not work reliably since there is no knowledge of the label’s visibility during picking.
- Screen grabbing may not be reliable since there might be a need for multiple redraws until occlusion query results settle.

### CAE-1244 Added support for Python 3.11

CEETRON Envision Desktop has updated its Python support to include Python 3.11.

## Fixed Bugs

### CAE-1253 CeeVTFx: Assert when calling SetBlock.blockType()

Fixed missing internal enum causing `SetBlock.blockType()` to assert.

### CAE-1252 CeeVTFx: C# casting not implemented

Casting in the C# wrapper needs extra functionality in the swig interface layer. This is missing from all classes inheriting from Block in the CeeVTFx component. Add this to be able to downcast.

    var block = db.blockByIndex(Block.BlockType.SET, 0);
    var setBlock = SetBlock.castFromBaseClass(setBlock);

### CAE-1269 Setting logarithmic mapping and range using properties, shows improper range

Using `ScalarSettings.setFromProperties{logarithmicMapping: , rangeMinimum: , rangeMaximum: }` with range and log mapping together would cause the resulting legend to not show the expected range. Fixed this to ensure that range is not adjusted when logarithmic mapping is set to OFF.

### CAE-1251 CeeVTFx: Transparent logo not supported

Custom logo transparency has now been added to CeeVTFx. Custom logo transparency was fixed in CAE-6 released with Envision 1.8, but was not implemented for the VTFx component.

## Patches

### Envision 1.9.1

February 5, 2024 - SHA: e2e38f7d

CEETRON Envision for Web CEETRON Envision for Desktop

#### CAE-1301 Fixed crash in older VTFx file when ray picking

Fixed crash that occurred when picking on a feature extraction in an older VTFx file.

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...