
|
|
This file was automatically generated from diguyWaypoint.h. Do not edit this file directly; the changes will be lost.Includes: declspec_diguy.h
Contents:
Link against: libdiguy
class diguyWaypoint
|
class BDI_DECLSPEC_diguy diguyWaypoint { public: const char* get_name(); long get_uid(); int get_selected(); void set_position(float x, float y, float z); void set_position_double(double x, double y, double z); void get_position(float* x, float* y, float* z); void get_position_double(double* tx, double* ty, double* tz); void set_orientation_in(float rz, float rx, float ry); void get_orientation_in(float* rz, float* rx, float* ry); void set_orientation_out(float rz, float rx, float ry); void get_orientation_out(float* rz, float* rx, float* ry); void set_yaw_coupled(int yaw_coupled); int get_yaw_coupled(); void set_yaw_coupling_offset(float yaw_coupling_offset); float get_yaw_coupling_offset(); void set_roll_coupled(int roll_coupled); int get_roll_coupled(); void set_roll_coupling_offset(float roll_coupling_offset); float get_roll_coupling_offset(); void set_pitch_coupled(int pitch_coupled); int get_pitch_coupled(); void set_pitch_coupling_offset(float pitch_coupling_offset); float get_pitch_coupling_offset(); void set_weight_in(float weight_in); float get_weight_in(); void set_weight_out(float weight_out); float get_weight_out(); void set_weight_coupled(int weight_coupled); int get_weight_coupled(); void get_control_point_in_position(float* x, float* y, float* z); void get_control_point_out_position(float* x, float* y, float* z); void get_forward_normal_in(float* x, float* y, float* z); void get_left_normal_in(float* x, float* y, float* z); void get_up_normal_in(float* x, float* y, float* z); void get_forward_normal_out(float* x, float* y, float* z); void get_left_normal_out(float* x, float* y, float* z); void get_up_normal_out(float* x, float* y, float* z); void set_num_segments(int num_segments); int get_num_segments(); void set_x(float x); float get_x(); void set_y(float y); float get_y(); void set_z(float z); float get_z(); void set_yaw_in(float yaw); float get_yaw_in(); void set_yaw_out(float yaw); float get_yaw_out(); int get_yaw_smooth(); void set_yaw_smooth(int yaw_smooth); float get_yaw_offset(); void set_yaw_offset(float yaw_offset); void set_roll_in(float roll); float get_roll_in(); void set_roll_out(float roll); float get_roll_out(); int get_roll_smooth(); void set_roll_smooth(int roll_smooth); float get_roll_offset(); void set_roll_offset(float roll_offset); void set_pitch_in(float pitch); float get_pitch_in(); void set_pitch_out(float pitch); float get_pitch_out(); int get_pitch_smooth(); void set_pitch_smooth(int pitch_smooth); float get_pitch_offset(); void set_pitch_offset(float pitch_offset); int get_distance_smooth(); void set_distance_smooth(int distance_smooth);
| General Functions |
Unless otherwise noted all functions in this class section are callable from:
- C++
- Script
function diguyWaypoint::get_name |
Prototype:
Description:const char* get_name();
Returns the name of the object. This pointer will never be NULL.Returns:
name of the object
function diguyWaypoint::get_uid |
Prototype:
Description:long get_uid();
All waypoints are assigned a unique identifier, or uid. This function returns this waypoints's uid.
Note: unique identifiers will change between DI-Guy runs!Returns:
unique identifier of object
function diguyWaypoint::get_selected |
Prototype:
Returns:int get_selected();
1 if waypoint is selected in DI-Guy Scenario or DI-Guy Author, 0 if not.
| Position and Orientation Functions |
The Boston Dynamics global coordinate system is right-handed, with X forward, Z up, and Y to the left. Rotation directions follow standard right-handed coordinate system conventions:
NOTE:
- positive rotations about Z cause (rz) a yaw to the left
- positive rotations about X cause (rx) a counter-clockwise roll
- position rotations about Y cause (ry) a forward pitch
If modifications are made to the waypoint using any of the set_*() commands, if the waypoint is part of a diguyCharacterPath or diguyPathShape, the diguyCharacterPath::update() or diguyPathShape::update() function must be called for changes to take effect. Multiple changes can be made before the update calls are made.
function diguyWaypoint::set_position |
Prototype:
Description:void set_position(float x, float y, float z);
This function sets the x, y, z coordinates of the waypoint in meters.
Requires subsequent call to diguyCharacterPath::update() or diguyPathShape::update(). (See above.)Returns:
x, y, z coordinate of waypoint in meters
function diguyWaypoint::set_position_double |
Prototype:
Description:void set_position_double(double x, double y, double z);
Double precision version of set_position().
function diguyWaypoint::get_position |
Prototype:
Returns:void get_position(float* x, float* y, float* z);
x, y, z coordinate of waypoint in meters
Note: in Lua this will return 3 values.
function diguyWaypoint::get_position_double |
Prototype:
Description:void get_position_double(double* tx, double* ty, double* tz);
Double precision version of get_position().Note: in Lua this will return 3 values.
function diguyWaypoint::set_orientation_in |
Prototype:
Description:void set_orientation_in(float rz, float rx, float ry);
Sets the orientation of the path entering the waypoint.
If the angles in and angles out are coupled (e.g., get_yaw_coupled() returns 1) this will set rz out, as well. The new angle out will be angle in plus the angle coupling offset.
Requires subsequent call to diguyCharacterPath::update() or diguyPathShape::update(). (See above.)Arguments:
rz, rx, ry orientations in degrees
function diguyWaypoint::get_orientation_in |
Prototype:
Description:void get_orientation_in(float* rz, float* rx, float* ry);
Retrieves the orientation of the path entering the waypoint.Arguments:
rz, rx, ry orientations in degrees counter-clockwise from the positive X axis Note: in Lua this will return 3 values.
function diguyWaypoint::set_orientation_out |
Prototype:
Description:void set_orientation_out(float rz, float rx, float ry);
Equivalent to set_orientation_in(), but for the path exiting the waypoint.
function diguyWaypoint::get_orientation_out |
Prototype:
Description:void get_orientation_out(float* rz, float* rx, float* ry);
Equivalent to get_orientation_in(), but for the path exiting the waypoint.Note: in Lua this will return 3 values.
function diguyWaypoint::set_yaw_coupled |
Prototype:
Description:void set_yaw_coupled(int yaw_coupled);
This function sets whether the yaw in and yaw out angles are coupled together. In general, for paths to look smooth, the in and out angles should be coupled together with 0 coupling offset.
Requires subsequent call to diguyCharacterPath::update() or diguyPathShape::update(). (See above.)Arguments:
yaw_coupled pass 1 to couple yaw in to yaw out
function diguyWaypoint::get_yaw_coupled |
Prototype:
Returns:int get_yaw_coupled();
whether the yaw in and yaw out angles are coupled together; see set_yaw_coupled()
function diguyWaypoint::set_yaw_coupling_offset |
Prototype:
Description:void set_yaw_coupling_offset(float yaw_coupling_offset);
This function sets by how much the yaw in and yaw out angles should be offset when they are coupled together.
Requires subsequent call to diguyCharacterPath::update() or diguyPathShape::update(). (See above.)Arguments:
yaw_coupling_offset new yaw coupling offset, in degrees
function diguyWaypoint::get_yaw_coupling_offset |
Prototype:
Returns:float get_yaw_coupling_offset();
the offset between yaw in and yaw out when the yaw angles are coupled together; see set_yaw_coupling_offset()
function diguyWaypoint::set_roll_coupled |
Prototype:
Description:void set_roll_coupled(int roll_coupled);
This function is the same as its yaw counterpart, but rotation is about the x axis.
function diguyWaypoint::get_roll_coupled |
Prototype:
Description:int get_roll_coupled();
This function is the same as its yaw counterpart, but rotation is about the x axis.
function diguyWaypoint::set_roll_coupling_offset |
Prototype:
Description:void set_roll_coupling_offset(float roll_coupling_offset);
This function is the same as its yaw counterpart, but rotation is about the x axis.
function diguyWaypoint::get_roll_coupling_offset |
Prototype:
Description:float get_roll_coupling_offset();
This function is the same as its yaw counterpart, but rotation is about the x axis.
function diguyWaypoint::set_pitch_coupled |
Prototype:
Description:void set_pitch_coupled(int pitch_coupled);
This function is the same as its yaw counterpart, but rotation is about the y axis.
function diguyWaypoint::get_pitch_coupled |
Prototype:
Description:int get_pitch_coupled();
This function is the same as its yaw counterpart, but rotation is about the y axis.
function diguyWaypoint::set_pitch_coupling_offset |
Prototype:
Description:void set_pitch_coupling_offset(float pitch_coupling_offset);
This function is the same as its yaw counterpart, but rotation is about the y axis.
function diguyWaypoint::get_pitch_coupling_offset |
Prototype:
Description:float get_pitch_coupling_offset();
This function is the same as its yaw counterpart, but rotation is about the y axis.
| Control Point Functions |
Unless otherwise noted all functions in this class section are callable from:
- C++
- Script
function diguyWaypoint::set_weight_in |
Prototype:
Description:void set_weight_in(float weight_in);
This function sets the weight of the control handle heading into the waypoint. The weights of the waypoint set how long the "control handles" of the waypoint are, in meters. The longer the control handle, the more the path will be stretched in the direction of the waypoint's orientation.
If the weight in and weight out are coupled (get_weight_coupled() returns 1) this will set weight out, as well.
Requires subsequent call to diguyCharacterPath::update() or diguyPathShape::update(). (See above.)
function diguyWaypoint::get_weight_in |
Prototype:
Returns:float get_weight_in();
weight heading into the waypoint, in meters; see set_weight_in()
function diguyWaypoint::set_weight_out |
Prototype:
Description:void set_weight_out(float weight_out);
Similar to set_weight_in(), but for the outgoing weight.
function diguyWaypoint::get_weight_out |
Prototype:
Returns:float get_weight_out();
weight heading out of the waypoint, in meters; see set_weight_out().
function diguyWaypoint::set_weight_coupled |
Prototype:
Description:void set_weight_coupled(int weight_coupled);
This function sets whether the weight in and weight out are coupled together.
If this waypoint is part of a diguyCharacterPath or diguyPathShape, the diguyCharacterPath::update() or diguyPathShape::update() function must be called for changes to take effect.
function diguyWaypoint::get_weight_coupled |
Prototype:
Returns:int get_weight_coupled();
whether the weight in and weight out are coupled together; see set_weight_coupled()
function diguyWaypoint::get_control_point_in_position |
Prototype:
Description:void get_control_point_in_position(float* x, float* y, float* z);
This function returns the world position of the control point heading into the waypoint. This is derived from the waypoint's position, orientation in, and the weights of the in control bar.
function diguyWaypoint::get_control_point_out_position |
Prototype:
Description:void get_control_point_out_position(float* x, float* y, float* z);
Similar to get_control_point_in_position(), but for out control point.
function diguyWaypoint::get_forward_normal_in |
Prototype:
Description:void get_forward_normal_in(float* x, float* y, float* z);
This function returns the normal vector of the control bar heading into the waypoint.
function diguyWaypoint::get_left_normal_in |
Prototype:
Description:void get_left_normal_in(float* x, float* y, float* z);
Similar to get_forward_normal_in(), but for left normal.
function diguyWaypoint::get_up_normal_in |
Prototype:
Description:void get_up_normal_in(float* x, float* y, float* z);
Similar to get_out_normal_in(), but for up normal.
function diguyWaypoint::get_forward_normal_out |
Prototype:
Description:void get_forward_normal_out(float* x, float* y, float* z);
Similar to get_forward_normal_in(), but for out control bar.
function diguyWaypoint::get_left_normal_out |
Prototype:
Description:void get_left_normal_out(float* x, float* y, float* z);
Similar to get_left_normal_in(), but for out control bar.
function diguyWaypoint::get_up_normal_out |
Prototype:
Description:void get_up_normal_out(float* x, float* y, float* z);
Similar to get_up_normal_in(), but for out control bar.
| Other Functions |
function diguyWaypoint::set_num_segments |
Prototype:
Description:void set_num_segments(int num_segments);
This function sets how many segments the path portion this waypoint begins will be divided into. This is strictly for visualization purposes only and will have no functional effect.
If this waypoint is part of a diguyCharacterPath or diguyPathShape, the diguyCharacterPath::update() or diguyPathShape::update() function must be called for changes to take effect.Arguments:
num_segments number of segments to divide path portion into; default is 64
function diguyWaypoint::get_num_segments |
Prototype:
Returns:int get_num_segments();
how many segments the path portion this waypoint begins will be divided into; see set_num_segments()
| Deprecated Functions |
The following functions are deprecated as of DI-Guy 10
As these functions may disappear in a future version of DI-Guy, it is recommended that you replace calls to these functions from your application.
function diguyWaypoint::set_x |
Prototype:
void set_x(float x);This function is deprecated. Use set_position() instead.
function diguyWaypoint::get_x |
Prototype:
float get_x();This function is deprecated. Use get_position() instead.
function diguyWaypoint::set_y |
Prototype:
void set_y(float y);This function is deprecated. Use set_position() instead.
function diguyWaypoint::get_y |
Prototype:
float get_y();This function is deprecated. Use get_position() instead.
function diguyWaypoint::set_z |
Prototype:
void set_z(float z);This function is deprecated. Use set_position() instead.
function diguyWaypoint::get_z |
Prototype:
float get_z();This function is deprecated. Use get_position() instead.
function diguyWaypoint::set_yaw_in |
Prototype:
void set_yaw_in(float yaw);This function is deprecated. Use set_orientation_in() instead.
function diguyWaypoint::get_yaw_in |
Prototype:
float get_yaw_in();This function is deprecated. Use get_orientation_in() instead.
function diguyWaypoint::set_yaw_out |
Prototype:
void set_yaw_out(float yaw);This function is deprecated. Use set_orientation_out() instead.
function diguyWaypoint::get_yaw_out |
Prototype:
float get_yaw_out();This function is deprecated. Use get_orientation_out() instead.
function diguyWaypoint::get_yaw_smooth |
Prototype:
int get_yaw_smooth();This function is deprecated. Use get_yaw_coupled() instead.
function diguyWaypoint::set_yaw_smooth |
Prototype:
void set_yaw_smooth(int yaw_smooth);This function is deprecated. Use set_yaw_coupled() instead.
function diguyWaypoint::get_yaw_offset |
Prototype:
float get_yaw_offset();This function is deprecated. Use get_yaw_coupling_offset() instead.
function diguyWaypoint::set_yaw_offset |
Prototype:
void set_yaw_offset(float yaw_offset);This function is deprecated. Use set_yaw_coupling_offset() instead.
function diguyWaypoint::set_roll_in |
Prototype:
void set_roll_in(float roll);This function is deprecated. Use set_orientation_in() instead.
function diguyWaypoint::get_roll_in |
Prototype:
float get_roll_in();This function is deprecated. Use get_orientation_in() instead.
function diguyWaypoint::set_roll_out |
Prototype:
void set_roll_out(float roll);This function is deprecated. Use set_orientation_out() instead.
function diguyWaypoint::get_roll_out |
Prototype:
float get_roll_out();This function is deprecated. Use get_orientation_out() instead.
function diguyWaypoint::get_roll_smooth |
Prototype:
int get_roll_smooth();This function is deprecated. Use get_roll_coupled() instead.
function diguyWaypoint::set_roll_smooth |
Prototype:
void set_roll_smooth(int roll_smooth);This function is deprecated. Use set_roll_coupled() instead.
function diguyWaypoint::get_roll_offset |
Prototype:
float get_roll_offset();This function is deprecated. Use get_roll_coupling_offset() instead.
function diguyWaypoint::set_roll_offset |
Prototype:
void set_roll_offset(float roll_offset);This function is deprecated. Use set_roll_coupling_offset() instead.
function diguyWaypoint::set_pitch_in |
Prototype:
void set_pitch_in(float pitch);This function is deprecated. Use set_orientation_in() instead.
function diguyWaypoint::get_pitch_in |
Prototype:
float get_pitch_in();This function is deprecated. Use get_orientation_in() instead.
function diguyWaypoint::set_pitch_out |
Prototype:
void set_pitch_out(float pitch);This function is deprecated. Use set_orientation_out() instead.
function diguyWaypoint::get_pitch_out |
Prototype:
float get_pitch_out();This function is deprecated. Use get_orientation_out() instead.
function diguyWaypoint::get_pitch_smooth |
Prototype:
int get_pitch_smooth();This function is deprecated. Use get_pitch_coupled() instead.
function diguyWaypoint::set_pitch_smooth |
Prototype:
void set_pitch_smooth(int pitch_smooth);This function is deprecated. Use set_pitch_coupled() instead.
function diguyWaypoint::get_pitch_offset |
Prototype:
float get_pitch_offset();This function is deprecated. Use get_pitch_coupling_offset() instead.
function diguyWaypoint::set_pitch_offset |
Prototype:
void set_pitch_offset(float pitch_offset);This function is deprecated. Use get_pitch_coupling_offset() instead.
function diguyWaypoint::get_distance_smooth |
Prototype:
int get_distance_smooth();This function is deprecated. Use get_weight_coupled() instead.
function diguyWaypoint::set_distance_smooth |
Prototype:
void set_distance_smooth(int distance_smooth);This function is deprecated. Use set_weight_coupled() instead.
ALL RIGHTS RESERVED.
These coded instructions, statements, and computer programs contain unpublished proprietary information of Boston Dynamics and are protected by Copyright Laws of the United States. They may not be used, duplicated, or disclosed in any form, in whole or in part, without the prior written consent from Boston Dynamics.
RESTRICTED RIGHTS LEGEND
Use, duplication, or disclosure by the government is subject to restrictions as set forth in FAR 52.227.19(c)(2) or subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Sofware clause at DFARS 252.227-7013 and/or in similar or successor clauses in the FAR, or the DOD or NASA FAR Supplement, or to subparagraphs (c)(1) and (c)(2) of the Commercial Computer Software--Restricted Rights at 48 CFR 52.227-19, as applicable. Unpublished-rights reserved under the Copyright Laws of the United States.
Contractor/Manufacturer is:
Boston Dynamics/78 Fourth Avenue/Waltham MA 02451.