PCL Examples > Basic Functions > Viewing Menu
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX''">XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX''">   
Viewing Menu
This section contains examples of functions that are used to create, delete, modify and retrieve the settings of named views stored in the database.
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_aa_get()
#
#                      This session file will open a new database by 
#                      name’new.db’ and will create a solid. The 
#                      viewing direction will be changed using 
#                      function ’ga_view_aa_set()’ and the direction 
#                      will be read back by using function 
#                      ’ga_view_aa_get()’.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_aa_get()
#  has the following arguments:
#
#  ga_view_aa_get
#     (  name_of_view,
#        angle_x,
#        angle_y,
#        angle_z )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_angle_x
REAL     r_angle_y
REAL     r_angle_z
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to along X axis for the current view.
r_angle_y      = 90
#
i_return_value =                                 @
   ga_view_aa_set                                @
      (  r_angle_x,                              @
         r_angle_y,                              @
         r_angle_z )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read rotation around the global model 
#  coordinate system for the current view.
#
i_return_value =                                 @
   ga_view_aa_get                                @
      (  s_name_of_view,                         @
         r_angle_x,                              @
         r_angle_y,                              @
         r_angle_z )
dump i_return_value
dump r_angle_x,r_angle_y,r_angle_z
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_aa_set()
#
#                      This session file will open a new database by 
#                      name’new.db’ and will create a solid. The 
#                      viewing direction will be changed using 
#                      function ’ga_view_aa_set()’ and the direction 
#                      will be read back by using function 
#                      ’ga_view_aa_get()’.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_aa_set()
#  has the following arguments:
#
#  ga_view_aa_set
#     (  angle_x,
#        angle_y,
#        angle_z )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_angle_x
REAL     r_angle_y
REAL     r_angle_z
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to along X axis for the current view.
r_angle_y      = 90
#
i_return_value =                                 @
   ga_view_aa_set                                @
      (  r_angle_x,                              @
         r_angle_y,                              @
         r_angle_z )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read rotation around the global model 
#  coordinate system for the current view.
#
i_return_value =                                 @
   ga_view_aa_get                                @
      (  s_name_of_view,                         @
         r_angle_x,                              @
         r_angle_y,                              @
         r_angle_z )
