Table of contents

[IS-6.0] Upload And Reload Local GLTF File To IS

We are able to upload and reload local gltf file to IS without uploading them to the server and waiting for build jobs.

You must go to ?mode=sdk
Under the material there is "Development" tab.
There you upload the .gltf file and it reloads the IS viewer.

If the file is broken the viewer crashes with error in the Browser console.

The Parts Info is not for the current robot DO NOT LOOK AT IT

First Step
Selecting A File
Reloaded Model from Local GLTF File


[IS-6.0] Declare "Service Point" for the IS.GlobalIterator and the IStepFilter.

````
Service Points

The extension provides the following service points

    service_point: {
            type: "com.axlessoft.ai3d.is.global_iterator.step_filter",
            iterator: IS.GlobalIterator.IStepFilter,
            description: "global-iterator extension skips a step while iterating over them if any of the services return true."
        }
    Example: For a tree structure like this:
    {
        name: rootNode,
        children: [
            {
                name: "Step1"
            },
            {
                name: "Step2"
            },
            {
                name: "Step3"
            },
            {
                name: "Step4"
            }
        ]
    } 
    There could be an extension providing a service for filtering. It could be implemented as:
    class MyExtension extends IS.Extension {
        constructor() {
            super();
        }
        shouldFilterStep(step) {
            return step.name == "Step2" || step.name == "Step3"
        }
    }
    In this case the global-iterator will step on
        step1
        step4
        rootNode
    It will skip "Step2" and "Step3" as there is an extension that filters this step.

````


[IS-6.0] Autoplay should turn off at the end

Made it so the autoplay button stops when we reach the end of the instructions


[IS-6.0] Export IS.BabylonScene.LoadedEvent as a public API of the is-babylon_scene extension

Added a new IS.BabylonScene.LoadedEvent which indicates when a Babylon scene has been loaded. Also fixed the documentation.


[IS-6.0] - Support for phantom: true property and provide api for other gems

The IS is currently supporting a gltf document with phantom property. There is an IStepFilter in IS.GlobalIterator that could be used to filter the steps that are taken in the IS.