Options
All
  • Public
  • Public/Protected
  • All
Menu

Class Isosurface

Specification of an isosurface (both parameters and attributes) in a RemoteModel.

Use this object to control the settings and attributes of an isosurface. The isosurface is defined by specifying the scalar to compute from (with isoScalarResultId) and the value to compute the surface for (with isoValue). The result is a surface within the model containing all points where the scalar result has the given value.

You can map any scalar result onto the isosurface with mapScalarResultId and also map a vector result with mapVectorResultId. The settings for the mapped results can be controlled with the ScalarSettings and VectorSettings objects.

To create an isosurface, use RemoteModel.addIsosurface.

Example: Show an isosurface

   var modelDir = myModel.modelDirectory;

   // Add iso surface if we have a scalar result
   if (modelDir.scalarResultArray.length > 0) {
       var iso = myModel.addIsosurface();
       iso.isoScalarResultId = modelDir.scalarResultArray[0].id;

       if (myModel.getScalarResultMinimumValue(iso.isoScalarResultId) != undefined) {
           iso.isoValue = (myModel.getScalarResultMinimumValue(iso.isoScalarResultId)
                 + myModel.getScalarResultMaximumValue(iso.isoScalarResultId))/2;
       } else {
           iso.isoValue = 0.5;
       }

       if (modelDir.scalarResultArray.length > 1) {
           iso.mapScalarResultId = modelDir.scalarResultArray[1].id;
       } else {
           iso.mapScalarResultId = modelDir.scalarResultArray[0].id;
       }
   }

   // Set model to outline to show the cutting planes
   myModel.setDrawStyleAllParts(cee.ug.DrawStyle.OUTLINE);

This code sample produces the following image in the 3D Viewer:

alt text

Hierarchy

  • Isosurface

Index

Accessors

computeFromVisibleParts

computeFromVisibleParts: boolean

If set to true, the isosurface will be computed from only the visible parts. Any part that is not visible will not contribute to the isosurface.

highlight

highlight: boolean

Whether the isosurface should be highlighted.

Readonly id

id: number

The id of the isosurface. This is assigned by the system when you call RemoteModel.addIsosurface and is used to identify the isosurface.

Readonly isPrecomputed

isPrecomputed: boolean

Is true if the isosurface is precomputed and cannot be changed

isoScalarResultId

isoScalarResultId: number

The scalar result to compute the isosurface from. This property is mandatory and must refer to one of the scalar results in ModelDirectory.scalarResultArray.

isoValue

isoValue: number

The value to compute the isosurface from. The value of the scalar result with id isoScalarResultId will be equal to this value at all points on the isosurface.

mapScalarResultId

mapScalarResultId: number

The id of the scalar result to show on the isosurface.

This id must refer to one of the scalar results in ModelDirectory.scalarResultArray. You can change the settings for the scalar with the ScalarSettings object.

Set to -1 to show no scalars on the isosurface.

mapVectorResultId

mapVectorResultId: number

The id of the vector result to show on the isosurface. One vector will be shown in each node of the surface.

This id must refer to one of the vector results in ModelDirectory.vectorResultArray. The settings for the vector arrows can be changed with the VectorSettings object.

Set to -1 to show no vectors on the isosurface.

opacity

opacity: number

Opacity of the isosurface. 0.0 means fully transparent (invisible), 1.0 means fully opaque.

surfaceColor

surfaceColor: Color3Like

The color of the isosurface if not showing a result (mapScalarResultId = -1)

visible

visible: boolean

Visibility of the isosurface. Use this to show or hide a isosurface in the 3D Viewer.

Methods

getAsProperties

  • Gets the settings for this isosurface as a Plain Old JavaScript Object (POJO).

    Returns IsosurfaceProperties

setFromProperties

  • Applies the settings in the given properties object to this isosurface.

    Parameters

    Returns void

Generated using TypeDoc