API Docs for: 2.0.0
Show:

effect Module

A DesaturateEffect is an Effect that desaturates the colours of Object within an ObjectSet.

Overview

TODO

Example

Desaturating an ObjectSet

In this example we create four Object, then add two of them to an ObjectSet.
Then we apply a DesaturateEffect to the ObjectSet, causing the colour of it's Object to become desaturated while the other two Object remain normal.


// Create a Viewer
var viewer = new BIMSURFER.Viewer({ element: "myDiv" });

// Create a Camera
var camera = new BIMSURFER.Camera(viewer, {
       eye: [30, 20, -30]
   });

// Spin the camera
viewer.on("tick", function () {
       camera.rotateEyeY(0.2);
   });

// Create a CameraControl so we can move the Camera
var cameraControl = new BIMSURFER.CameraControl(viewer, {
       camera: camera
   });

// Create an AmbientLight
var ambientLight = new BIMSURFER.AmbientLight(viewer, {
       color: [0.7, 0.7, 0.7]
   });

// Create a DirLight
var dirLight1 = new BIMSURFER.DirLight(viewer, {
       color: [0.6, 0.9, 0.9],
       dir: [1.0, 0.0, 0.0],
       space: "view"
   });

// Create a DirLight
var dirLight2 = new BIMSURFER.DirLight(viewer, {
       color: [0.6, 0.9, 0.9],
       dir: [-0.5, 0.0, -1.0],
       space: "view"
   });

// Create a BoxGeometry
var geometry = new BIMSURFER.BoxGeometry(viewer, {
       id: "myGeometry"
   });

// Create some Objects
// Share the BoxGeometry among them

var object1 = new BIMSURFER.Object(viewer, {
       type: "IfcRoof",
       geometries: [ geometry ],
       matrix: BIMSURFER.math.translationMat4v([-8, 0, -8])
   });

var object2 = new BIMSURFER.Object(viewer, {
       type: "IfcDistributionFlowElement",
       geometries: [ geometry ],
       matrix: BIMSURFER.math.translationMat4v([8, 0, -8])
   });

var object3 = new BIMSURFER.Object(viewer, {
       type: "IfcRailing",
       geometries: [ geometry ],
       matrix: BIMSURFER.math.translationMat4v([-8, 0, 8])
   });

var object4 = new BIMSURFER.Object(viewer, {
       type: "IfcRoof",
       geometries: [ geometry ],
       matrix: BIMSURFER.math.translationMat4v([8, 0, 8])
   });

// Create an ObjectSet that initially contains one of our Objects

var objectSet = new BIMSURFER.ObjectSet(viewer, {
       objects: [object1 ]
   });

// Apply a Desaturate effect to the ObjectSet, which causes the
// Object in the ObjectSet to become desaturated.

var desaturate = new BIMSURFER.DesaturateEffect(viewer, {
       objectSet: objectSet
   });

// Add a second Object to the ObjectSet, causing the Desaturate to now render
// that Object as desaturated also

objectSet.addObjects([object3]);