9 #ifndef __diguyAuthorInterface_H
10 #define __diguyAuthorInterface_H
15 #define CPLUSPLUS_ONLY
27 class bdiScenarioEditorInput;
36 #define AUTHOR_UI_MAIN_WINDOW_NAME "main_window"
37 #define AUTHOR_UI_INPUT_MODE_WINDOW_NAME "input_mode"
38 #define AUTHOR_UI_TIME_CONTROL_WINDOW_NAME "time_control"
39 #define AUTHOR_UI_LOG_WINDOW_NAME "log"
40 #define AUTHOR_UI_VISIBILITY_WINDOW_NAME "visibility"
41 #define AUTHOR_UI_ELEMENTS_WINDOW_NAME "elements"
42 #define AUTHOR_UI_CHARACTER_WINDOW_NAME "character"
43 #define AUTHOR_UI_CROWD_WINDOW_NAME "crowd"
44 #define AUTHOR_UI_MIND_EDITOR_WINDOW_NAME "mind_editor"
45 #define AUTHOR_UI_AI_INSPECTOR_WINOW_NAME "ai_inspector"
104 void set_mouse_screen_coordinates(
int x,
int y);
126 void set_mouse_world_coordinates(
diguyVec3f world_coords);
143 void set_mouse_button_l(
int button_state);
150 void set_mouse_button_r(
int button_state );
157 void set_mouse_button_m(
int button_state );
175 void set_mouse_wheel_change(
float mouse_wheel_change );
184 void apply_mouse_inputs();
218 void set_keyboard_shift(
int key_state);
225 void set_keyboard_ctrl(
int key_state);
232 void set_keyboard_alt(
int key_state);
248 void set_key_pressed(
int key,
int key_state);
298 int set_selected_diguy_uid(
long uid);
305 int set_selected_diguy_uid_from_string(
const char* uid_string);
327 int get_uid_base_type(
long uid);
334 int get_uid_base_type_from_string(
const char* uid_string);
427 virtual int convert_screen_to_world(
const diguyVec3f& screen_xyz,
446 virtual int convert_world_to_screen(
const diguyVec3f& world_xyz,
449 virtual float get_altitude(
float x,
float y,
float old_z,
450 float from_height = 10.0f,
451 int* valid_result = NULL) = 0;
457 virtual int update_selected_objects(
const diguyVec3f& screen_xyz) = 0;
459 virtual int check_z_clearance(
const diguyVec3f& pos,
461 const float ground_angle,
462 float z_clear_height,
463 int check_below = 1)
const = 0;
496 int set_author_ui_window_visible(
const char* window_name,
int visible);
507 int get_author_ui_window_visible(
const char* window_name);
524 int set_author_ui_panel_visible(
const char* panel_name);
537 int set_author_ui_select_crowd_character(
diguyCharacter* character);
550 int set_author_ui_select_code_browser_script(
diguyCharacter* character);
567 #ifdef CPLUSPLUS_ONLY
575 virtual void author_ui_window_visibility_changed(
const char* window_name,
613 #ifdef CPLUSPLUS_ONLY
654 static int generate_sphere_vertices(
float radius,
663 int indices_for_wireframe,
665 unsigned int** indices);
678 static int generate_cone_vertices(
float radius,
688 int indices_for_wireframe,
690 unsigned int** indices);
703 static int generate_cylinder_vertices(
float radius,
713 int indices_for_wireframe,
715 unsigned int** indices);
726 static int generate_box_vertices(
diguyVec3f min,
734 int indices_for_wireframe,
736 unsigned int** indices);
744 static void delete_generated_vertices(
diguyVec3f* vertices,
747 unsigned int* indices);
758 #ifdef CPLUSPLUS_ONLY
760 bdiScenarioEditorInput* get_scripted_object() {
return m_scripted_object;}
771 friend class bdiScenarioApp;
772 friend class bdiScenarioEditorInput;
773 bdiScenarioEditorInput* m_scripted_object;
!
Definition: diguyAuthorInterface.h:57
Definition: diguy_vector_classes.h:34
Represents a scriptable api wrapping a diguy path shape, a curve defined by with a number of waypoint...
Definition: diguyPathShape.h:36
diguyAuthorInterface * diguyAuthorInterfaceCreateFunc(void *internal_data)
Definition: diguyAuthorInterface.h:27
An interface for manipulating a character's spline path. A path is typically authored in DI-Guy Scena...
Definition: diguyCharacterPath.h:47
Definition: diguyAuthorVisualRegionPaintbrush.h:44
The class that represents a DI-Guy Entity in the world.
Definition: diguyCharacter.h:82
Represents a scriptable api wrapping a 3D point on a path.
Definition: diguyWaypoint.h:35
Definition: diguy_vector_classes.h:74
A class that represents the unique per-character non-shared joint of a character. A diguyCharacter is...
Definition: diguyGraphicsLink.h:47
A class that represents the unique per-character non-shared mesh object. DI-Guy encapsulates its text...
Definition: diguyGraphicsShape.h:49