(root)/
libredwg-0.13/
test/
unit-testing/
leader.c
       1  #define DWG_TYPE DWG_TYPE_LEADER
       2  #include "common.c"
       3  
       4  void
       5  api_process (dwg_object *obj)
       6  {
       7    int error;
       8    dwg_point_3d origin, extrusion, x_direction, inspt_offset, endptproj;
       9    dwg_point_3d *points;
      10    BITCODE_B unknown_bit_1;
      11    BITCODE_BS path_type;
      12    BITCODE_BS annot_type;
      13    BITCODE_BL i, num_points;
      14    BITCODE_BD dimgap;
      15    BITCODE_BD box_height;
      16    BITCODE_BD box_width;
      17    BITCODE_B hookline_dir;
      18    BITCODE_B hookline_on;
      19    BITCODE_B arrowhead_on;
      20    BITCODE_BS arrowhead_type;
      21    BITCODE_BD dimasz;
      22    BITCODE_B unknown_bit_2;
      23    BITCODE_B unknown_bit_3;
      24    BITCODE_BS unknown_short_1;
      25    BITCODE_BS byblock_color;
      26    BITCODE_B unknown_bit_4;
      27    BITCODE_B unknown_bit_5;
      28    BITCODE_H associated_annotation;
      29    BITCODE_H dimstyle;
      30  
      31    dwg_ent_leader *leader = dwg_object_to_LEADER (obj);
      32  
      33    CHK_ENTITY_3RD_W_OLD (leader, LEADER, origin);
      34    CHK_ENTITY_3RD_W_OLD (leader, LEADER, extrusion);
      35    CHK_ENTITY_3RD_W_OLD (leader, LEADER, x_direction);
      36    CHK_ENTITY_3RD_W_OLD (leader, LEADER, inspt_offset);
      37    CHK_ENTITY_3RD (leader, LEADER, endptproj);
      38  
      39    CHK_ENTITY_TYPE (leader, LEADER, unknown_bit_1, B);
      40    CHK_ENTITY_TYPE_W_OLD (leader, LEADER, path_type, BS);
      41    CHK_ENTITY_TYPE_W_OLD (leader, LEADER, annot_type, BS);
      42    CHK_ENTITY_TYPE_W_OLD (leader, LEADER, num_points, BL);
      43    if (!dwg_dynapi_entity_value (leader, "LEADER", "points", &points, NULL))
      44      fail ("LEADER.points");
      45    else
      46      for (i = 0; i < leader->num_points; i++)
      47        (void)points[i].z;
      48    CHK_ENTITY_TYPE_W_OLD (leader, LEADER, dimgap, BD);
      49    CHK_ENTITY_TYPE_W_OLD (leader, LEADER, box_height, BD);
      50    CHK_ENTITY_TYPE_W_OLD (leader, LEADER, box_width, BD);
      51    CHK_ENTITY_TYPE_W_OLD (leader, LEADER, hookline_dir, B);
      52    CHK_ENTITY_TYPE_W_OLD (leader, LEADER, arrowhead_on, B);
      53    CHK_ENTITY_TYPE_W_OLD (leader, LEADER, arrowhead_type, BS);
      54    CHK_ENTITY_TYPE_W_OLD (leader, LEADER, dimasz, BD);
      55    CHK_ENTITY_TYPE (leader, LEADER, unknown_bit_2, B);
      56    CHK_ENTITY_TYPE (leader, LEADER, unknown_bit_3, B);
      57    CHK_ENTITY_TYPE (leader, LEADER, unknown_short_1, BS);
      58    CHK_ENTITY_TYPE_W_OLD (leader, LEADER, byblock_color, BS);
      59    CHK_ENTITY_TYPE (leader, LEADER, hookline_on, B);
      60    CHK_ENTITY_TYPE (leader, LEADER, unknown_bit_4, B);
      61    CHK_ENTITY_TYPE (leader, LEADER, unknown_bit_5, B);
      62  
      63    CHK_ENTITY_H (leader, LEADER, associated_annotation);
      64    CHK_ENTITY_H (leader, LEADER, dimstyle);
      65  }