GuiObjectView¶
GUI control which displays a 3D model.
- Inherit:
- GuiTSCtrl
Description¶
GUI control which displays a 3D model.
Model displayed in the control can have other objects mounted onto it, and the light settings can be adjusted.
Example:
newGuiObjectView(ObjectPreview)
{
shapeFile = "art/shapes/items/kit/healthkit.dts";
mountedNode = "mount0";
lightColor = "1 1 1 1";
lightAmbient = "0.5 0.5 0.5 1";
lightDirection = "0 0.707 -0.707";
orbitDiststance = "2";
minOrbitDiststance = "0.917688";
maxOrbitDiststance = "5";
cameraSpeed = "0.01";
cameraZRot = "0";
forceFOV = "0";
reflectPriority = "0";
};
Methods¶
-
float
GuiObjectView::
getCameraSpeed
()¶ Return the current multiplier for camera zooming and rotation.
Returns: zooming / rotation multiplier value. Example:
// Request the current camera zooming and rotation multiplier value %multiplier = %thisGuiObjectView.getCameraSpeed();
-
string
GuiObjectView::
getModel
()¶ Return the model displayed in this view.
Returns: Name of the displayed model. Example:
// Request the displayed model name from the GuiObjectView object. %modelName = %thisGuiObjectView.getModel();
-
string
GuiObjectView::
getMountedModel
()¶ Return the name of the mounted model.
Returns: Name of the mounted model. Example:
// Request the name of the mounted model from the GuiObjectView object %mountedModelName = %thisGuiObjectView.getMountedModel();
-
string
GuiObjectView::
getMountSkin
(int param1, int param2)¶ Return the name of skin used on the mounted model.
Returns: Name of the skin used on the mounted model. Example:
// Request the skin name from the model mounted on to the main model in the control %mountModelSkin = %thisGuiObjectView.getMountSkin();
-
float
GuiObjectView::
getOrbitDistance
()¶ Return the current distance at which the camera orbits the object.
Returns: The distance at which the camera orbits the object. Example:
// Request the current orbit distance %orbitDistance = %thisGuiObjectView.getOrbitDistance();
-
string
GuiObjectView::
getSkin
()¶ Return the name of skin used on the primary model.
Returns: Name of the skin used on the primary model. Example:
// Request the name of the skin used on the primary model in the control %skinName = %thisGuiObjectView.getSkin();
-
void
GuiObjectView::
onMouseEnter
()¶ Called whenever the mouse enters the control.
Example:
// The mouse has entered the control, causing the callback to occurGuiObjectView::onMouseEnter(%this) { // Code to run when the mouse enters this control }
-
void
GuiObjectView::
onMouseLeave
()¶ Called whenever the mouse leaves the control.
Example:
// The mouse has left the control, causing the callback to occurGuiObjectView::onMouseLeave(%this) { // Code to run when the mouse leaves this control }
-
void
GuiObjectView::
setCameraSpeed
(float factor)¶ Sets the multiplier for the camera rotation and zoom speed.
Parameters: factor – Multiplier for camera rotation and zoom speed. Example:
// Set the factor value %factor = "0.75"; // Inform the GuiObjectView object to set the camera speed. %thisGuiObjectView.setCameraSpeed(%factor);
-
void
GuiObjectView::
setLightAmbient
(ColorF color)¶ Set the light ambient color on the sun object used to render the model.
Parameters: color – Ambient color of sunlight. Example:
// Define the sun ambient color value %color = "1.0 0.4 0.6"; // Inform the GuiObjectView object to set the sun ambient color to the requested value %thisGuiObjectView.setLightAmbient(%color);
-
void
GuiObjectView::
setLightColor
(ColorF color)¶ Set the light color on the sun object used to render the model.
Parameters: color – Color of sunlight. Example:
// Set the color value for the sun %color = "1.0 0.4 0.5"; // Inform the GuiObjectView object to change the sun color to the defined value %thisGuiObjectView.setLightColor(%color);
-
void
GuiObjectView::
setLightDirection
(Point3F direction)¶ Set the light direction from which to light the model.
Parameters: direction – XYZ direction from which the light will shine on the model Example:
// Set the light direction %direction = "1.0 0.2 0.4"// Inform the GuiObjectView object to change the light direction to the defined value %thisGuiObjectView.setLightDirection(%direction);
-
void
GuiObjectView::
setModel
(string shapeName)¶ Sets the model to be displayed in this control.
Parameters: shapeName – Name of the model to display. Example:
// Define the model we want to display %shapeName = "gideon.dts"; // Tell the GuiObjectView object to display the defined model %thisGuiObjectView.setModel(%shapeName);
-
void
GuiObjectView::
setMount
(string shapeName, string mountNodeIndexOrName)¶ Mounts the given model to the specified mount point of the primary model displayed in this control. Detailed description
Parameters: - shapeName – Name of the model to mount.
- mountNodeIndexOrName – Index or name of the mount point to be mounted to. If index, corresponds to “mountN” in your shape where N is the number passed here.
Example:
// Set the shapeName to mount %shapeName = "GideonGlasses.dts"// Set the mount node of the primary model in the control to mount the new shape at %mountNodeIndexOrName = "3"; //OR: %mountNodeIndexOrName = "Face"; // Inform the GuiObjectView object to mount the shape at the specified node. %thisGuiObjectView.setMount(%shapeName,%mountNodeIndexOrName);
-
void
GuiObjectView::
setMountedModel
(string shapeName)¶ Sets the model to be mounted on the primary model.
Parameters: shapeName – Name of the model to mount. Example:
// Define the model name to mount %modelToMount = "GideonGlasses.dts"; // Inform the GuiObjectView object to mount the defined model to the existing model in the control %thisGuiObjectView.setMountedModel(%modelToMount);
-
void
GuiObjectView::
setMountSkin
(string skinName)¶ Sets the skin to use on the mounted model.
Parameters: skinName – Name of the skin to set on the model mounted to the main model in the control Example:
// Define the name of the skin %skinName = "BronzeGlasses"; // Inform the GuiObjectView Control of the skin to use on the mounted model %thisGuiObjectViewCtrl.setMountSkin(%skinName);
-
void
GuiObjectView::
setOrbitDistance
(float distance)¶ Sets the distance at which the camera orbits the object. Clamped to the acceptable range defined in the class by min and max orbit distances. Detailed description
Parameters: distance – The distance to set the orbit to (will be clamped). Example:
// Define the orbit distance value %orbitDistance = "1.5"; // Inform the GuiObjectView object to set the orbit distance to the defined value %thisGuiObjectView.setOrbitDistance(%orbitDistance);
-
void
GuiObjectView::
setSeq
(string indexOrName)¶ Sets the animation to play for the viewed object.
Parameters: indexOrName – The index or name of the animation to play. Example:
// Set the animation index value, or animation sequence name. %indexVal = "3"; //OR: %indexVal = "idle"; // Inform the GuiObjectView object to set the animation sequence of the object in the control. %thisGuiObjectVew.setSeq(%indexVal);
-
void
GuiObjectView::
setSkin
(string skinName)¶ Sets the skin to use on the model being displayed.
Parameters: skinName – Name of the skin to use. Example:
// Define the skin we want to apply to the main model in the control %skinName = "disco_gideon"; // Inform the GuiObjectView control to update the skin the to defined skin %thisGuiObjectView.setSkin(%skinName);
Fields¶
-
string
GuiObjectView::
animSequence
¶ The animation sequence to play on the model.
-
Point3F
GuiObjectView::
cameraRotation
¶ Set the camera rotation.
-
float
GuiObjectView::
cameraSpeed
¶ Multiplier for mouse camera operations.
-
ColorF
GuiObjectView::
lightAmbient
¶ Ambient color of the sunlight used to render the model.
-
ColorF
GuiObjectView::
lightColor
¶ Diffuse color of the sunlight used to render the model.
-
Point3F
GuiObjectView::
lightDirection
¶ Direction from which the model is illuminated.
-
float
GuiObjectView::
maxOrbitDiststance
¶ Minimum distance below which the camera will not zoom in further.
-
float
GuiObjectView::
minOrbitDiststance
¶ Maxiumum distance to which the camera can be zoomed out.
-
string
GuiObjectView::
mountedNode
¶ Name of node on primary model to which to mount the secondary shape.
-
filename
GuiObjectView::
mountedShapeFile
¶ Optional shape file to mount on the primary model (e.g. weapon).
-
string
GuiObjectView::
mountedSkin
¶ Skin name used on mounted shape file.
-
float
GuiObjectView::
orbitDiststance
¶ Distance from which to render the model.
-
filename
GuiObjectView::
shapeFile
¶ The object model shape file to show in the view.
-
string
GuiObjectView::
skin
¶ The skin to use on the object model.