Skip to content

Repository files navigation

VisLogicUtilities

A centralized collection of script modules for use in the visualization logic of any visualization project. Uses the official Tacton CPQ VizStudio API to make things happen in the 3D scene. Detailed documentation for all modules can be found in docs

Available modules

  • Vector3 - Math for 3-dimensional vectors
  • Translations - Framework for managing localization texts.
  • Measurements3d - Draw measurements via core.sketches in 3D space (world space).
  • Measurements2d - Draw measurements via core.sketches in 2D space (screen space).
  • Labels - Draw text labels via core.sketches pointing to 3D or 2D locations.
  • SelectionHelper - Display helpful information when selecting things in 3D.
  • AssetFamilies - Verify that certain assets have certain docking points.
  • DockingTreeAnimation - Automatically animate the docking hierarchy of any project. Limited customizability.
  • GetDockingTree - A single function which creates a JSON representation of the docking hierarchy of a scene.
  • Parts - A powerful abstraction layer in dealing with and keeping track of mesh scene contents.
  • CameraFocus - Focus the camera on specified scene contents.
  • DirectAnimationPlayer - Linearly animate a single property of a scene object from one value to another.
  • SyncAnimationsPlayer - Play multiple keyframe animations simultaneously across multiple parts with a single completion callback.
  • AnimationKeyFrameRecorder - Development tool for recording scene property values over time and producing keyframe datasets for SyncAnimationsPlayer.

Installing VisLogicUtilities in your project

Download a release .zip archive and extract it into the visualLogic folder of your local VizStudio project files.

Using VisLogicUtilities in your VisLogic

VisLogicUtilities offers several different modules which should only be included as needed! You can include the modules like any other module. Just make sure the path is correct:

//any file in vislogic
//import
import { Measurements3d } from "./VisLogicUtilities/src/measurements3d/Measurements3d.js";
import { Vector3 } from "./VisLogicUtilities/src/vector3/Vector3.js";
//use
Measurements3d.draw({
    point1: new Vector3(0, 0, 0),
    point2: new Vector3(2, 2, 2),
    axis: "x",
    distanceFunction: function(distance){
		return Math.round(distance);
    }
});

Developing VisLogicUtilities

npm install
npm test

For a detailed guide on how to develop and test your own modules, see the contribution guide

About

Vis Logic Utilities

Resources

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages