# Scene

> Python API types

### AlternativeTree

An AlternativeTree is an alternative product structure tree.
Base class: [core.Entity](./core_types.md#entity)


**Frame:**
```mermaid
classDiagram
    class AlternativeTree
    Entity <|-- AlternativeTree
    AlternativeTree : +core.Ident Id
    AlternativeTree : +core.String Name
```

Functions accepting this type or a list of this type as a parameter:

* [scene.getAlternativeTreeRoot](./scene_functions.md#getalternativetreeroot)
* [scene.setVariantTree](./scene_functions.md#setvarianttree)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### AlternativeTreeList

List of [scene.AlternativeTree](./scene_types.md#alternativetree)

***

### AnimChannel

A container of AnimCurves.
Base class: [core.Entity](./core_types.md#entity)


**Frame:**
```mermaid
classDiagram
    class AnimChannel
    Entity <|-- AnimChannel
```

Functions accepting this type or a list of this type as a parameter:

* [scene.addKeyframe](./scene_functions.md#addkeyframe)
* [scene.addKeyframeFromCurrentPosition](./scene_functions.md#addkeyframefromcurrentposition)
* [scene.decimateAnimChannelBySegment](./scene_functions.md#decimateanimchannelbysegment)
* [scene.displayAllKeyframesFromAnimChannel](./scene_functions.md#displayallkeyframesfromanimchannel)
* [scene.displayValueFromAnimChannelAtTime](./scene_functions.md#displayvaluefromanimchannelattime)
* [scene.getAnimChannelInfo](./scene_functions.md#getanimchannelinfo)
* [scene.getAnimChannelOccurrence](./scene_functions.md#getanimchanneloccurrence)
* [scene.getKeyframes](./scene_functions.md#getkeyframes)
* [scene.getMainChannel](./scene_functions.md#getmainchannel)
* [scene.getParentChannel](./scene_functions.md#getparentchannel)
* [scene.getSubChannel](./scene_functions.md#getsubchannel)
* [scene.getSubChannels](./scene_functions.md#getsubchannels)
* [scene.makeDefaultKeyframe](./scene_functions.md#makedefaultkeyframe)
* [scene.removeKeyframe](./scene_functions.md#removekeyframe)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### AnimChannelInfo

Fields

| Type               | Name            | Default | Description |
| ------------------ | --------------- | ------- | ----------- |
| name               | String          |         |             |
| type               | AnimChannelType | SIMPLE  |             |
| mainPropertyBinder | Ident           | 0       |             |
| hasKeyFrames       | Bool            | False   |             |

***

### AnimChannelList

List of [scene.AnimChannel](./scene_types.md#animchannel)

***

### AnimChannelType

Enum of [core.Long](./core_types.md#long)

| Name       | Value |
| ---------- | ----- |
| SIMPLE     | 0     |
| VECTOR3    | 1     |
| QUATERNION | 2     |
| MATRIX4    | 3     |

***

### AnimPropertyBinder

Fields

| Type        | Name        | Default | Description |
| ----------- | ----------- | ------- | ----------- |
| occurrence  | Occurrence  | 0       |             |
| animation   | Animation   | 0       |             |
| mainChannel | AnimChannel | 0       |             |

***

### AnimPropertyBinderList

List of [scene.AnimPropertyBinder](./scene_types.md#animpropertybinder)

***

### Animation

An Animation allows to animate several properties through several AnimPropertyBinder.
Base class: [core.Entity](./core_types.md#entity)


**Frame:**
```mermaid
classDiagram
    class Animation
    Entity <|-- Animation
    Animation : +core.String Name
    Animation : +core.String Group
```

Functions accepting this type or a list of this type as a parameter:

* [scene.addAnimation](./scene_functions.md#addanimation)
* [scene.animatesThisOccurrence](./scene_functions.md#animatesthisoccurrence)
* [scene.bakeAnimation](./scene_functions.md#bakeanimation)
* [scene.deleteAnimation](./scene_functions.md#deleteanimation)
* [scene.displayAllKeyframesFromAnimation](./scene_functions.md#displayallkeyframesfromanimation)
* [scene.getAnimChannelIfExists](./scene_functions.md#getanimchannelifexists)
* [scene.getAnimationInfo](./scene_functions.md#getanimationinfo)
* [scene.getAnimationPropertyBinderLists](./scene_functions.md#getanimationpropertybinderlists)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.listMainChannels](./scene_functions.md#listmainchannels)
* [scene.moveAnimation](./scene_functions.md#moveanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)
* [view.getAnimationPlayerInfo](./view_functions.md#getanimationplayerinfo)
* [view.isAnimationPlaying](./view_functions.md#isanimationplaying)
* [view.pauseAnimation](./view_functions.md#pauseanimation)
* [view.playAnimation](./view_functions.md#playanimation)
* [view.resumeAnimation](./view_functions.md#resumeanimation)
* [view.setAnimationFrame](./view_functions.md#setanimationframe)
* [view.setAnimationLoop](./view_functions.md#setanimationloop)
* [view.setAnimationSpeed](./view_functions.md#setanimationspeed)
* [view.stopAnimation](./view_functions.md#stopanimation)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### AnimationComponent

An Animation component.
Base class: [scene.Component](./scene_types.md#component)


**Frame:**
```mermaid
classDiagram
    class AnimationComponent
    Component <|-- AnimationComponent
    AnimationComponent : +core.Ident Id
```

Functions accepting this type or a list of this type as a parameter:

* [scene.getAnimationComponentPropertyBinderLists](./scene_functions.md#getanimationcomponentpropertybinderlists)
* [scene.getComponentOccurrence](./scene_functions.md#getcomponentoccurrence)
* [scene.getComponentType](./scene_functions.md#getcomponenttype)
* [scene.setComponentOccurrence](./scene_functions.md#setcomponentoccurrence)
* [scene.getAnnotationGroups](./scene_functions.md#getannotationgroups)
* [view.drawCappingPlane](./view_functions.md#drawcappingplane)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### AnimationInfo

Fields

| Type   | Name          | Default | Description |
| ------ | ------------- | ------- | ----------- |
| name   | String        |         |             |
| group  | String        |         |             |
| length | AnimationTime | 0       |             |

***

### AnimationList

List of [scene.Animation](./scene_types.md#animation)

***

### AnimationTime

Base class: [core.ULong](./core_types.md#ulong)


**Frame:**
```mermaid
classDiagram
    class AnimationTime
    ULong <|-- AnimationTime
```

Functions accepting this type or a list of this type as a parameter:

* [scene.addKeyframe](./scene_functions.md#addkeyframe)
* [scene.addKeyframeFromCurrentPosition](./scene_functions.md#addkeyframefromcurrentposition)
* [scene.bakeAnimation](./scene_functions.md#bakeanimation)
* [scene.displayValueFromAnimChannelAtTime](./scene_functions.md#displayvaluefromanimchannelattime)
* [scene.moveAnimation](./scene_functions.md#moveanimation)
* [scene.removeKeyframe](./scene_functions.md#removekeyframe)
* [view.applyPlayingAnimations](./view_functions.md#applyplayinganimations)
* [view.setAnimationFrame](./view_functions.md#setanimationframe)
* [algo.decimateTarget](./algo_functions.md#decimatetarget)
* [polygonal.createJointPlaceholders](./polygonal_functions.md#createjointplaceholders)

***

### Annotation

An annotation.
Base class: [core.Entity](./core_types.md#entity)


**Frame:**
```mermaid
classDiagram
    class Annotation
    Entity <|-- Annotation
    Annotation : +core.Ident Id
    Annotation : +core.String Name
    Annotation : +core.Boolean Visible
```

Functions accepting this type or a list of this type as a parameter:

* [scene.addAnnotationToProductView](./scene_functions.md#addannotationtoproductview)
* [scene.addMeshToAnnotation](./scene_functions.md#addmeshtoannotation)
* [scene.createOccurrenceFromAnnotation](./scene_functions.md#createoccurrencefromannotation)
* [scene.getAnnotationDefinition](./scene_functions.md#getannotationdefinition)
* [scene.getAnnotationListAABB](./scene_functions.md#getannotationlistaabb)
* [scene.setAnnotationToGroup](./scene_functions.md#setannotationtogroup)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### AnnotationDefinition

Annotation definition.
Fields

| Type    | Name                 | Default | Description                           |
| ------- | -------------------- | ------- | ------------------------------------- |
| id      | Annotation           | 0       | The annotation we get the definition. |
| name    | String               |         | Name of the annotation.               |
| visible | Boolean              | False   | Visibility of the annotation.         |
| group   | AnnotationGroup      | 0       | Group of the annotation.              |
| shapes  | TessellatedShapeList |         | Shapes of the annotation.             |

Functions accepting this type or a list of this type as a parameter:

* [scene.createAnnotationFromDefinition](./scene_functions.md#createannotationfromdefinition)

***

### AnnotationDefinitionList

List of [scene.AnnotationDefinition](./scene_types.md#annotationdefinition)

***

### AnnotationGroup

A group of annotation.
Base class: [core.Entity](./core_types.md#entity)


**Frame:**
```mermaid
classDiagram
    class AnnotationGroup
    Entity <|-- AnnotationGroup
    AnnotationGroup : +core.Ident Id
```

Functions accepting this type or a list of this type as a parameter:

* [scene.getAnnotations](./scene_functions.md#getannotations)
* [scene.setAnnotationToGroup](./scene_functions.md#setannotationtogroup)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### AnnotationGroupList

List of [scene.AnnotationGroup](./scene_types.md#annotationgroup)

***

### AnnotationList

List of [scene.Annotation](./scene_types.md#annotation)

Functions accepting this type or a list of this type as a parameter:

* [scene.getAnnotationListAABB](./scene_functions.md#getannotationlistaabb)

***

### BRepShape

A BRepShape is a Shape that contains BRep geometry.
Base class: [scene.Shape](./scene_types.md#shape)


**Frame:**
```mermaid
classDiagram
    class BRepShape
    Shape <|-- BRepShape
    BRepShape : +core.Ident Id
    BRepShape : +core.Entity Model
```

Functions accepting this type or a list of this type as a parameter:

* [geom.applyTransform](./geom_functions.md#applytransform)
* [geom.getEntityAABB](./geom_functions.md#getentityaabb)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### CameraComponent

A camera component.
Base class: [scene.Component](./scene_types.md#component)


**Frame:**
```mermaid
classDiagram
    class CameraComponent
    Component <|-- CameraComponent
    CameraComponent : +core.Ident Id
    CameraComponent : +core.Boolean IsPerspective
    CameraComponent : +core.Real AspectRatio
    CameraComponent : +core.Real Yfov
    CameraComponent : +core.Real Xmag
    CameraComponent : +core.Real Ymag
    CameraComponent : +core.Real Zfar
    CameraComponent : +core.Real Znear
```

Functions accepting this type or a list of this type as a parameter:

* [scene.getComponentOccurrence](./scene_functions.md#getcomponentoccurrence)
* [scene.getComponentType](./scene_functions.md#getcomponenttype)
* [scene.setComponentOccurrence](./scene_functions.md#setcomponentoccurrence)
* [scene.getAnnotationGroups](./scene_functions.md#getannotationgroups)
* [view.drawCappingPlane](./view_functions.md#drawcappingplane)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### Component

A component add behavior to an occurrence.
Base class: [core.Entity](./core_types.md#entity)

Derived classes:

* [AnimationComponent](./scene_types.md#animationcomponent)
* [CameraComponent](./scene_types.md#cameracomponent)
* [ExternalDataComponent](./scene_types.md#externaldatacomponent)
* [JointComponent](./scene_types.md#jointcomponent)
* [LODComponent](./scene_types.md#lodcomponent)
* [LightComponent](./scene_types.md#lightcomponent)
* [Metadata](./scene_types.md#metadata)
* [PMIComponent](./scene_types.md#pmicomponent)
* [Part](./scene_types.md#part)
* [ReferencedDataComponent](./scene_types.md#referenceddatacomponent)
* [SubPartMaterialComponent](./scene_types.md#subpartmaterialcomponent)
* [VariantComponent](./scene_types.md#variantcomponent)


**Frame:**
```mermaid
classDiagram
    class Component
    Entity <|-- Component
        Component <|-- AnimationComponent
    AnimationComponent : +core.Ident Id
        Component <|-- CameraComponent
    CameraComponent : +core.Ident Id
    CameraComponent : +core.Boolean IsPerspective
    CameraComponent : +core.Real AspectRatio
    CameraComponent : +core.Real Yfov
    CameraComponent : +core.Real Xmag
    CameraComponent : +core.Real Ymag
    CameraComponent : +core.Real Zfar
    CameraComponent : +core.Real Znear
        Component <|-- ExternalDataComponent
        Component <|-- JointComponent
    JointComponent : +core.Ident Id
    JointComponent : +core.Entity Joint
        Component <|-- LODComponent
    LODComponent : +core.Ident Id
        Component <|-- LightComponent
    LightComponent : +core.Ident Id
    LightComponent : +ENUM LightType
    LightComponent : +core.Color Color
    LightComponent : +core.Real Power
    LightComponent : +geom.Angle CutOff
        Component <|-- Metadata
    Metadata : +core.Ident Id
        Component <|-- PMIComponent
    PMIComponent : +core.Ident Id
        Component <|-- Part
    Part : +core.Ident Id
    Part : +core.Entity BRepShapeInitial
    Part : +core.Entity BRepShapeModified
    Part : +core.Entity TessellatedShape
    Part : +geom.Matrix4 Transform
        Component <|-- ReferencedDataComponent
    ReferencedDataComponent : +core.Ident Id
    ReferencedDataComponent : +core.String FilePath
    ReferencedDataComponent : +core.String IdPath
    ReferencedDataComponent : +core.String ParentFilePath
        Component <|-- SubPartMaterialComponent
    SubPartMaterialComponent : +core.Ident Id
        Component <|-- VariantComponent
    VariantComponent : +core.Ident Id
    VariantComponent : +core.InheritableBool VariantSensitive
    VariantComponent : +core.String GroupName
```

Functions accepting this type or a list of this type as a parameter:

* [scene.getComponentOccurrence](./scene_functions.md#getcomponentoccurrence)
* [scene.getComponentType](./scene_functions.md#getcomponenttype)
* [scene.setComponentOccurrence](./scene_functions.md#setcomponentoccurrence)
* [scene.getAnnotationGroups](./scene_functions.md#getannotationgroups)
* [view.drawCappingPlane](./view_functions.md#drawcappingplane)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### ComponentChangeType

Enum of [core.Long](./core_types.md#long)

| Name                | Value |
| ------------------- | ----- |
| COMPONENT\_ADDED    | 0     |
| COMPONENT\_REMOVED  | 1     |
| COMPONENT\_MODIFIED | 2     |

***

### ComponentList

List of [scene.Component](./scene_types.md#component)

***

### ComponentType

Enum

| Name                    | Value |
| ----------------------- | ----- |
| Part                    | 0     |
| PMI                     | 1     |
| Light                   | 2     |
| VisualBehavior          | 3     |
| InteractionBehavior     | 4     |
| Metadata                | 5     |
| Variant                 | 6     |
| Animation               | 7     |
| Joint                   | 8     |
| Widget                  | 9     |
| LODComponent            | 10    |
| ExternalDataComponent   | 11    |
| HLODComponent           | 12    |
| CuttingPlaneComponent   | 13    |
| ReferencedDataComponent | 14    |
| CameraComponent         | 15    |
| FeatureComponent        | 16    |
| SubpartMaterial         | 17    |

Functions accepting this type or a list of this type as a parameter:

* [scene.addComponent](./scene_functions.md#addcomponent)
* [scene.addComponents](./scene_functions.md#addcomponents)
* [scene.deleteComponentByType](./scene_functions.md#deletecomponentbytype)
* [scene.deleteComponentsByType](./scene_functions.md#deletecomponentsbytype)
* [scene.getComponent](./scene_functions.md#getcomponent)
* [scene.getComponentByOccurrence](./scene_functions.md#getcomponentbyoccurrence)
* [scene.getComponents](./scene_functions.md#getcomponents)
* [scene.getOccurrencesWithComponent](./scene_functions.md#getoccurrenceswithcomponent)
* [scene.hasComponent](./scene_functions.md#hascomponent)
* [scene.listComponent](./scene_functions.md#listcomponent)

***

### ExternalDataComponent

A ExternalDataComponent is a component that add external data to an occurrence.
Base class: [scene.Component](./scene_types.md#component)


**Frame:**
```mermaid
classDiagram
    class ExternalDataComponent
    Component <|-- ExternalDataComponent
```

Functions accepting this type or a list of this type as a parameter:

* [scene.getComponentOccurrence](./scene_functions.md#getcomponentoccurrence)
* [scene.getComponentType](./scene_functions.md#getcomponenttype)
* [scene.setComponentOccurrence](./scene_functions.md#setcomponentoccurrence)
* [scene.getAnnotationGroups](./scene_functions.md#getannotationgroups)
* [view.drawCappingPlane](./view_functions.md#drawcappingplane)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### Filter

Fields

| Type | Name             | Default | Description |
| ---- | ---------------- | ------- | ----------- |
| id   | Ident            | 0       |             |
| name | String           |         |             |
| expr | FilterExpression |         |             |

***

### FilterExpression

A filter expression (see documentation).
Base class: [core.String](./core_types.md#string)


**Frame:**
```mermaid
classDiagram
    class FilterExpression
    String <|-- FilterExpression
```

Functions accepting this type or a list of this type as a parameter:

* [scene.addFilterToLibrary](./scene_functions.md#addfiltertolibrary)
* [scene.evaluateExpression](./scene_functions.md#evaluateexpression)
* [scene.evaluateExpressionOnOccurrences](./scene_functions.md#evaluateexpressiononoccurrences)
* [scene.evaluateExpressionOnSubTree](./scene_functions.md#evaluateexpressiononsubtree)
* [scene.getFilteredOccurrences](./scene_functions.md#getfilteredoccurrences)
* [algo.configureFunctionLogger](./algo_functions.md#configurefunctionlogger)
* [algo.bakeMaterialPropertyMap](./algo_functions.md#bakematerialpropertymap)
* [algo.bakeOccurrencePropertyMap](./algo_functions.md#bakeoccurrencepropertymap)
* [algo.sawWithAABB](./algo_functions.md#sawwithaabb)
* [algo.sawWithOBB](./algo_functions.md#sawwithobb)
* [algo.sawWithPlane](./algo_functions.md#sawwithplane)
* [cad.configureFunctionLogger](./cad_functions.md#configurefunctionlogger)
* [core.configureFunctionLogger](./core_functions.md#configurefunctionlogger)
* [core.getEvent](./core_functions.md#getevent)
* [core.getEvents](./core_functions.md#getevents)
* [core.getFunction](./core_functions.md#getfunction)
* [core.getFunctions](./core_functions.md#getfunctions)
* [core.getGroup](./core_functions.md#getgroup)
* [core.getGroups](./core_functions.md#getgroups)
* [core.getModuleTypes](./core_functions.md#getmoduletypes)
* [core.getType](./core_functions.md#gettype)
* [core.getTypeAttributes](./core_functions.md#gettypeattributes)
* [core.addWantedToken](./core_functions.md#addwantedtoken)
* [core.checkWebLogin](./core_functions.md#checkweblogin)
* [core.configureLicenseServer](./core_functions.md#configurelicenseserver)
* [core.needToken](./core_functions.md#needtoken)
* [core.ownToken](./core_functions.md#owntoken)
* [core.releaseToken](./core_functions.md#releasetoken)
* [core.releaseWebLicense](./core_functions.md#releaseweblicense)
* [core.removeWantedToken](./core_functions.md#removewantedtoken)
* [core.requestWebLicense](./core_functions.md#requestweblicense)
* [core.retrieveWebLicenses](./core_functions.md#retrieveweblicenses)
* [core.tokenValid](./core_functions.md#tokenvalid)
* [core.parallelStart](./core_functions.md#parallelstart)
* [core.removeModule](./core_functions.md#removemodule)
* [core.pushProgression](./core_functions.md#pushprogression)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getModuleProperty](./core_functions.md#getmoduleproperty)
* [core.getModulePropertyInfo](./core_functions.md#getmodulepropertyinfo)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listModuleProperties](./core_functions.md#listmoduleproperties)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.restoreModulePropertyDefaultValue](./core_functions.md#restoremodulepropertydefaultvalue)
* [core.setModuleProperty](./core_functions.md#setmoduleproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [core.startUndoRedoStep](./core_functions.md#startundoredostep)
* [core.log](./core_functions.md#log)
* [geom.configureFunctionLogger](./geom_functions.md#configurefunctionlogger)
* [material.addUniformProperty](./material_functions.md#adduniformproperty)
* [material.configureFunctionLogger](./material_functions.md#configurefunctionlogger)
* [material.createCustomMaterialPattern](./material_functions.md#createcustommaterialpattern)
* [material.createMaterial](./material_functions.md#creatematerial)
* [material.findCustomMaterialPatternByName](./material_functions.md#findcustommaterialpatternbyname)
* [material.findMaterialsByPattern](./material_functions.md#findmaterialsbypattern)
* [material.findMaterialsByProperty](./material_functions.md#findmaterialsbyproperty)
* [material.getPointsAndMaterialFromText](./material_functions.md#getpointsandmaterialfromtext)
* [material.getUniformPropertyType](./material_functions.md#getuniformpropertytype)
* [material.setCoeffOrTextureProperty](./material_functions.md#setcoeffortextureproperty)
* [material.setColorAlphaProperty](./material_functions.md#setcoloralphaproperty)
* [material.setColorOrTextureProperty](./material_functions.md#setcolorortextureproperty)
* [material.setFragmentShader](./material_functions.md#setfragmentshader)
* [material.setMaterialPattern](./material_functions.md#setmaterialpattern)
* [material.setVertexShader](./material_functions.md#setvertexshader)
* [material.createImageFromData](./material_functions.md#createimagefromdata)
* [polygonal.configureFunctionLogger](./polygonal_functions.md#configurefunctionlogger)
* [polygonal.createMeshFromText](./polygonal_functions.md#createmeshfromtext)
* [scene.configureFunctionLogger](./scene_functions.md#configurefunctionlogger)
* [scene.createOccurrence](./scene_functions.md#createoccurrence)
* [scene.createOccurrenceFromSelection](./scene_functions.md#createoccurrencefromselection)
* [scene.createOccurrenceFromText](./scene_functions.md#createoccurrencefromtext)
* [scene.createOccurrences](./scene_functions.md#createoccurrences)
* [scene.getActivePropertyValue](./scene_functions.md#getactivepropertyvalue)
* [scene.getActivePropertyValues](./scene_functions.md#getactivepropertyvalues)
* [scene.setOccurrenceName](./scene_functions.md#setoccurrencename)
* [scene.findOccurrencesByMetadata](./scene_functions.md#findoccurrencesbymetadata)
* [scene.findOccurrencesByProperty](./scene_functions.md#findoccurrencesbyproperty)
* [scene.createLight](./scene_functions.md#createlight)
* [scene.addMetadata](./scene_functions.md#addmetadata)
* [scene.addMetadataBlock](./scene_functions.md#addmetadatablock)
* [scene.getMetadata](./scene_functions.md#getmetadata)
* [scene.removeMetadata](./scene_functions.md#removemetadata)
* [scene.createAlternativeTree](./scene_functions.md#createalternativetree)
* [scene.createAnimation](./scene_functions.md#createanimation)
* [scene.getSubChannel](./scene_functions.md#getsubchannel)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)
* [scene.addFilterToLibrary](./scene_functions.md#addfiltertolibrary)
* [scene.findFilterByName](./scene_functions.md#findfilterbyname)
* [scene.setReferencedDataComponentPath](./scene_functions.md#setreferenceddatacomponentpath)
* [scene.addAnnotationGroup](./scene_functions.md#addannotationgroup)
* [scene.addVariant](./scene_functions.md#addvariant)
* [scene.duplicateVariant](./scene_functions.md#duplicatevariant)
* [studio.askString](./studio_functions.md#askstring)
* [studio.askYesNo](./studio_functions.md#askyesno)
* [studio.choose](./studio_functions.md#choose)
* [studio.setViewerProperty](./studio_functions.md#setviewerproperty)
* [studio.showMessage](./studio_functions.md#showmessage)
* [view.configureFunctionLogger](./view_functions.md#configurefunctionlogger)
* [view.getViewerProperty](./view_functions.md#getviewerproperty)
* [view.getViewerPropertyInfo](./view_functions.md#getviewerpropertyinfo)
* [view.setViewerProperty](./view_functions.md#setviewerproperty)
* [view.startRecording](./view_functions.md#startrecording)

***

### FilterList

List of [scene.Filter](./scene_types.md#filter)

***

### JointComponent

A joint for rigged animations.
Base class: [scene.Component](./scene_types.md#component)


**Frame:**
```mermaid
classDiagram
    class JointComponent
    Component <|-- JointComponent
    JointComponent : +core.Ident Id
    JointComponent : +core.Entity Joint
```

Functions accepting this type or a list of this type as a parameter:

* [scene.getComponentOccurrence](./scene_functions.md#getcomponentoccurrence)
* [scene.getComponentType](./scene_functions.md#getcomponenttype)
* [scene.setComponentOccurrence](./scene_functions.md#setcomponentoccurrence)
* [scene.getAnnotationGroups](./scene_functions.md#getannotationgroups)
* [view.drawCappingPlane](./view_functions.md#drawcappingplane)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### JointDefinition

Joint definition.
Fields

| Type           | Name      | Default | Description                                 |
| -------------- | --------- | ------- | ------------------------------------------- |
| id             | Joint     | 0       | The joint from which we get the definition. |
| jointComponent | Component | 0       | The JointComponent attached to this joint.  |
| isRoot         | Boolean   | False   | Is this joint the root.                     |
| rootJoint      | Joint     | 0       | The joint used as root.                     |
| parent         | Joint     | 0       | Vertices tangents.                          |
| children       | JointList |         | All direct hildren joint.                   |
| matrix         | Matrix4   |         | Local matrix.                               |
| gloablMatrix   | Matrix4   |         | Global matrix.                              |

***

### JointDefinitionList

List of [scene.JointDefinition](./scene_types.md#jointdefinition)

***

### Keyframe

A keyframe to interpolate an AnimCurve from.
Base class: [core.Entity](./core_types.md#entity)


**Frame:**
```mermaid
classDiagram
    class Keyframe
    Entity <|-- Keyframe
    Keyframe : +core.Ident Id
    Keyframe : +core.Real Value
    Keyframe : +UNKNOWN Time
```

Functions accepting this type or a list of this type as a parameter:

* [scene.getKeyframeParentAnimChannel](./scene_functions.md#getkeyframeparentanimchannel)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### KeyframeList

List of [scene.Keyframe](./scene_types.md#keyframe)

***

### LOD

A Level of Detail (references an Occurrence).
Base class: [core.Entity](./core_types.md#entity)


**Frame:**
```mermaid
classDiagram
    class LOD
    Entity <|-- LOD
    LOD : +core.Ident Id
    LOD : +core.Entity Occurrence
    LOD : +geom.Distance Distance
```

Functions accepting this type or a list of this type as a parameter:

* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### LODComponent

A Levels of Detail component (contains multiple LOD).
Base class: [scene.Component](./scene_types.md#component)


**Frame:**
```mermaid
classDiagram
    class LODComponent
    Component <|-- LODComponent
    LODComponent : +core.Ident Id
```

Functions accepting this type or a list of this type as a parameter:

* [scene.getComponentOccurrence](./scene_functions.md#getcomponentoccurrence)
* [scene.getComponentType](./scene_functions.md#getcomponenttype)
* [scene.setComponentOccurrence](./scene_functions.md#setcomponentoccurrence)
* [scene.getAnnotationGroups](./scene_functions.md#getannotationgroups)
* [view.drawCappingPlane](./view_functions.md#drawcappingplane)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### LODComponentList

List of [scene.LODComponent](./scene_types.md#lodcomponent)

***

### LODList

List of [scene.LOD](./scene_types.md#lod)

***

### LightComponent

A LightComponent is a component that add a light behavior to an occurrence.
Base class: [scene.Component](./scene_types.md#component)


**Frame:**
```mermaid
classDiagram
    class LightComponent
    Component <|-- LightComponent
    LightComponent : +core.Ident Id
    LightComponent : +ENUM LightType
    LightComponent : +core.Color Color
    LightComponent : +core.Real Power
    LightComponent : +geom.Angle CutOff
```

Functions accepting this type or a list of this type as a parameter:

* [scene.getComponentOccurrence](./scene_functions.md#getcomponentoccurrence)
* [scene.getComponentType](./scene_functions.md#getcomponenttype)
* [scene.setComponentOccurrence](./scene_functions.md#setcomponentoccurrence)
* [scene.getAnnotationGroups](./scene_functions.md#getannotationgroups)
* [view.drawCappingPlane](./view_functions.md#drawcappingplane)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### LightType

Enum

| Name             | Value |
| ---------------- | ----- |
| DirectionalLight | 0     |
| PositionalLight  | 1     |
| SpotLight        | 2     |

Functions accepting this type or a list of this type as a parameter:

* [scene.addLightComponent](./scene_functions.md#addlightcomponent)
* [scene.createLight](./scene_functions.md#createlight)

***

### MaterialCount

Fields

| Type     | Name     | Default | Description |
| -------- | -------- | ------- | ----------- |
| material | Material | 0       |             |
| count    | Int      | -1      |             |

***

### MaterialCountList

List of [scene.MaterialCount](./scene_types.md#materialcount)

***

### MergeByRegionsStrategy

Select between:

* NumberOfRegions: [core.Int](./core_types.md#int)

* SizeOfRegions: [geom.Distance](./geom_types.md#distance)
  Functions accepting this type or a list of this type as a parameter:

* [scene.getClusters](./scene_functions.md#getclusters)

* [scene.mergePartOccurrencesByRegions](./scene_functions.md#mergepartoccurrencesbyregions)

***

### MergeHiddenPartsMode

Enum

| Name            | Value |
| --------------- | ----- |
| Destroy         | 0     |
| MakeVisible     | 1     |
| MergeSeparately | 2     |

Functions accepting this type or a list of this type as a parameter:

* [scene.mergeOccurrencesByTreeLevel](./scene_functions.md#mergeoccurrencesbytreelevel)
* [scene.mergePartOccurrences](./scene_functions.md#mergepartoccurrences)
* [scene.mergePartOccurrencesByAssemblies](./scene_functions.md#mergepartoccurrencesbyassemblies)
* [scene.mergePartOccurrencesByFinalAssemblies](./scene_functions.md#mergepartoccurrencesbyfinalassemblies)
* [scene.mergePartOccurrencesByMaterials](./scene_functions.md#mergepartoccurrencesbymaterials)
* [scene.mergePartOccurrencesByName](./scene_functions.md#mergepartoccurrencesbyname)

***

### MergeStrategy

Enum of [core.Int](./core_types.md#int)

| Name                 | Value |
| -------------------- | ----- |
| mergePartOccurrences | 0     |
| MergeByMaterials     | 1     |

Functions accepting this type or a list of this type as a parameter:

* [scene.mergePartOccurrencesByRegions](./scene_functions.md#mergepartoccurrencesbyregions)

***

### Metadata

A metadata is a component that contains all metadata properties of an occurrence.
Base class: [scene.Component](./scene_types.md#component)


**Frame:**
```mermaid
classDiagram
    class Metadata
    Component <|-- Metadata
    Metadata : +core.Ident Id
```

Functions accepting this type or a list of this type as a parameter:

* [scene.addMetadata](./scene_functions.md#addmetadata)
* [scene.addMetadataBlock](./scene_functions.md#addmetadatablock)
* [scene.getMetadata](./scene_functions.md#getmetadata)
* [scene.getMetadatasDefinitions](./scene_functions.md#getmetadatasdefinitions)
* [scene.removeMetadata](./scene_functions.md#removemetadata)
* [scene.getComponentOccurrence](./scene_functions.md#getcomponentoccurrence)
* [scene.getComponentType](./scene_functions.md#getcomponenttype)
* [scene.setComponentOccurrence](./scene_functions.md#setcomponentoccurrence)
* [scene.getAnnotationGroups](./scene_functions.md#getannotationgroups)
* [view.drawCappingPlane](./view_functions.md#drawcappingplane)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### MetadataDefinition

All properties of a metadata component.
Base class: [scene.PropertyValueList](./scene_types.md#propertyvaluelist)


**Frame:**
```mermaid
classDiagram
    class MetadataDefinition
    PropertyValueList <|-- MetadataDefinition
```

Functions accepting this type or a list of this type as a parameter:

* [scene.createMetadatasFromDefinitions](./scene_functions.md#createmetadatasfromdefinitions)

***

### MetadataDefinitionList

List of [scene.MetadataDefinition](./scene_types.md#metadatadefinition)

Functions accepting this type or a list of this type as a parameter:

* [scene.createMetadatasFromDefinitions](./scene_functions.md#createmetadatasfromdefinitions)

***

### MetadataList

List of [scene.Metadata](./scene_types.md#metadata)

Functions accepting this type or a list of this type as a parameter:

* [scene.getMetadatasDefinitions](./scene_functions.md#getmetadatasdefinitions)

***

### Occurrence

An occurrence is the main type of node in the product structure, it can have children and prototypes.
Base class: [geom.GeomEntity](./geom_types.md#geomentity)


**Frame:**
```mermaid
classDiagram
    class Occurrence
    GeomEntity <|-- Occurrence
    Occurrence : +core.Ident Id
    Occurrence : +core.String Name
    Occurrence : +core.InheritableBool Visible
    Occurrence : +core.Entity Material
    Occurrence : +geom.Matrix4 Transform
    Occurrence : +core.Entity Prototype
```

Functions accepting this type or a list of this type as a parameter:

* [algo.assembleCAD](./algo_functions.md#assemblecad)
* [algo.backToInitialBRep](./algo_functions.md#backtoinitialbrep)
* [algo.bakeImpostor](./algo_functions.md#bakeimpostor)
* [algo.bakeVertexAttributes](./algo_functions.md#bakevertexattributes)
* [algo.calculateNormalsInPointClouds](./algo_functions.md#calculatenormalsinpointclouds)
* [algo.crackCADMoebiusStrip](./algo_functions.md#crackcadmoebiusstrip)
* [algo.crackEdges](./algo_functions.md#crackedges)
* [algo.crackMeshEdges](./algo_functions.md#crackmeshedges)
* [algo.createFreeEdgesFromPatches](./algo_functions.md#createfreeedgesfrompatches)
* [algo.createIdentifiedPatchesFromPatches](./algo_functions.md#createidentifiedpatchesfrompatches)
* [algo.createIndexMapFromOccurrences](./algo_functions.md#createindexmapfromoccurrences)
* [algo.createNormals](./algo_functions.md#createnormals)
* [algo.createPointCloudKDTree](./algo_functions.md#createpointcloudkdtree)
* [algo.createTangents](./algo_functions.md#createtangents)
* [algo.createVertexColorFromMaterials](./algo_functions.md#createvertexcolorfrommaterials)
* [algo.createVisibilityPatchesFromPatch](./algo_functions.md#createvisibilitypatchesfrompatch)
* [algo.decimate](./algo_functions.md#decimate)
* [algo.decimateEdgeCollapse](./algo_functions.md#decimateedgecollapse)
* [algo.decimatePointClouds](./algo_functions.md#decimatepointclouds)
* [algo.decimateTarget](./algo_functions.md#decimatetarget)
* [algo.deleteAttribute](./algo_functions.md#deleteattribute)
* [algo.deleteBRepShapes](./algo_functions.md#deletebrepshapes)
* [algo.deleteFreeVertices](./algo_functions.md#deletefreevertices)
* [algo.deleteLines](./algo_functions.md#deletelines)
* [algo.deleteNormals](./algo_functions.md#deletenormals)
* [algo.deletePatches](./algo_functions.md#deletepatches)
* [algo.deletePolygons](./algo_functions.md#deletepolygons)
* [algo.deleteTangents](./algo_functions.md#deletetangents)
* [algo.deleteTextureCoordinates](./algo_functions.md#deletetexturecoordinates)
* [algo.deleteVisibilityPatches](./algo_functions.md#deletevisibilitypatches)
* [algo.evalDecimateErrorForTarget](./algo_functions.md#evaldecimateerrorfortarget)
* [algo.extractNeutralAxis](./algo_functions.md#extractneutralaxis)
* [algo.filletMesh](./algo_functions.md#filletmesh)
* [algo.filterHiddenPolygons](./algo_functions.md#filterhiddenpolygons)
* [algo.filterMeshVertexColors](./algo_functions.md#filtermeshvertexcolors)
* [algo.findBestPivotBetweenOccurrences](./algo_functions.md#findbestpivotbetweenoccurrences)
* [algo.getAllAxisFromCADModel](./algo_functions.md#getallaxisfromcadmodel)
* [algo.getMeshVertexColors](./algo_functions.md#getmeshvertexcolors)
* [algo.getOptimalTextureResolution](./algo_functions.md#getoptimaltextureresolution)
* [algo.getTessellations](./algo_functions.md#gettessellations)
* [algo.getUV3dRatio](./algo_functions.md#getuv3dratio)
* [algo.getVisibilityStats](./algo_functions.md#getvisibilitystats)
* [algo.getVisualComparisonFootprint](./algo_functions.md#getvisualcomparisonfootprint)
* [algo.identifyLinesOfInterest](./algo_functions.md#identifylinesofinterest)
* [algo.identifyPatches](./algo_functions.md#identifypatches)
* [algo.identifySharpEdges](./algo_functions.md#identifysharpedges)
* [algo.invertTangents](./algo_functions.md#inverttangents)
* [algo.lineToTexture](./algo_functions.md#linetotexture)
* [algo.listFeatures](./algo_functions.md#listfeatures)
* [algo.loopSubdivMesh](./algo_functions.md#loopsubdivmesh)
* [algo.mergeVertices](./algo_functions.md#mergevertices)
* [algo.meshBooleanOperation](./algo_functions.md#meshbooleanoperation)
* [algo.meshComparison](./algo_functions.md#meshcomparison)
* [algo.meshComparisonBatch](./algo_functions.md#meshcomparisonbatch)
* [algo.meshIntersections](./algo_functions.md#meshintersections)
* [algo.noiseMesh](./algo_functions.md#noisemesh)
* [algo.optimizeCADLoops](./algo_functions.md#optimizecadloops)
* [algo.optimizeForRendering](./algo_functions.md#optimizeforrendering)
* [algo.optimizeSubMeshes](./algo_functions.md#optimizesubmeshes)
* [algo.optimizeTextureSize](./algo_functions.md#optimizetexturesize)
* [algo.removeHoles](./algo_functions.md#removeholes)
* [algo.repairCAD](./algo_functions.md#repaircad)
* [algo.segmentMesh](./algo_functions.md#segmentmesh)
* [algo.setFeatureComponentMaxIndex](./algo_functions.md#setfeaturecomponentmaxindex)
* [algo.setMeshVertexColors](./algo_functions.md#setmeshvertexcolors)
* [algo.smoothMesh](./algo_functions.md#smoothmesh)
* [algo.splitUVForAtlas](./algo_functions.md#splituvforatlas)
* [algo.sweep](./algo_functions.md#sweep)
* [algo.tessellate](./algo_functions.md#tessellate)
* [algo.tessellatePointClouds](./algo_functions.md#tessellatepointclouds)
* [algo.tessellateRelativelyToAABB](./algo_functions.md#tessellaterelativelytoaabb)
* [algo.transferUV](./algo_functions.md#transferuv)
* [algo.voxelizePointClouds](./algo_functions.md#voxelizepointclouds)
* [algo.beginBakingSession](./algo_functions.md#beginbakingsession)
* [algo.beginVertexBakingSession](./algo_functions.md#beginvertexbakingsession)
* [algo.combineMaterials](./algo_functions.md#combinematerials)
* [algo.convexDecomposition](./algo_functions.md#convexdecomposition)
* [algo.explodeBodies](./algo_functions.md#explodebodies)
* [algo.explodeByMaterials](./algo_functions.md#explodebymaterials)
* [algo.explodeByTopoDimension](./algo_functions.md#explodebytopodimension)
* [algo.explodeByVertexCount](./algo_functions.md#explodebyvertexcount)
* [algo.explodeByVoxel](./algo_functions.md#explodebyvoxel)
* [algo.explodeConnectedMeshes](./algo_functions.md#explodeconnectedmeshes)
* [algo.explodePatches](./algo_functions.md#explodepatches)
* [algo.createVisibilityInformation](./algo_functions.md#createvisibilityinformation)
* [algo.createVisibilityInformationAdvanced](./algo_functions.md#createvisibilityinformationadvanced)
* [algo.createVisibilityInformationFromViewPoints](./algo_functions.md#createvisibilityinformationfromviewpoints)
* [algo.findOccludedPartOccurrences](./algo_functions.md#findoccludedpartoccurrences)
* [algo.findOccludedPartOccurrencesAdvanced](./algo_functions.md#findoccludedpartoccurrencesadvanced)
* [algo.removeOccludedGeometries](./algo_functions.md#removeoccludedgeometries)
* [algo.removeOccludedGeometriesAdvanced](./algo_functions.md#removeoccludedgeometriesadvanced)
* [algo.removeOccludedGeometriesFromPoints](./algo_functions.md#removeoccludedgeometriesfrompoints)
* [algo.removeOccludedGeometriesFromViewPoints](./algo_functions.md#removeoccludedgeometriesfromviewpoints)
* [algo.createOcclusionMesh](./algo_functions.md#createocclusionmesh)
* [algo.dualContouring](./algo_functions.md#dualcontouring)
* [algo.marchingCubes](./algo_functions.md#marchingcubes)
* [algo.proxyMesh](./algo_functions.md#proxymesh)
* [algo.retopologize](./algo_functions.md#retopologize)
* [algo.voxelize](./algo_functions.md#voxelize)
* [algo.replaceBy](./algo_functions.md#replaceby)
* [algo.replaceByBox](./algo_functions.md#replacebybox)
* [algo.replaceByConvexHull](./algo_functions.md#replacebyconvexhull)
* [algo.replaceByPrimitive](./algo_functions.md#replacebyprimitive)
* [algo.sawWithAABB](./algo_functions.md#sawwithaabb)
* [algo.sawWithOBB](./algo_functions.md#sawwithobb)
* [algo.sawWithOctree](./algo_functions.md#sawwithoctree)
* [algo.sawWithPlane](./algo_functions.md#sawwithplane)
* [algo.convertSimilarPartOccurrencesToInstances](./algo_functions.md#convertsimilarpartoccurrencestoinstances)
* [algo.convertSimilarPartOccurrencesToInstancesFast](./algo_functions.md#convertsimilarpartoccurrencestoinstancesfast)
* [algo.findSimilarPartOccurrencesFast](./algo_functions.md#findsimilarpartoccurrencesfast)
* [algo.alignUVIslands](./algo_functions.md#alignuvislands)
* [algo.applyUvTransform](./algo_functions.md#applyuvtransform)
* [algo.automaticUVMapping](./algo_functions.md#automaticuvmapping)
* [algo.copyUV](./algo_functions.md#copyuv)
* [algo.getRatioUV3D](./algo_functions.md#getratiouv3d)
* [algo.getUVQualityMetrics](./algo_functions.md#getuvqualitymetrics)
* [algo.getUvAabr](./algo_functions.md#getuvaabr)
* [algo.hasOverlappingUV](./algo_functions.md#hasoverlappinguv)
* [algo.mapUvOnAABB](./algo_functions.md#mapuvonaabb)
* [algo.mapUvOnBox](./algo_functions.md#mapuvonbox)
* [algo.mapUvOnCubicAABB](./algo_functions.md#mapuvoncubicaabb)
* [algo.mapUvOnCustomAABB](./algo_functions.md#mapuvoncustomaabb)
* [algo.mapUvOnCylinder](./algo_functions.md#mapuvoncylinder)
* [algo.mapUvOnFittingCylinder](./algo_functions.md#mapuvonfittingcylinder)
* [algo.mapUvOnFittingSphere](./algo_functions.md#mapuvonfittingsphere)
* [algo.mapUvOnMBB](./algo_functions.md#mapuvonmbb)
* [algo.mapUvOnPlane](./algo_functions.md#mapuvonplane)
* [algo.mapUvOnSphere](./algo_functions.md#mapuvonsphere)
* [algo.mergeUVIslandsAffine](./algo_functions.md#mergeuvislandsaffine)
* [algo.mergeUVIslandsRelaxed](./algo_functions.md#mergeuvislandsrelaxed)
* [algo.normalizeUV](./algo_functions.md#normalizeuv)
* [algo.removeUV](./algo_functions.md#removeuv)
* [algo.repackUV](./algo_functions.md#repackuv)
* [algo.resizeUVsToTextureSize](./algo_functions.md#resizeuvstotexturesize)
* [algo.scaleUV](./algo_functions.md#scaleuv)
* [algo.swapUvChannels](./algo_functions.md#swapuvchannels)
* [algo.unwrapUV](./algo_functions.md#unwrapuv)
* [algo.getFittingCylinder](./algo_functions.md#getfittingcylinder)
* [algo.getFittingSphere](./algo_functions.md#getfittingsphere)
* [algo.convertNormalMap](./algo_functions.md#convertnormalmap)
* [algo.createBillboard](./algo_functions.md#createbillboard)
* [algo.barySmooth](./algo_functions.md#barysmooth)
* [algo.crackMoebiusStrips](./algo_functions.md#crackmoebiusstrips)
* [algo.crackNonManifoldVertices](./algo_functions.md#cracknonmanifoldvertices)
* [algo.createCavityOccurrences](./algo_functions.md#createcavityoccurrences)
* [algo.invertPolygonFacesOrientation](./algo_functions.md#invertpolygonfacesorientation)
* [algo.moebiusCracker](./algo_functions.md#moebiuscracker)
* [algo.orientNormals](./algo_functions.md#orientnormals)
* [algo.remeshSurfacicHoles](./algo_functions.md#remeshsurfacicholes)
* [algo.removeDegeneratedPolygons](./algo_functions.md#removedegeneratedpolygons)
* [algo.removeMultiplePolygon](./algo_functions.md#removemultiplepolygon)
* [algo.removeZFighting](./algo_functions.md#removezfighting)
* [algo.repairMesh](./algo_functions.md#repairmesh)
* [algo.repairNullNormals](./algo_functions.md#repairnullnormals)
* [algo.separateToManifold](./algo_functions.md#separatetomanifold)
* [algo.sewBoundary](./algo_functions.md#sewboundary)
* [algo.vertexOffset](./algo_functions.md#vertexoffset)
* [algo.orientPolygonFaces](./algo_functions.md#orientpolygonfaces)
* [algo.orientPolygonFacesAdvanced](./algo_functions.md#orientpolygonfacesadvanced)
* [algo.orientPolygonFacesFromCamera](./algo_functions.md#orientpolygonfacesfromcamera)
* [algo.equilateralize](./algo_functions.md#equilateralize)
* [algo.quadify](./algo_functions.md#quadify)
* [algo.requadify](./algo_functions.md#requadify)
* [algo.triangularize](./algo_functions.md#triangularize)
* [algo.createVertexWeightsFromVertexColors](./algo_functions.md#createvertexweightsfromvertexcolors)
* [algo.createVertexWeightsFromVisibilityAttributes](./algo_functions.md#createvertexweightsfromvisibilityattributes)
* [algo.deleteVertexWeights](./algo_functions.md#deletevertexweights)
* [algo.createVisibilityAttributes](./algo_functions.md#createvisibilityattributes)
* [algo.deletePolygonalWeightAttribute](./algo_functions.md#deletepolygonalweightattribute)
* [algo.deleteVisibilityAttributes](./algo_functions.md#deletevisibilityattributes)
* [algo.flagVisibilityAttributesOnTransparents](./algo_functions.md#flagvisibilityattributesontransparents)
* [algo.transferVisibilityToPolygonalWeight](./algo_functions.md#transfervisibilitytopolygonalweight)
* [process.decimateTargetBake](./process_functions.md#decimatetargetbake)
* [process.generateLODChain](./process_functions.md#generatelodchain)
* [process.generateLODChainQuality](./process_functions.md#generatelodchainquality)
* [process.generateLODChainTarget](./process_functions.md#generatelodchaintarget)
* [process.generatePhantomMesh](./process_functions.md#generatephantommesh)
* [process.proxyFromMeshes](./process_functions.md#proxyfrommeshes)
* [process.proxyFromPointCloud](./process_functions.md#proxyfrompointcloud)
* [scene.addComponent](./scene_functions.md#addcomponent)
* [scene.addComponents](./scene_functions.md#addcomponents)
* [scene.addInParentInstances](./scene_functions.md#addinparentinstances)
* [scene.computeSubTreeChecksum](./scene_functions.md#computesubtreechecksum)
* [scene.createOBBMesh](./scene_functions.md#createobbmesh)
* [scene.createOccurrence](./scene_functions.md#createoccurrence)
* [scene.createOccurrenceFromSelection](./scene_functions.md#createoccurrencefromselection)
* [scene.createOccurrences](./scene_functions.md#createoccurrences)
* [scene.createPartsFromMeshes](./scene_functions.md#createpartsfrommeshes)
* [scene.deleteComponentByType](./scene_functions.md#deletecomponentbytype)
* [scene.deleteComponentsByType](./scene_functions.md#deletecomponentsbytype)
* [scene.deleteEmptyOccurrences](./scene_functions.md#deleteemptyoccurrences)
* [scene.deleteOccurrences](./scene_functions.md#deleteoccurrences)
* [scene.getAABB](./scene_functions.md#getaabb)
* [scene.getActiveMaterial](./scene_functions.md#getactivematerial)
* [scene.getActiveMaterials](./scene_functions.md#getactivematerials)
* [scene.getActivePropertyValue](./scene_functions.md#getactivepropertyvalue)
* [scene.getActivePropertyValues](./scene_functions.md#getactivepropertyvalues)
* [scene.getAncestors](./scene_functions.md#getancestors)
* [scene.getComponent](./scene_functions.md#getcomponent)
* [scene.getComponentByOccurrence](./scene_functions.md#getcomponentbyoccurrence)
* [scene.getComponents](./scene_functions.md#getcomponents)
* [scene.getGlobalMatrices](./scene_functions.md#getglobalmatrices)
* [scene.getGlobalMatrix](./scene_functions.md#getglobalmatrix)
* [scene.getGlobalVisibility](./scene_functions.md#getglobalvisibility)
* [scene.getLocalMatrices](./scene_functions.md#getlocalmatrices)
* [scene.getLocalMatrix](./scene_functions.md#getlocalmatrix)
* [scene.getMBB](./scene_functions.md#getmbb)
* [scene.getMaterialsFromSubtree](./scene_functions.md#getmaterialsfromsubtree)
* [scene.getOBB](./scene_functions.md#getobb)
* [scene.getOccurrenceActiveMaterial](./scene_functions.md#getoccurrenceactivematerial)
* [scene.getOccurrenceName](./scene_functions.md#getoccurrencename)
* [scene.getOccurrencesWithComponent](./scene_functions.md#getoccurrenceswithcomponent)
* [scene.getPartOccurrences](./scene_functions.md#getpartoccurrences)
* [scene.getPolygonCount](./scene_functions.md#getpolygoncount)
* [scene.getSubTreeStats](./scene_functions.md#getsubtreestats)
* [scene.getVertexCount](./scene_functions.md#getvertexcount)
* [scene.getVolume](./scene_functions.md#getvolume)
* [scene.getVolumes](./scene_functions.md#getvolumes)
* [scene.hasComponent](./scene_functions.md#hascomponent)
* [scene.hide](./scene_functions.md#hide)
* [scene.inverseVisibility](./scene_functions.md#inversevisibility)
* [scene.isAncestorOf](./scene_functions.md#isancestorof)
* [scene.keepAncestors](./scene_functions.md#keepancestors)
* [scene.listComponents](./scene_functions.md#listcomponents)
* [scene.removeMaterials](./scene_functions.md#removematerials)
* [scene.replaceMaterial](./scene_functions.md#replacematerial)
* [scene.setComponentOccurrence](./scene_functions.md#setcomponentoccurrence)
* [scene.setOccurrenceMaterial](./scene_functions.md#setoccurrencematerial)
* [scene.setOccurrenceName](./scene_functions.md#setoccurrencename)
* [scene.show](./scene_functions.md#show)
* [scene.showOnly](./scene_functions.md#showonly)
* [scene.transferCADMaterialsOnPartOccurrences](./scene_functions.md#transfercadmaterialsonpartoccurrences)
* [scene.transferMaterialsOnPatches](./scene_functions.md#transfermaterialsonpatches)
* [scene.createHierarchicalClusters](./scene_functions.md#createhierarchicalclusters)
* [scene.generateOctree](./scene_functions.md#generateoctree)
* [scene.getClusters](./scene_functions.md#getclusters)
* [scene.getPartOccurrencesGroupedBySimilarity](./scene_functions.md#getpartoccurrencesgroupedbysimilarity)
* [scene.findDuplicatedPartOccurrences](./scene_functions.md#findduplicatedpartoccurrences)
* [scene.findOccurrencesByMetadata](./scene_functions.md#findoccurrencesbymetadata)
* [scene.findOccurrencesByMetadataValue](./scene_functions.md#findoccurrencesbymetadatavalue)
* [scene.findOccurrencesByProperty](./scene_functions.md#findoccurrencesbyproperty)
* [scene.findPartOccurrencesByActiveMaterial](./scene_functions.md#findpartoccurrencesbyactivematerial)
* [scene.findPartOccurrencesByMaximumSize](./scene_functions.md#findpartoccurrencesbymaximumsize)
* [scene.createSubTree](./scene_functions.md#createsubtree)
* [scene.getChildren](./scene_functions.md#getchildren)
* [scene.getChildrenCount](./scene_functions.md#getchildrencount)
* [scene.getFirstChild](./scene_functions.md#getfirstchild)
* [scene.getNextSibling](./scene_functions.md#getnextsibling)
* [scene.getOccurrenceAncestors](./scene_functions.md#getoccurrenceancestors)
* [scene.getOccurrencesAncestors](./scene_functions.md#getoccurrencesancestors)
* [scene.getParent](./scene_functions.md#getparent)
* [scene.getPreviousSibling](./scene_functions.md#getprevioussibling)
* [scene.getSubTree](./scene_functions.md#getsubtree)
* [scene.moveOccurrences](./scene_functions.md#moveoccurrences)
* [scene.setParent](./scene_functions.md#setparent)
* [scene.addLightComponent](./scene_functions.md#addlightcomponent)
* [scene.createLight](./scene_functions.md#createlight)
* [scene.createMetadatasFromDefinitions](./scene_functions.md#createmetadatasfromdefinitions)
* [scene.getSubpartMaterial](./scene_functions.md#getsubpartmaterial)
* [scene.listSubpartMaterials](./scene_functions.md#listsubpartmaterials)
* [scene.listSubpartVariantMaterials](./scene_functions.md#listsubpartvariantmaterials)
* [scene.setSubpartMaterial](./scene_functions.md#setsubpartmaterial)
* [scene.setSubpartMaterials](./scene_functions.md#setsubpartmaterials)
* [scene.setSubpartVariantMaterials](./scene_functions.md#setsubpartvariantmaterials)
* [scene.transferSubpartMaterialsOnPatches](./scene_functions.md#transfersubpartmaterialsonpatches)
* [scene.createAlternativeTree](./scene_functions.md#createalternativetree)
* [scene.animatesThisOccurrence](./scene_functions.md#animatesthisoccurrence)
* [scene.bakeAnimation](./scene_functions.md#bakeanimation)
* [scene.createSkeletonMesh](./scene_functions.md#createskeletonmesh)
* [scene.getAnimChannelIfExists](./scene_functions.md#getanimchannelifexists)
* [scene.getOccurrenceJoint](./scene_functions.md#getoccurrencejoint)
* [scene.moveAnimation](./scene_functions.md#moveanimation)
* [scene.getTessellationInfos](./scene_functions.md#gettessellationinfos)
* [scene.print](./scene_functions.md#print)
* [scene.evaluateExpressionOnOccurrences](./scene_functions.md#evaluateexpressiononoccurrences)
* [scene.evaluateExpressionOnSubTree](./scene_functions.md#evaluateexpressiononsubtree)
* [scene.getFilteredOccurrences](./scene_functions.md#getfilteredoccurrences)
* [scene.isolate](./scene_functions.md#isolate)
* [scene.findPartOccurrencesWithUnstitchedOpenShells](./scene_functions.md#findpartoccurrenceswithunstitchedopenshells)
* [scene.mergeOccurrencesByTreeLevel](./scene_functions.md#mergeoccurrencesbytreelevel)
* [scene.mergePartOccurrences](./scene_functions.md#mergepartoccurrences)
* [scene.mergePartOccurrencesByAssemblies](./scene_functions.md#mergepartoccurrencesbyassemblies)
* [scene.mergePartOccurrencesByFinalAssemblies](./scene_functions.md#mergepartoccurrencesbyfinalassemblies)
* [scene.mergePartOccurrencesByMaterials](./scene_functions.md#mergepartoccurrencesbymaterials)
* [scene.mergePartOccurrencesByName](./scene_functions.md#mergepartoccurrencesbyname)
* [scene.mergePartOccurrencesByRegions](./scene_functions.md#mergepartoccurrencesbyregions)
* [scene.mergePartOccurrencesWithSingleOpenShellByAssemblies](./scene_functions.md#mergepartoccurrenceswithsingleopenshellbyassemblies)
* [scene.applyTransformation](./scene_functions.md#applytransformation)
* [scene.createSymmetry](./scene_functions.md#createsymmetry)
* [scene.rotate](./scene_functions.md#rotate)
* [scene.setLocalMatrices](./scene_functions.md#setlocalmatrices)
* [scene.setLocalMatrix](./scene_functions.md#setlocalmatrix)
* [scene.alignPivotPointToWorld](./scene_functions.md#alignpivotpointtoworld)
* [scene.movePivotPointToOccurrenceCenter](./scene_functions.md#movepivotpointtooccurrencecenter)
* [scene.movePivotPointToOrigin](./scene_functions.md#movepivotpointtoorigin)
* [scene.movePivotPointToSelectionCenter](./scene_functions.md#movepivotpointtoselectioncenter)
* [scene.movePivotPointToTargetedOccurrenceCenter](./scene_functions.md#movepivotpointtotargetedoccurrencecenter)
* [scene.setPivotOnly](./scene_functions.md#setpivotonly)
* [scene.convertPMIToOccurrences](./scene_functions.md#convertpmitooccurrences)
* [scene.getOccurrenceAnnotationDefinitions](./scene_functions.md#getoccurrenceannotationdefinitions)
* [scene.cleanInstances](./scene_functions.md#cleaninstances)
* [scene.getDirectInstances](./scene_functions.md#getdirectinstances)
* [scene.getFinalPrototype](./scene_functions.md#getfinalprototype)
* [scene.getInstances](./scene_functions.md#getinstances)
* [scene.getPrototype](./scene_functions.md#getprototype)
* [scene.getPrototypes](./scene_functions.md#getprototypes)
* [scene.prototypeSubTree](./scene_functions.md#prototypesubtree)
* [scene.setPrototype](./scene_functions.md#setprototype)
* [scene.setPrototypes](./scene_functions.md#setprototypes)
* [scene.updateChildrenPrototypes](./scene_functions.md#updatechildrenprototypes)
* [scene.invertSelect](./scene_functions.md#invertselect)
* [scene.select](./scene_functions.md#select)
* [scene.unselect](./scene_functions.md#unselect)
* [scene.compress](./scene_functions.md#compress)
* [scene.convertToOldSchoolVisibility](./scene_functions.md#converttooldschoolvisibility)
* [scene.getHiddenPartOccurrences](./scene_functions.md#gethiddenpartoccurrences)
* [scene.getVisiblePartOccurrences](./scene_functions.md#getvisiblepartoccurrences)
* [scene.makeInstanceUnique](./scene_functions.md#makeinstanceunique)
* [scene.rake](./scene_functions.md#rake)
* [scene.removeSymmetryMatrices](./scene_functions.md#removesymmetrymatrices)
* [scene.resetPartTransform](./scene_functions.md#resetparttransform)
* [scene.resetTransform](./scene_functions.md#resettransform)
* [scene.rayCast](./scene_functions.md#raycast)
* [scene.rayCastAll](./scene_functions.md#raycastall)
* [scene.getMultipleOccurrenceUserData](./scene_functions.md#getmultipleoccurrenceuserdata)
* [scene.getOccurrenceUserData](./scene_functions.md#getoccurrenceuserdata)
* [scene.hasMultipleOccurrenceUserData](./scene_functions.md#hasmultipleoccurrenceuserdata)
* [scene.hasOccurrenceUserData](./scene_functions.md#hasoccurrenceuserdata)
* [scene.setMultipleOccurrenceUserData](./scene_functions.md#setmultipleoccurrenceuserdata)
* [scene.setOccurrenceUserData](./scene_functions.md#setoccurrenceuserdata)
* [scene.unsetMultipleOccurrenceUserData](./scene_functions.md#unsetmultipleoccurrenceuserdata)
* [scene.unsetOccurrenceUserData](./scene_functions.md#unsetoccurrenceuserdata)
* [view.createGPUScene](./view_functions.md#creategpuscene)
* [view.getOccurrenceIndex](./view_functions.md#getoccurrenceindex)
* [view.fitCamera](./view_functions.md#fitcamera)
* [geom.applyTransform](./geom_functions.md#applytransform)
* [geom.getEntityAABB](./geom_functions.md#getentityaabb)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### OccurrenceList

List of [scene.Occurrence](./scene_types.md#occurrence)

Functions accepting this type or a list of this type as a parameter:

* [algo.assembleCAD](./algo_functions.md#assemblecad)
* [algo.backToInitialBRep](./algo_functions.md#backtoinitialbrep)
* [algo.bakeVertexAttributes](./algo_functions.md#bakevertexattributes)
* [algo.calculateNormalsInPointClouds](./algo_functions.md#calculatenormalsinpointclouds)
* [algo.crackCADMoebiusStrip](./algo_functions.md#crackcadmoebiusstrip)
* [algo.crackEdges](./algo_functions.md#crackedges)
* [algo.crackMeshEdges](./algo_functions.md#crackmeshedges)
* [algo.createFreeEdgesFromPatches](./algo_functions.md#createfreeedgesfrompatches)
* [algo.createIdentifiedPatchesFromPatches](./algo_functions.md#createidentifiedpatchesfrompatches)
* [algo.createIndexMapFromOccurrences](./algo_functions.md#createindexmapfromoccurrences)
* [algo.createNormals](./algo_functions.md#createnormals)
* [algo.createPointCloudKDTree](./algo_functions.md#createpointcloudkdtree)
* [algo.createTangents](./algo_functions.md#createtangents)
* [algo.createVertexColorFromMaterials](./algo_functions.md#createvertexcolorfrommaterials)
* [algo.createVisibilityPatchesFromPatch](./algo_functions.md#createvisibilitypatchesfrompatch)
* [algo.decimate](./algo_functions.md#decimate)
* [algo.decimateEdgeCollapse](./algo_functions.md#decimateedgecollapse)
* [algo.decimatePointClouds](./algo_functions.md#decimatepointclouds)
* [algo.decimateTarget](./algo_functions.md#decimatetarget)
* [algo.deleteBRepShapes](./algo_functions.md#deletebrepshapes)
* [algo.deleteFreeVertices](./algo_functions.md#deletefreevertices)
* [algo.deleteLines](./algo_functions.md#deletelines)
* [algo.deleteNormals](./algo_functions.md#deletenormals)
* [algo.deletePatches](./algo_functions.md#deletepatches)
* [algo.deletePolygons](./algo_functions.md#deletepolygons)
* [algo.deleteTangents](./algo_functions.md#deletetangents)
* [algo.deleteTextureCoordinates](./algo_functions.md#deletetexturecoordinates)
* [algo.deleteVisibilityPatches](./algo_functions.md#deletevisibilitypatches)
* [algo.evalDecimateErrorForTarget](./algo_functions.md#evaldecimateerrorfortarget)
* [algo.extractNeutralAxis](./algo_functions.md#extractneutralaxis)
* [algo.filletMesh](./algo_functions.md#filletmesh)
* [algo.filterHiddenPolygons](./algo_functions.md#filterhiddenpolygons)
* [algo.filterMeshVertexColors](./algo_functions.md#filtermeshvertexcolors)
* [algo.findBestPivotBetweenOccurrences](./algo_functions.md#findbestpivotbetweenoccurrences)
* [algo.getAllAxisFromCADModel](./algo_functions.md#getallaxisfromcadmodel)
* [algo.getMeshVertexColors](./algo_functions.md#getmeshvertexcolors)
* [algo.getOptimalTextureResolution](./algo_functions.md#getoptimaltextureresolution)
* [algo.getTessellations](./algo_functions.md#gettessellations)
* [algo.getUV3dRatio](./algo_functions.md#getuv3dratio)
* [algo.getVisibilityStats](./algo_functions.md#getvisibilitystats)
* [algo.getVisualComparisonFootprint](./algo_functions.md#getvisualcomparisonfootprint)
* [algo.identifyLinesOfInterest](./algo_functions.md#identifylinesofinterest)
* [algo.identifyPatches](./algo_functions.md#identifypatches)
* [algo.identifySharpEdges](./algo_functions.md#identifysharpedges)
* [algo.invertTangents](./algo_functions.md#inverttangents)
* [algo.lineToTexture](./algo_functions.md#linetotexture)
* [algo.listFeatures](./algo_functions.md#listfeatures)
* [algo.loopSubdivMesh](./algo_functions.md#loopsubdivmesh)
* [algo.mergeVertices](./algo_functions.md#mergevertices)
* [algo.meshBooleanOperation](./algo_functions.md#meshbooleanoperation)
* [algo.meshComparisonBatch](./algo_functions.md#meshcomparisonbatch)
* [algo.meshIntersections](./algo_functions.md#meshintersections)
* [algo.noiseMesh](./algo_functions.md#noisemesh)
* [algo.optimizeCADLoops](./algo_functions.md#optimizecadloops)
* [algo.optimizeForRendering](./algo_functions.md#optimizeforrendering)
* [algo.optimizeSubMeshes](./algo_functions.md#optimizesubmeshes)
* [algo.removeHoles](./algo_functions.md#removeholes)
* [algo.repairCAD](./algo_functions.md#repaircad)
* [algo.segmentMesh](./algo_functions.md#segmentmesh)
* [algo.setFeatureComponentMaxIndex](./algo_functions.md#setfeaturecomponentmaxindex)
* [algo.setMeshVertexColors](./algo_functions.md#setmeshvertexcolors)
* [algo.smoothMesh](./algo_functions.md#smoothmesh)
* [algo.splitUVForAtlas](./algo_functions.md#splituvforatlas)
* [algo.sweep](./algo_functions.md#sweep)
* [algo.tessellate](./algo_functions.md#tessellate)
* [algo.tessellatePointClouds](./algo_functions.md#tessellatepointclouds)
* [algo.tessellateRelativelyToAABB](./algo_functions.md#tessellaterelativelytoaabb)
* [algo.voxelizePointClouds](./algo_functions.md#voxelizepointclouds)
* [algo.beginBakingSession](./algo_functions.md#beginbakingsession)
* [algo.beginVertexBakingSession](./algo_functions.md#beginvertexbakingsession)
* [algo.combineMaterials](./algo_functions.md#combinematerials)
* [algo.convexDecomposition](./algo_functions.md#convexdecomposition)
* [algo.explodeBodies](./algo_functions.md#explodebodies)
* [algo.explodeByMaterials](./algo_functions.md#explodebymaterials)
* [algo.explodeByTopoDimension](./algo_functions.md#explodebytopodimension)
* [algo.explodeByVertexCount](./algo_functions.md#explodebyvertexcount)
* [algo.explodeByVoxel](./algo_functions.md#explodebyvoxel)
* [algo.explodeConnectedMeshes](./algo_functions.md#explodeconnectedmeshes)
* [algo.explodePatches](./algo_functions.md#explodepatches)
* [algo.createVisibilityInformation](./algo_functions.md#createvisibilityinformation)
* [algo.createVisibilityInformationAdvanced](./algo_functions.md#createvisibilityinformationadvanced)
* [algo.createVisibilityInformationFromViewPoints](./algo_functions.md#createvisibilityinformationfromviewpoints)
* [algo.findOccludedPartOccurrences](./algo_functions.md#findoccludedpartoccurrences)
* [algo.findOccludedPartOccurrencesAdvanced](./algo_functions.md#findoccludedpartoccurrencesadvanced)
* [algo.removeOccludedGeometries](./algo_functions.md#removeoccludedgeometries)
* [algo.removeOccludedGeometriesAdvanced](./algo_functions.md#removeoccludedgeometriesadvanced)
* [algo.removeOccludedGeometriesFromPoints](./algo_functions.md#removeoccludedgeometriesfrompoints)
* [algo.removeOccludedGeometriesFromViewPoints](./algo_functions.md#removeoccludedgeometriesfromviewpoints)
* [algo.createOcclusionMesh](./algo_functions.md#createocclusionmesh)
* [algo.dualContouring](./algo_functions.md#dualcontouring)
* [algo.marchingCubes](./algo_functions.md#marchingcubes)
* [algo.proxyMesh](./algo_functions.md#proxymesh)
* [algo.retopologize](./algo_functions.md#retopologize)
* [algo.voxelize](./algo_functions.md#voxelize)
* [algo.replaceBy](./algo_functions.md#replaceby)
* [algo.replaceByBox](./algo_functions.md#replacebybox)
* [algo.replaceByConvexHull](./algo_functions.md#replacebyconvexhull)
* [algo.replaceByPrimitive](./algo_functions.md#replacebyprimitive)
* [algo.sawWithAABB](./algo_functions.md#sawwithaabb)
* [algo.sawWithOBB](./algo_functions.md#sawwithobb)
* [algo.sawWithOctree](./algo_functions.md#sawwithoctree)
* [algo.sawWithPlane](./algo_functions.md#sawwithplane)
* [algo.convertSimilarPartOccurrencesToInstances](./algo_functions.md#convertsimilarpartoccurrencestoinstances)
* [algo.convertSimilarPartOccurrencesToInstancesFast](./algo_functions.md#convertsimilarpartoccurrencestoinstancesfast)
* [algo.findSimilarPartOccurrencesFast](./algo_functions.md#findsimilarpartoccurrencesfast)
* [algo.alignUVIslands](./algo_functions.md#alignuvislands)
* [algo.applyUvTransform](./algo_functions.md#applyuvtransform)
* [algo.automaticUVMapping](./algo_functions.md#automaticuvmapping)
* [algo.copyUV](./algo_functions.md#copyuv)
* [algo.getRatioUV3D](./algo_functions.md#getratiouv3d)
* [algo.getUVQualityMetrics](./algo_functions.md#getuvqualitymetrics)
* [algo.getUvAabr](./algo_functions.md#getuvaabr)
* [algo.hasOverlappingUV](./algo_functions.md#hasoverlappinguv)
* [algo.mapUvOnAABB](./algo_functions.md#mapuvonaabb)
* [algo.mapUvOnBox](./algo_functions.md#mapuvonbox)
* [algo.mapUvOnCubicAABB](./algo_functions.md#mapuvoncubicaabb)
* [algo.mapUvOnCustomAABB](./algo_functions.md#mapuvoncustomaabb)
* [algo.mapUvOnCylinder](./algo_functions.md#mapuvoncylinder)
* [algo.mapUvOnFittingCylinder](./algo_functions.md#mapuvonfittingcylinder)
* [algo.mapUvOnFittingSphere](./algo_functions.md#mapuvonfittingsphere)
* [algo.mapUvOnMBB](./algo_functions.md#mapuvonmbb)
* [algo.mapUvOnPlane](./algo_functions.md#mapuvonplane)
* [algo.mapUvOnSphere](./algo_functions.md#mapuvonsphere)
* [algo.mergeUVIslandsAffine](./algo_functions.md#mergeuvislandsaffine)
* [algo.mergeUVIslandsRelaxed](./algo_functions.md#mergeuvislandsrelaxed)
* [algo.normalizeUV](./algo_functions.md#normalizeuv)
* [algo.removeUV](./algo_functions.md#removeuv)
* [algo.repackUV](./algo_functions.md#repackuv)
* [algo.resizeUVsToTextureSize](./algo_functions.md#resizeuvstotexturesize)
* [algo.scaleUV](./algo_functions.md#scaleuv)
* [algo.swapUvChannels](./algo_functions.md#swapuvchannels)
* [algo.unwrapUV](./algo_functions.md#unwrapuv)
* [algo.getFittingCylinder](./algo_functions.md#getfittingcylinder)
* [algo.getFittingSphere](./algo_functions.md#getfittingsphere)
* [algo.convertNormalMap](./algo_functions.md#convertnormalmap)
* [algo.createBillboard](./algo_functions.md#createbillboard)
* [algo.barySmooth](./algo_functions.md#barysmooth)
* [algo.crackMoebiusStrips](./algo_functions.md#crackmoebiusstrips)
* [algo.crackNonManifoldVertices](./algo_functions.md#cracknonmanifoldvertices)
* [algo.createCavityOccurrences](./algo_functions.md#createcavityoccurrences)
* [algo.invertPolygonFacesOrientation](./algo_functions.md#invertpolygonfacesorientation)
* [algo.moebiusCracker](./algo_functions.md#moebiuscracker)
* [algo.orientNormals](./algo_functions.md#orientnormals)
* [algo.remeshSurfacicHoles](./algo_functions.md#remeshsurfacicholes)
* [algo.removeDegeneratedPolygons](./algo_functions.md#removedegeneratedpolygons)
* [algo.removeMultiplePolygon](./algo_functions.md#removemultiplepolygon)
* [algo.removeZFighting](./algo_functions.md#removezfighting)
* [algo.repairMesh](./algo_functions.md#repairmesh)
* [algo.repairNullNormals](./algo_functions.md#repairnullnormals)
* [algo.separateToManifold](./algo_functions.md#separatetomanifold)
* [algo.sewBoundary](./algo_functions.md#sewboundary)
* [algo.vertexOffset](./algo_functions.md#vertexoffset)
* [algo.orientPolygonFaces](./algo_functions.md#orientpolygonfaces)
* [algo.orientPolygonFacesAdvanced](./algo_functions.md#orientpolygonfacesadvanced)
* [algo.orientPolygonFacesFromCamera](./algo_functions.md#orientpolygonfacesfromcamera)
* [algo.equilateralize](./algo_functions.md#equilateralize)
* [algo.quadify](./algo_functions.md#quadify)
* [algo.requadify](./algo_functions.md#requadify)
* [algo.triangularize](./algo_functions.md#triangularize)
* [algo.createVertexWeightsFromVertexColors](./algo_functions.md#createvertexweightsfromvertexcolors)
* [algo.createVertexWeightsFromVisibilityAttributes](./algo_functions.md#createvertexweightsfromvisibilityattributes)
* [algo.deleteVertexWeights](./algo_functions.md#deletevertexweights)
* [algo.createVisibilityAttributes](./algo_functions.md#createvisibilityattributes)
* [algo.deletePolygonalWeightAttribute](./algo_functions.md#deletepolygonalweightattribute)
* [algo.deleteVisibilityAttributes](./algo_functions.md#deletevisibilityattributes)
* [algo.flagVisibilityAttributesOnTransparents](./algo_functions.md#flagvisibilityattributesontransparents)
* [algo.transferVisibilityToPolygonalWeight](./algo_functions.md#transfervisibilitytopolygonalweight)
* [process.decimateTargetBake](./process_functions.md#decimatetargetbake)
* [process.generateLODChain](./process_functions.md#generatelodchain)
* [process.generateLODChainQuality](./process_functions.md#generatelodchainquality)
* [process.generateLODChainTarget](./process_functions.md#generatelodchaintarget)
* [process.generatePhantomMesh](./process_functions.md#generatephantommesh)
* [process.proxyFromMeshes](./process_functions.md#proxyfrommeshes)
* [process.proxyFromPointCloud](./process_functions.md#proxyfrompointcloud)
* [scene.addComponents](./scene_functions.md#addcomponents)
* [scene.createOccurrenceFromSelection](./scene_functions.md#createoccurrencefromselection)
* [scene.createOccurrences](./scene_functions.md#createoccurrences)
* [scene.createPartsFromMeshes](./scene_functions.md#createpartsfrommeshes)
* [scene.deleteOccurrences](./scene_functions.md#deleteoccurrences)
* [scene.getAABB](./scene_functions.md#getaabb)
* [scene.getActiveMaterials](./scene_functions.md#getactivematerials)
* [scene.getActivePropertyValues](./scene_functions.md#getactivepropertyvalues)
* [scene.getComponentByOccurrence](./scene_functions.md#getcomponentbyoccurrence)
* [scene.getComponents](./scene_functions.md#getcomponents)
* [scene.getGlobalMatrices](./scene_functions.md#getglobalmatrices)
* [scene.getLocalMatrices](./scene_functions.md#getlocalmatrices)
* [scene.getMBB](./scene_functions.md#getmbb)
* [scene.getOBB](./scene_functions.md#getobb)
* [scene.getPolygonCount](./scene_functions.md#getpolygoncount)
* [scene.getSubTreeStats](./scene_functions.md#getsubtreestats)
* [scene.getVertexCount](./scene_functions.md#getvertexcount)
* [scene.getVolumes](./scene_functions.md#getvolumes)
* [scene.hide](./scene_functions.md#hide)
* [scene.inverseVisibility](./scene_functions.md#inversevisibility)
* [scene.keepAncestors](./scene_functions.md#keepancestors)
* [scene.removeMaterials](./scene_functions.md#removematerials)
* [scene.replaceMaterial](./scene_functions.md#replacematerial)
* [scene.show](./scene_functions.md#show)
* [scene.showOnly](./scene_functions.md#showonly)
* [scene.getClusters](./scene_functions.md#getclusters)
* [scene.findOccurrencesByMetadata](./scene_functions.md#findoccurrencesbymetadata)
* [scene.findOccurrencesByMetadataValue](./scene_functions.md#findoccurrencesbymetadatavalue)
* [scene.findOccurrencesByProperty](./scene_functions.md#findoccurrencesbyproperty)
* [scene.findPartOccurrencesByActiveMaterial](./scene_functions.md#findpartoccurrencesbyactivematerial)
* [scene.findPartOccurrencesByMaximumSize](./scene_functions.md#findpartoccurrencesbymaximumsize)
* [scene.getOccurrencesAncestors](./scene_functions.md#getoccurrencesancestors)
* [scene.moveOccurrences](./scene_functions.md#moveoccurrences)
* [scene.createMetadatasFromDefinitions](./scene_functions.md#createmetadatasfromdefinitions)
* [scene.evaluateExpressionOnOccurrences](./scene_functions.md#evaluateexpressiononoccurrences)
* [scene.isolate](./scene_functions.md#isolate)
* [scene.mergeOccurrencesByTreeLevel](./scene_functions.md#mergeoccurrencesbytreelevel)
* [scene.mergePartOccurrences](./scene_functions.md#mergepartoccurrences)
* [scene.mergePartOccurrencesByAssemblies](./scene_functions.md#mergepartoccurrencesbyassemblies)
* [scene.mergePartOccurrencesByFinalAssemblies](./scene_functions.md#mergepartoccurrencesbyfinalassemblies)
* [scene.mergePartOccurrencesByMaterials](./scene_functions.md#mergepartoccurrencesbymaterials)
* [scene.mergePartOccurrencesByRegions](./scene_functions.md#mergepartoccurrencesbyregions)
* [scene.createSymmetry](./scene_functions.md#createsymmetry)
* [scene.setLocalMatrices](./scene_functions.md#setlocalmatrices)
* [scene.alignPivotPointToWorld](./scene_functions.md#alignpivotpointtoworld)
* [scene.movePivotPointToOccurrenceCenter](./scene_functions.md#movepivotpointtooccurrencecenter)
* [scene.movePivotPointToSelectionCenter](./scene_functions.md#movepivotpointtoselectioncenter)
* [scene.movePivotPointToTargetedOccurrenceCenter](./scene_functions.md#movepivotpointtotargetedoccurrencecenter)
* [scene.convertPMIToOccurrences](./scene_functions.md#convertpmitooccurrences)
* [scene.getPrototypes](./scene_functions.md#getprototypes)
* [scene.setPrototypes](./scene_functions.md#setprototypes)
* [scene.invertSelect](./scene_functions.md#invertselect)
* [scene.select](./scene_functions.md#select)
* [scene.unselect](./scene_functions.md#unselect)
* [scene.getHiddenPartOccurrences](./scene_functions.md#gethiddenpartoccurrences)
* [scene.getVisiblePartOccurrences](./scene_functions.md#getvisiblepartoccurrences)
* [scene.makeInstanceUnique](./scene_functions.md#makeinstanceunique)
* [scene.getMultipleOccurrenceUserData](./scene_functions.md#getmultipleoccurrenceuserdata)
* [scene.hasMultipleOccurrenceUserData](./scene_functions.md#hasmultipleoccurrenceuserdata)
* [scene.setMultipleOccurrenceUserData](./scene_functions.md#setmultipleoccurrenceuserdata)
* [scene.unsetMultipleOccurrenceUserData](./scene_functions.md#unsetmultipleoccurrenceuserdata)
* [view.createGPUScene](./view_functions.md#creategpuscene)
* [view.fitCamera](./view_functions.md#fitcamera)

***

### OccurrenceListList

List of [scene.OccurrenceList](./scene_types.md#occurrencelist)

***

### OccurrenceUserData

Identifier of occurrences userdata.
Base class: [core.Ident](./core_types.md#ident)


**Frame:**
```mermaid
classDiagram
    class OccurrenceUserData
    Ident <|-- OccurrenceUserData
```

Functions accepting this type or a list of this type as a parameter:

* [scene.getMultipleOccurrenceUserData](./scene_functions.md#getmultipleoccurrenceuserdata)
* [scene.getOccurrenceUserData](./scene_functions.md#getoccurrenceuserdata)
* [scene.hasMultipleOccurrenceUserData](./scene_functions.md#hasmultipleoccurrenceuserdata)
* [scene.hasOccurrenceUserData](./scene_functions.md#hasoccurrenceuserdata)
* [scene.setMultipleOccurrenceUserData](./scene_functions.md#setmultipleoccurrenceuserdata)
* [scene.setOccurrenceUserData](./scene_functions.md#setoccurrenceuserdata)
* [scene.unsetMultipleOccurrenceUserData](./scene_functions.md#unsetmultipleoccurrenceuserdata)
* [scene.unsetOccurrenceUserData](./scene_functions.md#unsetoccurrenceuserdata)
* [scene.unsubscribeFromOccurrenceUserData](./scene_functions.md#unsubscribefromoccurrenceuserdata)

***

### PMIComponent

A PMI component (Product Manufacturing informations).
Base class: [scene.Component](./scene_types.md#component)


**Frame:**
```mermaid
classDiagram
    class PMIComponent
    Component <|-- PMIComponent
    PMIComponent : +core.Ident Id
```

Functions accepting this type or a list of this type as a parameter:

* [scene.addAnnotationGroup](./scene_functions.md#addannotationgroup)
* [scene.getComponentOccurrence](./scene_functions.md#getcomponentoccurrence)
* [scene.getComponentType](./scene_functions.md#getcomponenttype)
* [scene.setComponentOccurrence](./scene_functions.md#setcomponentoccurrence)
* [scene.getAnnotationGroups](./scene_functions.md#getannotationgroups)
* [view.drawCappingPlane](./view_functions.md#drawcappingplane)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### PackedTree

Packed view of the scene tree.
Fields

| Type              | Name                | Default | Description                                                                                                                               |
| ----------------- | ------------------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| occurrences       | OccurrenceList      |         | List of all occurrences of the tree. (Note: all parent occurrences appears before their children, thus the first occurrence is the root). |
| parents           | IntList             |         | Specifies the parent index for each occurrence (same index than occurrences). root's parent is -1.                                        |
| names             | StringList          |         | Name of each occurrence (same index than occurrences).                                                                                    |
| visible           | InheritableBoolList |         | Visibility of each occurrence (same index than occurrences).                                                                              |
| materials         | MaterialList        |         | Material identifier of each occurrence (same index than occurrences).                                                                     |
| transformIndices  | IntList             |         | Indices of transform matrix of each occurrence (same index than occurrences). (Note: Identity matrix is always 0).                        |
| transformMatrices | Matrix4List         |         | Matrices referenced by transformIndices. (Note: The first matrix is always Identity).                                                     |
| customProperties  | StringPairListList  |         | Custom properties of each occurrence (same index than occurrences), pair is name -> value.                                                |

Functions accepting this type or a list of this type as a parameter:

* [scene.createSubTree](./scene_functions.md#createsubtree)

***

### Part

A part is the geometrical definition of product occurrence.
Base class: [scene.Component](./scene_types.md#component)


**Frame:**
```mermaid
classDiagram
    class Part
    Component <|-- Part
    Part : +core.Ident Id
    Part : +core.Entity BRepShapeInitial
    Part : +core.Entity BRepShapeModified
    Part : +core.Entity TessellatedShape
    Part : +geom.Matrix4 Transform
```

Functions accepting this type or a list of this type as a parameter:

* [scene.getBrepShape](./scene_functions.md#getbrepshape)
* [scene.getPartActiveShape](./scene_functions.md#getpartactiveshape)
* [scene.getPartLocalMatrix](./scene_functions.md#getpartlocalmatrix)
* [scene.getPartShapeType](./scene_functions.md#getpartshapetype)
* [scene.listActiveShapeMaterials](./scene_functions.md#listactiveshapematerials)
* [scene.getTessellationParameters](./scene_functions.md#gettessellationparameters)
* [scene.getPartMesh](./scene_functions.md#getpartmesh)
* [scene.getPartModel](./scene_functions.md#getpartmodel)
* [scene.getPartsMeshes](./scene_functions.md#getpartsmeshes)
* [scene.getPartsModels](./scene_functions.md#getpartsmodels)
* [scene.getPartsTransforms](./scene_functions.md#getpartstransforms)
* [scene.getPartsTransformsIndexed](./scene_functions.md#getpartstransformsindexed)
* [scene.setPartMesh](./scene_functions.md#setpartmesh)
* [scene.setPartModel](./scene_functions.md#setpartmodel)
* [scene.setPartsTransforms](./scene_functions.md#setpartstransforms)
* [scene.setPartsTransformsIndexed](./scene_functions.md#setpartstransformsindexed)
* [scene.getPartUserData](./scene_functions.md#getpartuserdata)
* [scene.hasPartUserData](./scene_functions.md#haspartuserdata)
* [scene.setPartUserData](./scene_functions.md#setpartuserdata)
* [scene.unsetPartUserData](./scene_functions.md#unsetpartuserdata)
* [scene.getComponentOccurrence](./scene_functions.md#getcomponentoccurrence)
* [scene.getComponentType](./scene_functions.md#getcomponenttype)
* [scene.setComponentOccurrence](./scene_functions.md#setcomponentoccurrence)
* [scene.getAnnotationGroups](./scene_functions.md#getannotationgroups)
* [view.drawCappingPlane](./view_functions.md#drawcappingplane)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### PartList

List of [scene.Part](./scene_types.md#part)

Functions accepting this type or a list of this type as a parameter:

* [scene.getPartsMeshes](./scene_functions.md#getpartsmeshes)
* [scene.getPartsModels](./scene_functions.md#getpartsmodels)
* [scene.getPartsTransforms](./scene_functions.md#getpartstransforms)
* [scene.getPartsTransformsIndexed](./scene_functions.md#getpartstransformsindexed)
* [scene.setPartsTransforms](./scene_functions.md#setpartstransforms)
* [scene.setPartsTransformsIndexed](./scene_functions.md#setpartstransformsindexed)

***

### PartUserData

Identifier of part userdata.
Base class: [core.Ident](./core_types.md#ident)


**Frame:**
```mermaid
classDiagram
    class PartUserData
    Ident <|-- PartUserData
```

Functions accepting this type or a list of this type as a parameter:

* [scene.getPartUserData](./scene_functions.md#getpartuserdata)
* [scene.hasPartUserData](./scene_functions.md#haspartuserdata)
* [scene.setPartUserData](./scene_functions.md#setpartuserdata)
* [scene.unsetPartUserData](./scene_functions.md#unsetpartuserdata)
* [scene.unsubscribeFromPartUserData](./scene_functions.md#unsubscribefrompartuserdata)

***

### PartialLoad\_Status

Enum of [core.Long](./core_types.md#long)

| Name         | Value |
| ------------ | ----- |
| NOT\_LOADED  | 0     |
| LOADED       | 1     |
| LOADING      | 2     |
| LOADING\_ALL | 3     |

***

### Primitive\_Type

Enum of [core.Long](./core_types.md#long)

| Name     | Value |
| -------- | ----- |
| CUBE     | 0     |
| SPHERE   | 1     |
| PLAN     | 2     |
| CONE     | 3     |
| ARROW    | 4     |
| CYLINDER | 5     |
| CAPSULE  | 6     |

***

### ProberInfo

Fields

| Type       | Name       | Default | Description |
| ---------- | ---------- | ------- | ----------- |
| occurrence | Occurrence | 0       |             |
| position   | Point3     |         |             |

***

### ProductView

A product view defines a variant with a camera view and annotations.
Base class: [core.Entity](./core_types.md#entity)


**Frame:**
```mermaid
classDiagram
    class ProductView
    Entity <|-- ProductView
    ProductView : +core.Ident Id
    ProductView : +core.String Name
    ProductView : +core.Entity Tree
    ProductView : +core.String GroupName
    ProductView : +core.Boolean ViewIsSet
    ProductView : +geom.Matrix4 View
    ProductView : +core.Boolean ViewIsOrtho
    ProductView : +core.Real ViewFov
    ProductView : +core.Boolean CuttingPlane
    ProductView : +geom.Vector3 CuttingPlanePosition
    ProductView : +geom.Vector3 CuttingPlaneNormal
    ProductView : +core.Real ExplodedViewFactor
    ProductView : +core.Boolean ExplodedViewX
    ProductView : +core.Boolean ExplodedViewY
    ProductView : +core.Boolean ExplodedViewZ
```

Functions accepting this type or a list of this type as a parameter:

* [scene.addAnnotationToProductView](./scene_functions.md#addannotationtoproductview)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### ProductViewDefinition

ProductionView definition.
Fields

| Type                 | Name           | Default | Description                            |
| -------------------- | -------------- | ------- | -------------------------------------- |
| id                   | Variant        | 0       | The productview we get the definition. |
| name                 | String         |         | Name of the view.                      |
| groupName            | String         |         | Name of the group of view.             |
| view                 | Matrix4        |         | View matrix of this view.              |
| viewIsSet            | Boolean        | False   | True if view is set.                   |
| viewIsOrtho          | Boolean        | False   | True if view is orthographic.          |
| viewFov              | Double         | 60      | Fov of the camera.                     |
| cuttingPlane         | Boolean        | False   | True if cutting plane is set.          |
| cuttingPlanePosition | Vector3        |         | Position of the cutting plane.         |
| cuttingPlaneNormal   | Vector3        |         | Normal of the cutting plane.           |
| explodedViewFactor   | Double         | 60      | Fov of the camera.                     |
| explodedViewX        | Boolean        | False   | True if exploded along X axis.         |
| explodedViewY        | Boolean        | False   | True if exploded along Y axis.         |
| explodedViewZ        | Boolean        | False   | True if exploded along Z axis.         |
| annotations          | AnnotationList |         | Annotations linked to this view.       |

Functions accepting this type or a list of this type as a parameter:

* [scene.createProductView](./scene_functions.md#createproductview)

***

### ProductViewDefinitionList

List of [scene.ProductViewDefinition](./scene_types.md#productviewdefinition)

***

### PropertyValue

A structure containing a property name and its value.
Fields

| Type  | Name   | Default | Description            |
| ----- | ------ | ------- | ---------------------- |
| name  | String |         | Name of the property.  |
| value | String |         | Value of the property. |

***

### PropertyValueList

List of PropertyValue.
List of [scene.PropertyValue](./scene_types.md#propertyvalue)

Derived class: [MetadataDefinition](./scene_types.md#metadatadefinition)


**Frame:**
```mermaid
classDiagram
    class PropertyValueList
        PropertyValueList <|-- MetadataDefinition
```

***

### RayHit

Fields

| Type          | Name       | Default | Description |
| ------------- | ---------- | ------- | ----------- |
| rayParam      | Double     | -1      |             |
| occurrence    | Occurrence | 0       |             |
| triangleIndex | Int        | -1      |             |
| triangleParam | Point2     |         |             |

***

### RayHitList

List of [scene.RayHit](./scene_types.md#rayhit)

***

### ReferencedDataComponent

A ReferencedDataComponent contains the information necessary to individually load referenced sub-models.
Base class: [scene.Component](./scene_types.md#component)


**Frame:**
```mermaid
classDiagram
    class ReferencedDataComponent
    Component <|-- ReferencedDataComponent
    ReferencedDataComponent : +core.Ident Id
    ReferencedDataComponent : +core.String FilePath
    ReferencedDataComponent : +core.String IdPath
    ReferencedDataComponent : +core.String ParentFilePath
```

Functions accepting this type or a list of this type as a parameter:

* [scene.getPartialLoadingStatus](./scene_functions.md#getpartialloadingstatus)
* [scene.setReferencedDataComponentParent](./scene_functions.md#setreferenceddatacomponentparent)
* [scene.setReferencedDataComponentPath](./scene_functions.md#setreferenceddatacomponentpath)
* [scene.getComponentOccurrence](./scene_functions.md#getcomponentoccurrence)
* [scene.getComponentType](./scene_functions.md#getcomponenttype)
* [scene.setComponentOccurrence](./scene_functions.md#setcomponentoccurrence)
* [scene.getAnnotationGroups](./scene_functions.md#getannotationgroups)
* [view.drawCappingPlane](./view_functions.md#drawcappingplane)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### ResizeByMaximumSizeOptions

Fields

| Type             | Name    | Default | Description |
| ---------------- | ------- | ------- | ----------- |
| TextureSize      | Int     | 4096    |             |
| KeepTextureRatio | Boolean | True    |             |

***

### ResizeByTexturesOptions

Select between:

* AllTextures: [core.None](./core_types.md#none)
* Selection: [material.ImageList](./material_types.md#imagelist)

***

### ResizeTexturesInputMode

Select between:

* Occurrences: [scene.OccurrenceList](./scene_types.md#occurrencelist)

* Textures: [scene.ResizeByTexturesOptions](./scene_types.md#resizebytexturesoptions)
  Functions accepting this type or a list of this type as a parameter:

* [scene.resizeTextures](./scene_functions.md#resizetextures)

***

### ResizeTexturesResizeMode

Select between:

* Ratio: [core.Percent](./core_types.md#percent)

* MaximumSize: [scene.ResizeByMaximumSizeOptions](./scene_types.md#resizebymaximumsizeoptions)
  Functions accepting this type or a list of this type as a parameter:

* [scene.resizeTextures](./scene_functions.md#resizetextures)

***

### SceneChangeType

Enum of [core.Long](./core_types.md#long)

| Name                  | Value |
| --------------------- | ----- |
| PRE\_CHILD\_INSERTED  | 0     |
| CHILD\_REMOVED        | 1     |
| PROPERTY\_CHANGED     | 2     |
| COMPLETE\_CHANGE      | 3     |
| COMPONENT\_CHANGED    | 4     |
| POST\_CHILD\_INSERTED | 5     |
| POST\_CHILD\_REMOVED  | 6     |

***

### SelectionChangeType

Enum of [core.Long](./core_types.md#long)

| Name    | Value |
| ------- | ----- |
| CLEARED | 0     |
| ADDED   | 1     |
| REMOVED | 2     |

***

### Shape

A Shape is the geometrical representation of a Part. It can be BRep or polygonal.
Base class: [geom.GeomEntity](./geom_types.md#geomentity)

Derived classes:

* [BRepShape](./scene_types.md#brepshape)
* [TessellatedShape](./scene_types.md#tessellatedshape)


**Frame:**
```mermaid
classDiagram
    class Shape
    GeomEntity <|-- Shape
        Shape <|-- BRepShape
    BRepShape : +core.Ident Id
    BRepShape : +core.Entity Model
        Shape <|-- TessellatedShape
    TessellatedShape : +core.Ident Id
    TessellatedShape : +core.Entity Mesh
```

Functions accepting this type or a list of this type as a parameter:

* [geom.applyTransform](./geom_functions.md#applytransform)
* [geom.getEntityAABB](./geom_functions.md#getentityaabb)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### ShapeType

Enum of [core.Long](./core_types.md#long)

| Name        | Value |
| ----------- | ----- |
| TESSELLATED | 0     |
| CAD         | 1     |
| JOINT       | 2     |

***

### SubPartMaterialComponent

A sub part ( or sub mesh ) material component.
Base class: [scene.Component](./scene_types.md#component)


**Frame:**
```mermaid
classDiagram
    class SubPartMaterialComponent
    Component <|-- SubPartMaterialComponent
    SubPartMaterialComponent : +core.Ident Id
```

Functions accepting this type or a list of this type as a parameter:

* [scene.getMaterialsFromSubPart](./scene_functions.md#getmaterialsfromsubpart)
* [scene.getComponentOccurrence](./scene_functions.md#getcomponentoccurrence)
* [scene.getComponentType](./scene_functions.md#getcomponenttype)
* [scene.setComponentOccurrence](./scene_functions.md#setcomponentoccurrence)
* [scene.getAnnotationGroups](./scene_functions.md#getannotationgroups)
* [view.drawCappingPlane](./view_functions.md#drawcappingplane)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### TessellatedShape

A TessellatedShape is a Shape that contains Polygonal geometry.
Base class: [scene.Shape](./scene_types.md#shape)


**Frame:**
```mermaid
classDiagram
    class TessellatedShape
    Shape <|-- TessellatedShape
    TessellatedShape : +core.Ident Id
    TessellatedShape : +core.Entity Mesh
```

Functions accepting this type or a list of this type as a parameter:

* [geom.applyTransform](./geom_functions.md#applytransform)
* [geom.getEntityAABB](./geom_functions.md#getentityaabb)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### TessellatedShapeList

List of [scene.TessellatedShape](./scene_types.md#tessellatedshape)

***

### UVGenerationMode

Enum

| Name                  | Value |
| --------------------- | ----- |
| NO\_UV                | 0     |
| INTRINSIC\_UV         | 1     |
| CONFORMED\_SCALED\_UV | 2     |

***

### Variant

A variant allows to override some occurrences properties.
Base class: [core.Entity](./core_types.md#entity)


**Frame:**
```mermaid
classDiagram
    class Variant
    Entity <|-- Variant
    Variant : +core.Ident Id
    Variant : +core.String Name
    Variant : +core.Entity Tree
    Variant : +core.String GroupName
    Variant : +core.Boolean ViewIsSet
    Variant : +geom.Matrix4 View
    Variant : +core.Boolean ViewIsOrtho
    Variant : +core.Real ViewFov
    Variant : +core.Boolean CuttingPlane
    Variant : +geom.Vector3 CuttingPlanePosition
    Variant : +geom.Vector3 CuttingPlaneNormal
    Variant : +core.Real ExplodedViewFactor
    Variant : +core.Boolean ExplodedViewX
    Variant : +core.Boolean ExplodedViewY
    Variant : +core.Boolean ExplodedViewZ
```

Functions accepting this type or a list of this type as a parameter:

* [scene.setSubpartVariantMaterialsList](./scene_functions.md#setsubpartvariantmaterialslist)
* [scene.getProductViewDefinition](./scene_functions.md#getproductviewdefinition)
* [scene.duplicateVariant](./scene_functions.md#duplicatevariant)
* [scene.getVariantTree](./scene_functions.md#getvarianttree)
* [scene.removeVariant](./scene_functions.md#removevariant)
* [scene.setCurrentVariant](./scene_functions.md#setcurrentvariant)
* [scene.setVariantTree](./scene_functions.md#setvarianttree)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### VariantChangeType

Enum of [core.Long](./core_types.md#long)

| Name             | Value |
| ---------------- | ----- |
| ADDED            | 0     |
| REMOVED          | 1     |
| CURRENT\_CHANGED | 2     |

***

### VariantComponent

A variant component is a component that contains variant definitions for an occurrence.
Base class: [scene.Component](./scene_types.md#component)


**Frame:**
```mermaid
classDiagram
    class VariantComponent
    Component <|-- VariantComponent
    VariantComponent : +core.Ident Id
    VariantComponent : +core.InheritableBool VariantSensitive
    VariantComponent : +core.String GroupName
```

Functions accepting this type or a list of this type as a parameter:

* [scene.getVariantComponentsDefinitions](./scene_functions.md#getvariantcomponentsdefinitions)
* [scene.getComponentOccurrence](./scene_functions.md#getcomponentoccurrence)
* [scene.getComponentType](./scene_functions.md#getcomponenttype)
* [scene.setComponentOccurrence](./scene_functions.md#setcomponentoccurrence)
* [scene.getAnnotationGroups](./scene_functions.md#getannotationgroups)
* [view.drawCappingPlane](./view_functions.md#drawcappingplane)
* [core.cloneEntity](./core_functions.md#cloneentity)
* [core.deleteEntities](./core_functions.md#deleteentities)
* [core.entityExists](./core_functions.md#entityexists)
* [core.getEntityType](./core_functions.md#getentitytype)
* [core.getEntityTypeString](./core_functions.md#getentitytypestring)
* [core.addCustomProperties](./core_functions.md#addcustomproperties)
* [core.addCustomProperty](./core_functions.md#addcustomproperty)
* [core.getProperties](./core_functions.md#getproperties)
* [core.getProperty](./core_functions.md#getproperty)
* [core.getPropertyInfo](./core_functions.md#getpropertyinfo)
* [core.hasCustomProperty](./core_functions.md#hascustomproperty)
* [core.hasProperty](./core_functions.md#hasproperty)
* [core.listProperties](./core_functions.md#listproperties)
* [core.listPropertiesBatch](./core_functions.md#listpropertiesbatch)
* [core.removeCustomProperty](./core_functions.md#removecustomproperty)
* [core.setProperties](./core_functions.md#setproperties)
* [core.setProperty](./core_functions.md#setproperty)
* [core.supportCustomProperties](./core_functions.md#supportcustomproperties)
* [core.unsetProperty](./core_functions.md#unsetproperty)
* [scene.linkPropertyToAnimation](./scene_functions.md#linkpropertytoanimation)
* [scene.unlinkPropertyToAnimation](./scene_functions.md#unlinkpropertytoanimation)

***

### VariantComponentList

List of [scene.VariantComponent](./scene_types.md#variantcomponent)

Functions accepting this type or a list of this type as a parameter:

* [scene.getVariantComponentsDefinitions](./scene_functions.md#getvariantcomponentsdefinitions)

***

### VariantDefinition

Fields

| Type                | Name              | Default | Description |
| ------------------- | ----------------- | ------- | ----------- |
| variant             | Variant           | 0       |             |
| overridedProperties | PropertyValueList | \[]     |             |

***

### VariantDefinitionList

List of [scene.VariantDefinition](./scene_types.md#variantdefinition)

***

### VariantDefinitionListList

List of [scene.VariantDefinitionList](./scene_types.md#variantdefinitionlist)

***

### VariantList

List of [scene.Variant](./scene_types.md#variant)

Functions accepting this type or a list of this type as a parameter:

* [scene.setSubpartVariantMaterialsList](./scene_functions.md#setsubpartvariantmaterialslist)

***

### VariantMaterialList

List of [scene.VariantMaterials](./scene_types.md#variantmaterials)

Functions accepting this type or a list of this type as a parameter:

* [scene.setSubpartVariantMaterials](./scene_functions.md#setsubpartvariantmaterials)

***

### VariantMaterials

Variant and materials in variant .
Fields

| Type      | Name         | Default | Description        |
| --------- | ------------ | ------- | ------------------ |
| id        | Variant      | 0       | The variant id.    |
| materials | MaterialList |         | The material list. |

Functions accepting this type or a list of this type as a parameter:

* [scene.setSubpartVariantMaterials](./scene_functions.md#setsubpartvariantmaterials)

***

### VisibilityMode

Enum

| Name      | Value |
| --------- | ----- |
| Inherited | 0     |
| Hide      | 1     |

Functions accepting this type or a list of this type as a parameter:

* [scene.getSubTree](./scene_functions.md#getsubtree)