dump i_return_value
dump r_angle_x,r_angle_y,r_angle_z
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of two calls to 
#                      the function ga_view_ar_set()
#
#                      This session file will open a new database by 
#                      name’new.db’ and will create a solid. The 
#                      viewing direction will be changed using 
#                      function ’ga_view_ar_set()’ and the direction 
#                      will be read back by using function 
#                      ’ga_view_aa_get()’.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_ar_set()
#  has the following arguments:
#
#  ga_view_ar_set
#     (  angle_x,
#        angle_y,
#        angle_z )
#
#---------------------------------------------------------------------
#  Variable Declarations
REAL     r_angle_x
REAL     r_angle_y
REAL     r_angle_z
INTEGER  i_return_value
STRING   s_name_of_view[8]
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("2","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set (  23., -34., 0. )
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to rotate model around X axis of the global model 
#  coordinate system for the current view.
r_angle_y      = 90
#
i_return_value =                                 @
   ga_view_ar_set                                @
      (  r_angle_x,                              @
         r_angle_y,                              @
         r_angle_z )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read rotation around the global model
#  coordinate system for the current view.
#
i_return_value =                                 @
   ga_view_aa_get                                @
      (  s_name_of_view,                         @
         r_angle_x,                              @
         r_angle_y,                              @
         r_angle_z )
dump i_return_value
dump r_angle_x,r_angle_y,r_angle_z
#---------------------------------------------------------------------
#  Calling function again to rotate model around X axis of the global 
#  model coordinate system for the current view.
r_angle_x      = 0
r_angle_y      = 90
r_angle_z      = 0
#
i_return_value =                                 @
   ga_view_ar_set                                @
      (  r_angle_x,                              @
         r_angle_y,                              @
         r_angle_z )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read rotation around the global model 
#  coordinate system for the current view.
#
i_return_value =                                 @
   ga_view_aa_get                                @
      (  s_name_of_view,                         @
         r_angle_x,                              @
         r_angle_y,                              @
         r_angle_z )
dump i_return_value
dump r_angle_x,r_angle_y,r_angle_z
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_back_get()
#
#                      This session file will open a new database by 
#                      name ’new.db’ and will create a solid. The back
#                      clipping will be set to ON. The function 
#                      ’ga_view_back_set’ will be used to set the back
#                      clipping plane to -1. and function 
#                      ’ga_view_back_get’ will read the same distance.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_back_get()
#  has the following arguments:
#
#  ga_view_back_get
#     (  name_of_view,
#        distance )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_distance
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Setting the clipping status to ON.
i_return_value = ga_view_clipping_set(TRUE)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to set the back clipping plane distance to -1.
r_distance     = -1.
#
i_return_value =                                 @
   ga_view_back_set                              @
      (  r_distance )
dump i_return_value
 
#  Resetting variable to zero.
r_distance     = 0.
#---------------------------------------------------------------------
#  Calling function to read the location of the back clipping plane.
#
i_return_value =                                 @
   ga_view_back_get                              @
      (  s_name_of_view,                         @
         r_distance )
dump i_return_value
dump r_distance
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_back_set()
#
#                      This session file will open a new database by 
#                      name ’new.db’ and will create a solid. The back
#                      clipping will be set to ON. The function 
#                      ’ga_view_back_set’ will be used to set the back
#                      clipping plane to -1. and function 
#                      ’ga_view_back_get’ will read the same distance.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_back_set()
#  has the following arguments:
#
#  ga_view_back_set
#     (  distance )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_distance
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Setting the clipping status to ON.
i_return_value = ga_view_clipping_set(TRUE)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to set the back clipping plane distance to -1.
r_distance     = -1.
#
i_return_value =                                 @
   ga_view_back_set                              @
      (  r_distance )
dump i_return_value
 
#  Resetting variable to zero.
r_distance     = 0.
#---------------------------------------------------------------------
#  Calling function to read the location of the back clipping plane.
#
i_return_value =                                 @
   ga_view_back_get                              @
      (  s_name_of_view,                         @
         r_distance )
dump i_return_value
dump r_distance
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_capping_get()
#
#                      This session file will create a new database by
#                      name ’new.db’ and create a solid. The solid 
#                      will be clipped at the front plane location. 
#                      And function ’ga_view_capping_set’ will be 
#                      called with two different values. Before 
#                      calling second time the session file will 
#                      paused. Function ’ga_view_capping_get’ will be
#                      called to read the clipping status.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_capping_get()
#  has the following arguments:
#
#  ga_view_capping_get
#     (  name_of_view,
#        capping_status )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
LOGICAL  l_capping_status
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to clip the model using front clipping plane.
i_return_value = ga_view_front_set( 1. )
dump i_return_value
i_return_value = ga_view_clipping_set( TRUE )
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to read the capping status of the current view.
#
i_return_value =                                 @
   ga_view_capping_get                           @
      (  s_name_of_view,                         @
         l_capping_status )
dump i_return_value
dump l_capping_status
#---------------------------------------------------------------------
#  Session file paused. Press "Resume" to continue..
sf_pause()
#---------------------------------------------------------------------
#  Setting capping status to ON state for the current view.
l_capping_status = TRUE
#
i_return_value =                                 @
   ga_view_capping_set                           @
      (  l_capping_status )
dump i_return_value
 
#---------------------------------------------------------------------
#  Resetting the variable to False.
l_capping_status = FALSE
#---------------------------------------------------------------------
#  Calling function to read the capping status of the current view.
#
i_return_value =                                 @
   ga_view_capping_get                           @
      (  s_name_of_view,                         @
         l_capping_status )
dump i_return_value
dump l_capping_status
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of two call to 
#                      the function ga_view_capping_set()
#
#                      This session file will create a new database by
#                      name ’new.db’ and create a solid. The solid 
#                      will be clipped at the front plane location. 
#                      And function ’ga_view_capping_set’ will be 
#                      called with two different values. Before 
#                      calling second time the session file will 
#                      paused. Function ’ga_view_capping_get’ will be
#                      called to read the clipping status.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_capping_set()
#  has the following arguments:
#
#  ga_view_capping_set
#     (  capping_status )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
LOGICAL  l_capping_status
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to clip the model using front clipping plane.
i_return_value = ga_view_front_set( 1. )
dump i_return_value
i_return_value = ga_view_clipping_set( TRUE )
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to read the capping status of the current view.
#
i_return_value =                                 @
   ga_view_capping_get                           @
      (  s_name_of_view,                         @
         l_capping_status )
dump i_return_value
dump l_capping_status
#---------------------------------------------------------------------
#  Session file paused. Press "Resume" to continue..
sf_pause()
#---------------------------------------------------------------------
#  Setting capping status to ON state for the current view.
l_capping_status = TRUE
#
i_return_value =                                 @
   ga_view_capping_set                           @
      (  l_capping_status )
dump i_return_value
 
#---------------------------------------------------------------------
#  Resetting the variable to False.
l_capping_status = FALSE
#---------------------------------------------------------------------
#  Calling function to read the capping status of the current view.
#
i_return_value =                                 @
   ga_view_capping_get                           @
      (  s_name_of_view,                         @
         l_capping_status )
dump i_return_value
dump l_capping_status
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of two call to 
#                      the function ga_view_center_get()
#
#                      This session file will open a new database by 
#                      name ’new.db’ and will create a solid. The view
#                      will be set to Isometric View 1 and the 
#                      coordinates of the center will be read using 
#                      function ’ga_view_center_get’. The coordinates 
#                      will be set to a new value using 
#                      ’ga_view_center_set’.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_center_get()
#  has the following arguments:
#
#  ga_view_center_get
#     (  name_of_view,
#        coordinate_x,
#        coordinate_y )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_coordinate_x
REAL     r_coordinate_y
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to get the coordinates at the screen center.
#
i_return_value =                                 @
   ga_view_center_get                            @
      (  s_name_of_view,                         @
         r_coordinate_x,                         @
         r_coordinate_y )
dump i_return_value
dump r_coordinate_x,r_coordinate_y
#---------------------------------------------------------------------
#  Setting the center to new value of (2.,2.)
r_coordinate_x = 2.
r_coordinate_y = 2.
#
i_return_value =                                 @
   ga_view_center_set                            @
      (  r_coordinate_x,                         @
         r_coordinate_y )
dump i_return_value
 
#  Resetting the variables to zero.
r_coordinate_x = 0.
r_coordinate_y = 0.
#---------------------------------------------------------------------
#  Calling function to get the coordinates at the screen center.
#
i_return_value =                                 @
   ga_view_center_get                            @
      (  s_name_of_view,                         @
         r_coordinate_x,                         @
         r_coordinate_y )
dump i_return_value
dump r_coordinate_x,r_coordinate_y
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_center_set()
#
#                      This session file will open a new database by 
#                      name ’new.db’ and will create a solid. The view
#                      will be set to Isometric View 1 and the 
#                      coordinates of the center will be read using 
#                      function ’ga_view_center_get’. The coordinates 
#                      will be set to a new value using 
#                      ’ga_view_center_set’.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_center_set()
#  has the following arguments:
#
#  ga_view_center_set
#     (  coordinate_x,
#        coordinate_y )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_coordinate_x
REAL     r_coordinate_y
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to get the coordinates at the screen center.
#
i_return_value =                                 @
   ga_view_center_get                            @
      (  s_name_of_view,                         @
         r_coordinate_x,                         @
         r_coordinate_y )
dump i_return_value
dump r_coordinate_x,r_coordinate_y
#---------------------------------------------------------------------
#  Setting the center to new value of (2.,2.)
r_coordinate_x = 2.
r_coordinate_y = 2.
#
i_return_value =                                 @
   ga_view_center_set                            @
      (  r_coordinate_x,                         @
         r_coordinate_y )
dump i_return_value
 
#  Resetting the variables to zero.
r_coordinate_x = 0.
r_coordinate_y = 0.
#---------------------------------------------------------------------
#  Calling function to get the coordinates at the screen center.
#
i_return_value =                                 @
   ga_view_center_get                            @
      (  s_name_of_view,                         @
         r_coordinate_x,                         @
         r_coordinate_y )
dump i_return_value
dump r_coordinate_x,r_coordinate_y
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_clipping_get()
#
#                      This session file will create a new database by
#                      name ’new.db’ and will create a solid. The back
#                      clipping plane distance will be set to -1. 
#                      After setting the clipping status to true the 
#                      solid on the screen will be clipped. Function 
#                      ’ga_view_clipping_get’ will be called to read 
#                      the clipping status.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_clipping_get()
#  has the following arguments:
#
#  ga_view_clipping_get
#     (  name_of_view,
#        clipping_status )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
LOGICAL  l_clipping_status
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to setting the back clipping plane distance to -1.
i_return_value = ga_view_back_set (  -1. )
dump i_return_value
#---------------------------------------------------------------------
#  Setting the clipping status to ON.
l_clipping_status = TRUE
#
i_return_value =                                 @
   ga_view_clipping_set                          @
      (  l_clipping_status )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read the clipping status for the current view.
#
i_return_value =                                 @
   ga_view_clipping_get                          @
      (  s_name_of_view,                         @
         l_clipping_status )
dump i_return_value
dump l_clipping_status
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_clipping_set()
#
#                      This session file will create a new database by
#                      name ’new.db’ and will create a solid. The back
#                      clipping plane distance will be set to -1. 
#                      After setting the clipping status to true the 
#                      solid on the screen will be clipped. Function 
#                      ’ga_view_clipping_get’ will be called to read 
#                      the clipping status.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_clipping_set()
#  has the following arguments:
#
#  ga_view_clipping_set
#     (  clipping_status )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
LOGICAL  l_clipping_status
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to setting the back clipping plane distance to -1.
i_return_value = ga_view_back_set (  -1. )
dump i_return_value
#---------------------------------------------------------------------
#  Setting the clipping status to ON.
l_clipping_status = TRUE
#
i_return_value =                                 @
   ga_view_clipping_set                          @
      (  l_clipping_status )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read the clipping status for the current view.
#
i_return_value =                                 @
   ga_view_clipping_get                          @
      (  s_name_of_view,                         @
         l_clipping_status )
dump i_return_value
dump l_clipping_status
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_corners_set()
#
#                      This session file will create a new database by
#                      name ’new.db’ and create a solid. The view will
#                      be modified by calling the function
#                      ’ga_view_corners_set’. Session will be paused 
#                      before setting the view.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_corners_set()
#  has the following arguments:
#
#  ga_view_corners_set
#     (  point_1,
#        point_2,
#        aspect_ratio )
#
#---------------------------------------------------------------------
#  Variable Declarations
REAL     ra_point_1(3)
REAL     ra_point_2(3)
REAL     r_aspect_ratio
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Session file paused. Press "Resume" to continue..
sf_pause()
#---------------------------------------------------------------------
#  Calling function to set the view to a different angle 
#  and zoom factor.
ra_point_1     = [-10.,-20.,-30]
ra_point_2     = [10.,20.,30]
r_aspect_ratio = 5.
#
i_return_value =                                 @
   ga_view_corners_set                           @
      (  ra_point_1,                             @
         ra_point_2,                             @
         r_aspect_ratio )
dump i_return_value
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_create()
#
#                      This session file will create a new database by
#                      name ’new.db’and a solid will be created. A new
#                      viewport will be created and the view from the
#                      this viewport will be used to creat a new view
#                      and will be posted to default_viewport. The 
#                      number of views in the database will be read. 
#                      Based on the number, memory will be allocated 
#                      and the view names will be read.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_create()
#  has the following arguments:
#
#  ga_view_create
#     (  name_of_view,
#        viewport_name )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
STRING   s_viewport_name[8]
INTEGER  i_return_value
STRING   sav_view_list[16](VIRTUAL)
INTEGER  i_number_of_views
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Creating a viewport and changing the view therein to bottom view.
i_return_value = ga_viewport_create( "new_viewport", 5, 5, 5, 5 )
dump i_return_value
i_return_value = ga_viewport_view_set( "new_viewport", "bottom_view" )
dump i_return_value
#---------------------------------------------------------------------
#  Creating a new view by name ’new_view’ and 
#  posting it to ’default_viewport’.
s_name_of_view  = "new_view"
s_viewport_name = "default_viewport"
#
i_return_value =                                 @
   ga_view_create                                @
      (  s_name_of_view,                         @
         s_viewport_name )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to get the number of views in the database.
#
i_return_value = ga_view_nviews_get (  i_number_of_views )
dump i_return_value
dump i_number_of_views
 
#  Allocating memory space for the string array.
sys_allocate_array(sav_view_list,1,i_number_of_views+1)
#---------------------------------------------------------------------
#  Calling function to read the view names from the database.
#
i_return_value = ga_view_views_get (  sav_view_list )
dump i_return_value
dump sav_view_list
 
sys_free_array(sav_view_list)
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_delete()
#
#                      This session file will create a new database by
#                      name ’new.db’. The names of the views available
#                      in the database will be read. This will be done
#                      before and after the view deletion.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_delete()
#  has the following arguments:
#
#  ga_view_delete
#     (  name_of_view )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[16]
INTEGER  i_return_value
STRING   sav_view_list[16](VIRTUAL)
INTEGER  i_number_of_views
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Calling function to get the number of views in the database.
#
i_return_value = ga_view_nviews_get (  i_number_of_views )
dump i_return_value
dump i_number_of_views
 
#  Allocating memory space for the string array.
sys_allocate_array(sav_view_list,1,i_number_of_views+1)
#---------------------------------------------------------------------
#  Calling function to read the view names from the database.
#
i_return_value = ga_view_views_get (  sav_view_list )
dump i_return_value
dump sav_view_list
#---------------------------------------------------------------------
#  Deleting first view from the list.
s_name_of_view = sav_view_list(1)
#
i_return_value =                                 @
   ga_view_delete                                @
      (  s_name_of_view )
$#     Delete view?
$? YES 11002001
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to get the number of views in the database.
#
i_return_value = ga_view_nviews_get (  i_number_of_views )
dump i_return_value
dump i_number_of_views
 
#  Allocating memory space for the string array.
sys_allocate_array(sav_view_list,1,i_number_of_views+1)
#---------------------------------------------------------------------
#  Calling function to read the view names from the database.
#
i_return_value = ga_view_views_get (  sav_view_list )
dump i_return_value
dump sav_view_list
 
sys_free_array(sav_view_list)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_dist_get()
#
#                      This session file will create a new database by
#                      name ’new.db’ and create a solid. Status of 
#                      perspective view will be set on. Function 
#                      ’ga_view_dist_get’ will get the distance 
#                      between view plane and view center and function
#                      ’ga_view_dist_set’ will set the distance.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_dist_get()
#  has the following arguments:
#
#  ga_view_dist_get
#     (  name_of_view,
#        distance )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_distance
INTEGER  i_return_value
LOGICAL  l_perspective_status
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to set perspective status of current view to ON.
l_perspective_status = TRUE
#
i_return_value =                                 @
   ga_view_perspective_set                       @
      (  l_perspective_status )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to set the distance of view plane from the view 
#  center for perspective view.
r_distance     = 10
#
i_return_value =                                 @
   ga_view_dist_set                              @
      (  r_distance )
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to read the distance of view plane from the 
#  view center.
#
i_return_value =                                 @
   ga_view_dist_get                              @
      (  s_name_of_view,                         @
         r_distance )
dump i_return_value
dump r_distance
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_dist_set()
#
#                      This session file will create a new database by
#                      name ’new.db’ and create a solid. Status of 
#                      perspective view will be set on. Function 
#                      ’ga_view_dist_get’ will get the distance 
#                      between view plane and view center and function
#                      ’ga_view_dist_set’ will set the distance.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_dist_set()
#  has the following arguments:
#
#  ga_view_dist_set
#     (  distance )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_distance
INTEGER  i_return_value
LOGICAL  l_perspective_status
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to set perspective status of current view to ON.
l_perspective_status = TRUE
#
i_return_value =                                 @
   ga_view_perspective_set                       @
      (  l_perspective_status )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to set the distance of view plane from the view 
#  center for perspective view.
r_distance     = 10
#
i_return_value =                                 @
   ga_view_dist_set                              @
      (  r_distance )
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to read the distance of view plane from the 
#  view center.
#
i_return_value =                                 @
   ga_view_dist_get                              @
      (  s_name_of_view,                         @
         r_distance )
dump i_return_value
dump r_distance
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of two calls to 
#                      the function ga_view_exist_get()
#
#                      This session file will open a new database by
#                      name ’new.db’. View name ’new_view’ will be 
#                      checked for existence.Function ’ga_view_create’
#                      will be used to create ’new_view’ and existence
#                      of this view will be checked again.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_exist_get()
#  has the following arguments:
#
#  ga_view_exist_get
#     (  name_of_view,
#        view_status )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
INTEGER  i_view_status
INTEGER  i_return_value
STRING   s_viewport_name[8]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Checking existence of view named ’new_view’.
s_name_of_view = "new_view"
#
i_return_value =                                 @
   ga_view_exist_get                             @
      (  s_name_of_view,                         @
         i_view_status )
dump i_return_value
dump i_view_status
#---------------------------------------------------------------------
#  Creating a view by name ’new_view’ and posting it to 
#  current viewport.
#
i_return_value =                                 @
   ga_view_create                                @
      (  s_name_of_view,                         @
         s_viewport_name )
dump i_return_value
 
#---------------------------------------------------------------------
#  Checking existence of view named ’new_view’.
#
i_return_value =                                 @
   ga_view_exist_get                             @
      (  s_name_of_view,                         @
         i_view_status )
dump i_return_value
dump i_view_status
 
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_fov_get()
#
#                      This session file will open a new database by
#                      name ’new.db’ and create a solid.The function
#                      ’ga_view_fov_set’ will be setting the field of
#                      view angle to 1.0 the effect can be seen on the
#                      screen. Function ’ga_view_fov_get’ will be 
#                      getting the number 1.0 as field of view angle.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_fov_get()
#  has the following arguments:
#
#  ga_view_fov_get
#     (  name_of_view,
#        fov_angle )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_fov_angle
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to set the field of view angle for current view.
r_fov_angle    = 1.0
#
i_return_value =                                 @
   ga_view_fov_set                               @
      (  r_fov_angle )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read the field of view angle for current view.
#
i_return_value =                                 @
   ga_view_fov_get                               @
      (  s_name_of_view,                         @
         r_fov_angle )
dump i_return_value
dump r_fov_angle
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_fov_set()
#
#                      This session file will open a new database by
#                      name ’new.db’ and create a solid.The function
#                      ’ga_view_fov_set’ will be setting the field of
#                      view angle to 1.0 the effect can be seen on the
#                      screen. Function ’ga_view_fov_get’ will be 
#                      getting the number 1.0 as field of view angle.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_fov_set()
#  has the following arguments:
#
#  ga_view_fov_set
#     (  fov_angle )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_fov_angle
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to set the field of view angle for current view.
r_fov_angle    = 1.0
#
i_return_value =                                 @
   ga_view_fov_set                               @
      (  r_fov_angle )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read the field of view angle for current view.
#
i_return_value =                                 @
   ga_view_fov_get                               @
      (  s_name_of_view,                         @
         r_fov_angle )
dump i_return_value
dump r_fov_angle
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_from_get()
#
#                      This session file will open a new database by 
#                      name ’new.db’ and create a solid. Function 
#                      ’ga_view_from_set’ will be used to set the 
#                      observation point to a different value. And 
#                      function ’ga_view_from_get’ will get the new
#                      changed observation point.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_from_get()
#  has the following arguments:
#
#  ga_view_from_get
#     (  name_of_view,
#        position )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     ra_position(3)
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to set the observation point for current view.
ra_position    = [-0.3, 4., 5.]
#
i_return_value =                                 @
   ga_view_from_set                              @
      (  ra_position )
dump i_return_value
 
#---------------------------------------------------------------------
#   Calling function to get the observation point for current view.
#
i_return_value =                                 @
   ga_view_from_get                              @
      (  s_name_of_view,                         @
         ra_position )
dump i_return_value
dump ra_position
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_from_set()
#
#                      This session file will open a new database by 
#                      name ’new.db’ and create a solid. Function 
#                      ’ga_view_from_set’ will be used to set the 
#                      observation point to a different value. And 
#                      function ’ga_view_from_get’ will get the new
#                      changed observation point.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_from_set()
#  has the following arguments:
#
#  ga_view_from_set
#     (  position )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     ra_position(3)
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to set the observation point for current view.
ra_position    = [-0.3, 4., 5.]
#
i_return_value =                                 @
   ga_view_from_set                              @
      (  ra_position )
dump i_return_value
 
#---------------------------------------------------------------------
#   Calling function to get the observation point for current view.
#
i_return_value =                                 @
   ga_view_from_get                              @
      (  s_name_of_view,                         @
         ra_position )
dump i_return_value
dump ra_position
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_front_get()
#
#                      This session file will create a new database by
#                      name ’new.db’ and create a solid. Clipping will
#                      be set on and front clipping plane distance 
#                      will be changed using function 
#                      ’ga_view_front_set’.Function ’ga_view_front_get
#                      when called gets the clipping plane distance.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_front_get()
#  has the following arguments:
#
#  ga_view_front_get
#     (  name_of_view,
#        distance )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_distance
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Setting the clipping status to ON.
i_return_value = ga_view_clipping_set (  TRUE )
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to reduce the front clipping plane distance from
#  center of the current view.
r_distance     = 1.0
#
i_return_value =                                 @
   ga_view_front_set                             @
      (  r_distance )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read the front clipping plane distance from
#  center of the current view.
#
i_return_value =                                 @
   ga_view_front_get                             @
      (  s_name_of_view,                         @
         r_distance )
dump i_return_value
dump r_distance
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_front_set()
#
#                      This session file will create a new database by
#                      name ’new.db’ and create a solid. Clipping will
#                      be set on and front clipping plane distance 
#                      will be changed using function 
#                      ’ga_view_front_set’.Function ’ga_view_front_get
#                      when called gets the clipping plane distance.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_front_set()
#  has the following arguments:
#
#  ga_view_front_set
#     (  distance )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_distance
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Setting the clipping status to ON.
i_return_value = ga_view_clipping_set (  TRUE )
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to reduce the front clipping plane distance from
#  center of the current view.
r_distance     = 1.0
#
i_return_value =                                 @
   ga_view_front_set                             @
      (  r_distance )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read the front clipping plane distance from
#  center of the current view.
#
i_return_value =                                 @
   ga_view_front_get                             @
      (  s_name_of_view,                         @
         r_distance )
dump i_return_value
dump r_distance
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_model_scale_get()
#
#                      This session file will create a new database by
#                      name ’new.db’ and create a solid. Function 
#                      ’ga_view_model_scale_set’ will be called to 
#                      change the scale of the model and effect will 
#                      be visible on the screen. And also 
#                      ’ga_view_model_scale_get’ function will return
#                      the scale factors.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_model_scale_get()
#  has the following arguments:
#
#  ga_view_model_scale_get
#     (  name_of_view,
#        scale_x,
#        scale_y,
#        scale_z )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_scale_x
REAL     r_scale_y
REAL     r_scale_z
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to change model scale in current view.
r_scale_x      = 0.5
r_scale_y      = 1.5
#
i_return_value =                                 @
   ga_view_model_scale_set                       @
      (  r_scale_x,                              @
         r_scale_y,                              @
         r_scale_z )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read model scale in current view.
#
i_return_value =                                 @
   ga_view_model_scale_get                       @
      (  s_name_of_view,                         @
         r_scale_x,                              @
         r_scale_y,                              @
         r_scale_z )
dump i_return_value
dump r_scale_z,r_scale_y,r_scale_x
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_model_scale_set()
#
#                      This session file will create a new database by
#                      name ’new.db’ and create a solid. Function 
#                      ’ga_view_model_scale_set’ will be called to 
#                      change the scale of the model and effect will 
#                      be visible on the screen. And also 
#                      ’ga_view_model_scale_get’ function will return
#                      the scale factors.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_model_scale_set()
#  has the following arguments:
#
#  ga_view_model_scale_set
#     (  scale_x,
#        scale_y,
#        scale_z )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_scale_x
REAL     r_scale_y
REAL     r_scale_z
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to change model scale in current view.
r_scale_x      = 0.5
r_scale_y      = 1.5
#
i_return_value =                                 @
   ga_view_model_scale_set                       @
      (  r_scale_x,                              @
         r_scale_y,                              @
         r_scale_z )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read model scale in current view.
#
i_return_value =                                 @
   ga_view_model_scale_get                       @
      (  s_name_of_view,                         @
         r_scale_x,                              @
         r_scale_y,                              @
         r_scale_z )
dump i_return_value
dump r_scale_z,r_scale_y,r_scale_x
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_nviews_get()
#
#                      This session file will create a new database by
#                      name ’new.db’. The number of views available by
#                      default in the database will be read. Based on 
#                      the number, memory will be allocated and the 
#                      view names will be read.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_nviews_get()
#  has the following arguments:
#
#  ga_view_nviews_get
#     (  number_of_views )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   sav_view_list[16](VIRTUAL)
INTEGER  i_number_of_views
INTEGER  i_return_value
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Calling function to get the number of views in the database.
#
i_return_value =                                 @
   ga_view_nviews_get                            @
      (  i_number_of_views )
dump i_return_value
dump i_number_of_views
 
#  Allocating memory space for the string array.
sys_allocate_array(sav_view_list,1,i_number_of_views+1)
#---------------------------------------------------------------------
#  Calling function to read the view names from the database.
#
i_return_value =                                 @
   ga_view_views_get                             @
      (  sav_view_list )
dump i_return_value
dump sav_view_list
 
sys_free_array(sav_view_list)
#---------------------------------------------------------------------
  
()
#
#  Purpose          :  This file provides an example of 2 calls to the
#                      function ga_view_perspective_get()
#
#                      This session file will create a new database by
#                      name ’new.db’ and create a solid. Function 
#                      ’ga_view_perspective_get’ will give the current
#                      status for perspective view. Function
#                      ’ga_view_perspective_set’ will set the 
#                      perspective view status to TRUE. Before setting
#                      the session file will be paused. The effect of
#                      setting will be visible on the viewport.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_perspective_get()
#  has the following arguments:
#
#  ga_view_perspective_get
#     (  name_of_view,
#        perspective_status )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[16]
LOGICAL  l_perspective_status
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to get perspective status of current view.
#
i_return_value =                                 @
   ga_view_perspective_get                       @
      (  s_name_of_view,                         @
         l_perspective_status )
dump i_return_value
dump l_perspective_status
#---------------------------------------------------------------------
#  Session file paused. Press "Resume" to continue..
sf_pause()
#---------------------------------------------------------------------
#  Calling function to set perspective status of current view to ON.
l_perspective_status = TRUE
#
i_return_value =                                 @
   ga_view_perspective_set                       @
      (  l_perspective_status )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function again to get perspective status of current view.
#
i_return_value =                                 @
   ga_view_perspective_get                       @
      (  s_name_of_view,                         @
         l_perspective_status )
dump i_return_value
dump l_perspective_status
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_perspective_set()
#
#                      This session file will create a new database by
#                      name ’new.db’ and create a solid. Function 
#                      ’ga_view_perspective_get’ will give the current
#                      status for perspective view. Function
#                      ’ga_view_perspective_set’ will set the 
#                      perspective view status to TRUE. Before setting
#                      the session file will be paused. The effect of
#                      setting will be visible on the viewport.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_perspective_set()
#  has the following arguments:
#
#  ga_view_perspective_set
#     (  perspective_status )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[16]
LOGICAL  l_perspective_status
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to get perspective status of current view.
#
i_return_value =                                 @
   ga_view_perspective_get                       @
      (  s_name_of_view,                         @
         l_perspective_status )
dump i_return_value
dump l_perspective_status
#---------------------------------------------------------------------
#  Session file paused. Press "Resume" to continue..
sf_pause()
#---------------------------------------------------------------------
#  Calling function to set perspective status of current view to ON.
l_perspective_status = TRUE
#
i_return_value =                                 @
   ga_view_perspective_set                       @
      (  l_perspective_status )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function again to get perspective status of current view.
#
i_return_value =                                 @
   ga_view_perspective_get                       @
      (  s_name_of_view,                         @
         l_perspective_status )
dump i_return_value
dump l_perspective_status
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
 
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_plane_set()
#
#                      This session file will open a new database by 
#                      name ’new.db’ and create a solid. Function will
#                      be called to change the view plane. Before 
#                      changing view plane session file is paused 
#                      after creating the solid.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_plane_set()
#  has the following arguments:
#
#  ga_view_plane_set
#     (  point_1,
#        point_2,
#        point_3 )
#
#---------------------------------------------------------------------
#  Variable Declarations
REAL     ra_point_1(3)
REAL     ra_point_2(3)
REAL     ra_point_3(3)
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Session file paused. Press "Resume" to continue..
sf_pause()
#---------------------------------------------------------------------
#  Calling function to set the view plane parallel to Y axis and 
#  perpendicular to X-Z plane.
ra_point_1     = [1., 1., 1.]
ra_point_2     = [2., 0., 0.]
ra_point_3     = [0., 0., 2.]
#
i_return_value =                                 @
   ga_view_plane_set                             @
      (  ra_point_1,                             @
         ra_point_2,                             @
         ra_point_3 )
dump i_return_value
 
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_rename()
#
#                      This session file will create a new database by
#                      name ’new.db’. The names of views available in
#                      the database will be read. This will be done 
#                      before and after the view renaming.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_rename()
#  has the following arguments:
#
#  ga_view_rename
#     (  original_name,
#        new_name )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_original_name[16]
STRING   s_new_name[16]
INTEGER  i_return_value
STRING   sav_view_list[16](VIRTUAL)
INTEGER  i_number_of_views
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Calling function to get the number of views in the database.
#
i_return_value = ga_view_nviews_get (  i_number_of_views )
dump i_return_value
dump i_number_of_views
 
#  Allocating memory space for the string array.
sys_allocate_array(sav_view_list,1,i_number_of_views+1)
#---------------------------------------------------------------------
#  Calling function to read the view names from the database.
#
i_return_value = ga_view_views_get (  sav_view_list )
dump i_return_value
dump sav_view_list
#---------------------------------------------------------------------
#  Calling function to rename the first view as ’Renamed_view’.
s_original_name = sav_view_list(1)
s_new_name      = "Renamed_view"
#
i_return_value =                                 @
   ga_view_rename                                @
      (  s_original_name,                        @
         s_new_name )
dump i_return_value
 
#---------------------------------------------------------------------
#  Reallocating memory space for the string array.
sys_allocate_array(sav_view_list,1,i_number_of_views+1)
#---------------------------------------------------------------------
#  Calling function to read the view names from the database.
#
i_return_value = ga_view_views_get (  sav_view_list )
dump i_return_value
dump sav_view_list
 
sys_free_array(sav_view_list)
#---------------------------------------------------------------------
 
 
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_sa_get()
#
#                      This session file will open a new database by 
#                      name ’new.db’ and create a solid. The view will
#                      be rotated by using function ’ga_view_sa_set’ 
#                      and the function ’ga_view_sa_get’ will be used
#                      to read the rotation about the screen 
#                      coordinate system.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_sa_get()
#  has the following arguments:
#
#  ga_view_sa_get
#     (  name_of_view,
#        angle_x,
#        angle_y,
#        angle_z )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_angle_x
REAL     r_angle_y
REAL     r_angle_z
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
r_angle_x      = 23.
r_angle_y      = -34.
#
i_return_value =                                 @
   ga_view_aa_set                                @
      (  r_angle_x,                              @
         r_angle_y,                              @
         r_angle_z )
dump i_return_value
#---------------------------------------------------------------------
#  Changing view direction by rotating X axis by 90 degrees.
r_angle_y      = 90.
#
i_return_value =                                 @
   ga_view_sa_set                                @
      (  r_angle_x,                              @
         r_angle_y,                              @
         r_angle_z )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read the rotation around the
#  screen coordinate system.
#
i_return_value =                                 @
   ga_view_sa_get                                @
      (  s_name_of_view,                         @
         r_angle_x,                              @
         r_angle_y,                              @
         r_angle_z )
dump i_return_value
dump r_angle_x,r_angle_y,r_angle_z
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_sa_set()
#
#                      This session file will open a new database by 
#                      name ’new.db’ and create a solid. The view will
#                      be rotated by using function ’ga_view_sa_set’ 
#                      and the function ’ga_view_sa_get’ will be used
#                      to read the rotation about the screen 
#                      coordinate system.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_sa_set()
#  has the following arguments:
#
#  ga_view_sa_set
#     (  angle_x,
#        angle_y,
#        angle_z )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_angle_x
REAL     r_angle_y
REAL     r_angle_z
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
r_angle_x      = 23.
r_angle_y      = -34.
#
i_return_value =                                 @
   ga_view_aa_set                                @
      (  r_angle_x,                              @
         r_angle_y,                              @
         r_angle_z )
dump i_return_value
#---------------------------------------------------------------------
#  Changing view direction by rotating X axis by 90 degrees.
r_angle_y      = 90.
#
i_return_value =                                 @
   ga_view_sa_set                                @
      (  r_angle_x,                              @
         r_angle_y,                              @
         r_angle_z )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read the rotation around the
#  screen coordinate system.
#
i_return_value =                                 @
   ga_view_sa_get                                @
      (  s_name_of_view,                         @
         r_angle_x,                              @
         r_angle_y,                              @
         r_angle_z )
dump i_return_value
dump r_angle_x,r_angle_y,r_angle_z
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_screen_scale_get()
#
#                      This session file will open a new database by 
#                      name ’new.db’ and create a solid. Function 
#                      ’ga_view_screen_scale_set’ will be called to 
#                      set the screen scale factor to a value other 
#                      than 1. And function ’ga_view_screen_scale_get’
#                      will read the scale factors.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_screen_scale_get()
#  has the following arguments:
#
#  ga_view_screen_scale_get
#     (  name_of_view,
#        scale_x,
#        scale_y )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_scale_x
REAL     r_scale_y
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
#
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to change the screen scale in X and Y direction 
#  for current view.
r_scale_x      = 0.5
r_scale_y      = 1.5
#
i_return_value =                                 @
   ga_view_screen_scale_set                      @
      (  r_scale_x,                              @
         r_scale_y )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read screen scale factors for current view.
#
i_return_value =                                 @
   ga_view_screen_scale_get                      @
      (  s_name_of_view,                         @
         r_scale_x,                              @
         r_scale_y )
dump i_return_value
dump r_scale_x,r_scale_y
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_screen_scale_set()
#
#                      This session file will open a new database by 
#                      name ’new.db’ and create a solid. Function 
#                      ’ga_view_screen_scale_set’ will be called to 
#                      set the screen scale factor to a value other 
#                      than 1. And function ’ga_view_screen_scale_get’
#                      will read the scale factors.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_screen_scale_set()
#  has the following arguments:
#
#  ga_view_screen_scale_set
#     (  scale_x,
#        scale_y )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_scale_x
REAL     r_scale_y
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
#
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to change the screen scale in X and Y direction 
#  for current view.
r_scale_x      = 0.5
r_scale_y      = 1.5
#
i_return_value =                                 @
   ga_view_screen_scale_set                      @
      (  r_scale_x,                              @
         r_scale_y )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read screen scale factors for current view.
#
i_return_value =                                 @
   ga_view_screen_scale_get                      @
      (  s_name_of_view,                         @
         r_scale_x,                              @
         r_scale_y )
dump i_return_value
dump r_scale_x,r_scale_y
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of two calls to 
#                      the function ga_view_sr_set()
#
#                      This session file will open a new database by 
#                      name ’new.db’ and create a solid. The view will
#                      be rotated by using function ’ga_view_sr_set’ 
#                      and the function ’ga_view_sr_get’ will be used
#                      to read the rotation about the screen 
#                      coordinate system.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_sr_set()
#  has the following arguments:
#
#  ga_view_sr_set
#     (  angle_x,
#        angle_y,
#        angle_z )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_angle_x
REAL     r_angle_y
REAL     r_angle_z
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
r_angle_x      = 23.
r_angle_y      = -34.
#
i_return_value =                                 @
   ga_view_aa_set                                @
      (  r_angle_x,                              @
         r_angle_y,                              @
         r_angle_z )
dump i_return_value
#---------------------------------------------------------------------
#  Changing view direction by rotating X axis by 90 degrees.
r_angle_y      = 90.
#
i_return_value =                                 @
   ga_view_sr_set                                @
      (  r_angle_x,                              @
         r_angle_y,                              @
         r_angle_z )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read the rotation around the
#  screen coordinate system.
#
i_return_value =                                 @
   ga_view_sa_get                                @
      (  s_name_of_view,                         @
         r_angle_x,                              @
         r_angle_y,                              @
         r_angle_z )
dump i_return_value
dump r_angle_x,r_angle_y,r_angle_z
#---------------------------------------------------------------------
#  Changing view direction again by rotating X axis by 90 degrees.
r_angle_x      = 0.
r_angle_y      = 90.
r_angle_z      = 0.
#
i_return_value =                                 @
   ga_view_sr_set                                @
      (  r_angle_x,                              @
         r_angle_y,                              @
         r_angle_z )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read the rotation around the
#  screen coordinate system.
#
i_return_value =                                 @
   ga_view_sa_get                                @
      (  s_name_of_view,                         @
         r_angle_x,                              @
         r_angle_y,                              @
         r_angle_z )
dump i_return_value
dump r_angle_x,r_angle_y,r_angle_z
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_to_get()
#
#                      This session file will open a new database by 
#                      name ’new.db’ and create a solid. Function 
#                      ’ga_view_to_set will be called to change the 
#                      point of view. And function ’ga_view_to_get’ 
#                      will read the point of view for the same view.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_to_get()
#  has the following arguments:
#
#  ga_view_to_get
#     (  name_of_view,
#        center_point )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     ra_center_point(3)
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to change the point of view in current view.
ra_center_point= [4.5 2. 10.]
#
i_return_value =                                 @
   ga_view_to_set                                @
      (  ra_center_point )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read the point of view in current view.
#
i_return_value =                                 @
   ga_view_to_get                                @
      (  s_name_of_view,                         @
         ra_center_point )
dump i_return_value
dump ra_center_point
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_to_set()
#
#                      This session file will open a new database by 
#                      name ’new.db’ and create a solid. Function 
#                      ’ga_view_to_set will be called to change the 
#                      point of view. And function ’ga_view_to_get’ 
#                      will read the point of view for the same view.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_to_set()
#  has the following arguments:
#
#  ga_view_to_set
#     (  point )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     ra_point(3)
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to change the point of view in current view.
ra_point       = [4.5 2. 10.]
#
i_return_value =                                 @
   ga_view_to_set                                @
      (  ra_point )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read the point of view in current view.
#
i_return_value =                                 @
   ga_view_to_get                                @
      (  s_name_of_view,                         @
         ra_point )
dump i_return_value
dump ra_point
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_up_get()
#
#                      This session file will create a new database by
#                      name ’new.db’ and create a solid. Function 
#                      ’ga_view_up_set’ will be called to change the 
#                      up direction of the current view. And function
#                      ’ga_view_up_get’ will be called to read the up
#                      direction of the view plane.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_up_get()
#  has the following arguments:
#
#  ga_view_up_get
#     (  name_of_view,
#        direction_vector )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     ra_direction_vector(3)
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to change the direction vector to (0,2,0) for 
#  current view.
ra_direction_vector = [0. 2. 0.]
#
i_return_value =                                 @
   ga_view_up_set                                @
      (  ra_direction_vector )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read the direction vector for current view.
#
i_return_value =                                 @
   ga_view_up_get                                @
      (  s_name_of_view,                         @
         ra_direction_vector )
dump i_return_value
dump ra_direction_vector
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_up_set()
#
#                      This session file will create a new database by
#                      name ’new.db’ and create a solid. Function 
#                      ’ga_view_up_set’ will be called to change the 
#                      up direction of the current view. And function
#                      ’ga_view_up_get’ will be called to read the up
#                      direction of the view plane.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_up_set()
#  has the following arguments:
#
#  ga_view_up_set
#     (  direction_vector )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     ra_direction_vector(3)
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to change the direction vector to (0,2,0) for 
#  current view.
ra_direction_vector = [0. 2. 0.]
#
i_return_value =                                 @
   ga_view_up_set                                @
      (  ra_direction_vector )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read the direction vector for current view.
#
i_return_value =                                 @
   ga_view_up_get                                @
      (  s_name_of_view,                         @
         ra_direction_vector )
dump i_return_value
dump ra_direction_vector
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_views_get()
#
#                      This session file will create a new database by
#                      name ’new.db’. The number of views available by
#                      default in the database will be read. Based on 
#                      the number, memory will be allocated and the 
#                      view names will be read.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_views_get()
#  has the following arguments:
#
#  ga_view_views_get
#     (  view_list )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   sav_view_list[16](VIRTUAL)
INTEGER  i_number_of_views
INTEGER  i_return_value
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Calling function to get the number of views in the database.
#
i_return_value =                                 @
   ga_view_nviews_get                            @
      (  i_number_of_views )
dump i_return_value
dump i_number_of_views
 
#  Allocating memory space for the string array.
sys_allocate_array(sav_view_list,1,i_number_of_views+1)
#---------------------------------------------------------------------
#  Calling function to read the view names from the database.
#
i_return_value =                                 @
   ga_view_views_get                             @
      (  sav_view_list )
dump i_return_value
dump sav_view_list
 
sys_free_array(sav_view_list)
#---------------------------------------------------------------------
 
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_zoom_get()
#
#                      This session file will create a new database by
#                      name ’new.db’ and create a solid. Function
#                      ’ga_view_zoom_set’ will be called to change the
#                      zoom factor. And function ’ga_view_zoom_get’ 
#                      will read the zoom factor for the current view.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_zoom_get()
#  has the following arguments:
#
#  ga_view_zoom_get
#     (  name_of_view,
#        zoom_factor )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_zoom_factor
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to change zoom factor to 3.5 in current view.
r_zoom_factor  = 3.5
#
i_return_value =                                 @
   ga_view_zoom_set                              @
      (  r_zoom_factor )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read zoom factor for current view.
#
i_return_value =                                 @
   ga_view_zoom_get                              @
      (  s_name_of_view,                         @
         r_zoom_factor )
dump i_return_value
dump r_zoom_factor
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------
  
()
#
#  Purpose          :  This file provides an example of a call to the
#                      function ga_view_zoom_set()
#
#                      This session file will create a new database by
#                      name ’new.db’ and create a solid. Function
#                      ’ga_view_zoom_set’ will be called to change the
#                      zoom factor. And function ’ga_view_zoom_get’ 
#                      will read the zoom factor for the current view.
#
#                      This file can be run by starting a session of
#                      Patran, and running this session file
#                      through the "File","Session","Play" pulldown
#                      menus on the menu bar.
#
#  The function ga_view_zoom_set()
#  has the following arguments:
#
#  ga_view_zoom_set
#     (  zoom_factor )
#
#---------------------------------------------------------------------
#  Variable Declarations
STRING   s_name_of_view[8]
REAL     r_zoom_factor
INTEGER  i_return_value
STRING   sv_asm_create_hpat_ver_crtd_ids[VIRTUAL]
#---------------------------------------------------------------------
#  Open a new database "new.db"
uil_file_new.go("","new.db")
$? YES 36000002
#---------------------------------------------------------------------
#  Creating a solid.
i_return_value =                                 @
   asm_const_hpat_vertex("1","[0,0,0]","[0,0,4]",@
      "[9,0,3]", "[8,0,1]", "[0,4,0]", "[0,1,4]",@
      "[9,2,3]", "[8,3,1]", sv_asm_create_hpat_ver_crtd_ids )
dump i_return_value
#---------------------------------------------------------------------
#  Changing viewing direction to Isometric View 1.
i_return_value = ga_view_aa_set(23., -34., 0.)
dump i_return_value
#---------------------------------------------------------------------
#  Calling function to change zoom factor to 3.5 in current view.
r_zoom_factor  = 3.5
#
i_return_value =                                 @
   ga_view_zoom_set                              @
      (  r_zoom_factor )
dump i_return_value
 
#---------------------------------------------------------------------
#  Calling function to read zoom factor for current view.
#
i_return_value =                                 @
   ga_view_zoom_get                              @
      (  s_name_of_view,                         @
         r_zoom_factor )
dump i_return_value
dump r_zoom_factor
 
sys_free_string(sv_asm_create_hpat_ver_crtd_ids)
#---------------------------------------------------------------------