User Tools

Site Tools


viewport

While interacting with the Viewport is important to any workflow, interacting with 3 dimensional space through a 2 dimensional plane is complex. As such, only the Viewport Controls are currently supported by the Interactive Lesson Manager. The following example demonstrates instructions for the viewport type:

Click the name of the example below to save it as a file.

Interactive_Lesson_Viewport_Example.dsa
var sCtrlKey = App.platform() == App.MacOSX ? "Cmd" : "Ctrl";
var oLessonMgr = MainWindow.getInteractiveLessonMgr();
oLessonMgr.begin([
	{
	"viewport": "controls.orbit",
	"tag": "Click + Drag",
	"info": "Left click (hold) and drag this control to orbit the view around its focal point."
	},
	{
	"viewport": "controls.rotate",
	"tag": "Right Click + Drag",
	"info": "Right click (hold) and drag this control to rotate the view about its origin; like you are turning your head."
	},
	{
	"viewport": "controls.bank",
	"tag": String("%1 + Right Click + Drag").arg( sCtrlKey ),
	"info": String("With the %1 key pressed, right click (hold) and drag this control to bank the view about its line of sight; like you are tilting your head.").arg( sCtrlKey )
	},
	{
	"viewport": "controls.pan",
	"tag": "Click + Drag",
	"info": "Left click (hold) and drag this control to move the view up, down, left and/or right."
	},
	{
	"viewport": "controls.dolly",
	"tag": "Right Click + Drag",
	"info": "Right click (hold) and drag this control to move the view closer, farther, left and/or right."
	},
	{
	"viewport": "controls.zoom_dolly",
	"tag": "Click + Drag",
	"info": "Left click (hold) and drag this control to move the view closer, farther, left and/or right."
	},
	{
	"viewport": "controls.zoom_focal",
	"tag": "Right Click + Drag",
	"info": "Right click (hold) and drag this control to adjust the focal length of the view."
	},
	{
	"viewport": "controls.aim",
	"tag": "Right Click",
	"info": "Right click this control to aim the view at the selected item(s) in the scene."
	},
	{
	"viewport": "controls.frame",
	"info": "Left click this control to frame the selected item(s) in the scene."
	},
	{
	"viewport": "controls.reset",
	"info": "Click this control to reset the view to its default settings."
	},
	{
	"viewport": "controls.cube",
	"value": "topfrontright",
	"tag": "Click + Drag",
	"info": "Left click (hold) and drag the cube to orbit the view around its focal point.  Left click a face, edge or corner of the cube to quickly orbit the view to 1 of 26 predefined positions around the focal point.  Use the cube to adjust the view so that the top front right corner is facing you."
	},
	{
	"viewport": "controls.options",
	"locate_only": "Viewport Options",
	"info": "This control provides a menu with various Viewport Options.  Click the label to continue."
	},
	{
	"viewport": "controls.drawstyle",
	"value": "Wire Shaded",
	"tag": "Select",
	"info": "Change your DrawStyle to Wire Shaded."
	},
	{
	"viewport": "controls.camera",
	"value": "Front View",
	"tag": "Select",
	"info": "Change your view to the Front View."
	}
]);

While the instructions for the majority of the controls are very simple, the controls.cube instruction is a little more complex. When defining this instruction, a value member should be included in the instruction to prompt the user to orbit the view to a specific orientation. Acceptable values for the member are of the form: “[top|bottom][front|back][left|right]”, where “[]” is a group and “|” means “or” and the positions are concatenated as shown in the example above. Specifying 1 position defines a face, 2 defines an edge and 3 defines a corner. While any of the positions are optional, one must be provided - the value member cannot be an empty string.