(root)/
libredwg-0.13/
test/
unit-testing/
pointcloudcolormap.c
       1  // TODO
       2  #define DWG_TYPE DWG_TYPE_POINTCLOUDCOLORMAP
       3  #include "common.c"
       4  
       5  void
       6  api_process (dwg_object *obj)
       7  {
       8    int error, isnew;
       9    BITCODE_BL i;
      10    BITCODE_BS class_version;
      11    BITCODE_T def_intensity_colorscheme;
      12    BITCODE_T def_elevation_colorscheme;
      13    BITCODE_T def_classification_colorscheme;
      14    BITCODE_BL num_colorramps;
      15    Dwg_POINTCLOUDCOLORMAP_Ramp *colorramps;
      16    BITCODE_BL num_classification_colorramps;
      17    Dwg_POINTCLOUDCOLORMAP_Ramp *classification_colorramps;
      18    Dwg_ColorRamp *ramps;
      19  
      20    Dwg_Version_Type dwg_version = obj->parent->header.version;
      21    // #ifdef DEBUG_CLASSES
      22    dwg_obj_pointcloudcolormap *_obj = dwg_object_to_POINTCLOUDCOLORMAP (obj);
      23  
      24    CHK_ENTITY_TYPE (_obj, POINTCLOUDCOLORMAP, class_version, BS);
      25    CHK_ENTITY_MAX (_obj, POINTCLOUDCOLORMAP, class_version, BS, 3);
      26    CHK_ENTITY_UTF8TEXT (_obj, POINTCLOUDCOLORMAP, def_intensity_colorscheme);
      27    CHK_ENTITY_UTF8TEXT (_obj, POINTCLOUDCOLORMAP, def_elevation_colorscheme);
      28    CHK_ENTITY_UTF8TEXT (_obj, POINTCLOUDCOLORMAP,
      29                         def_classification_colorscheme);
      30    CHK_ENTITY_TYPE (_obj, POINTCLOUDCOLORMAP, num_colorramps, BL);
      31    if (!dwg_dynapi_entity_value (_obj, "POINTCLOUDCOLORMAP", "colorramps",
      32                                  &colorramps, NULL))
      33      fail ("POINTCLOUDCOLORMAP.colorramps");
      34    else
      35      for (i = 0; i < num_colorramps; i++)
      36        {
      37          CHK_SUBCLASS_TYPE (colorramps[i], POINTCLOUDCOLORMAP_Ramp,
      38                             class_version, BS);
      39          CHK_SUBCLASS_TYPE (colorramps[i], POINTCLOUDCOLORMAP_Ramp, num_ramps,
      40                             BL);
      41          if (!dwg_dynapi_subclass_value (&colorramps[i],
      42                                          "POINTCLOUDCOLORMAP_Ramp", "ramps",
      43                                          &ramps, NULL))
      44            fail ("POINTCLOUDCOLORMAP_Ramp.ramps");
      45          else
      46            for (unsigned j = 0; j < colorramps[i].num_ramps; j++)
      47              {
      48                CHK_SUBCLASS_UTF8TEXT (ramps[j], ColorRamp, colorscheme);
      49                CHK_SUBCLASS_TYPE (ramps[j], ColorRamp, unknown_bl, BL);
      50                CHK_SUBCLASS_TYPE (ramps[j], ColorRamp, unknown_b, B);
      51              }
      52        }
      53  
      54    CHK_ENTITY_TYPE (_obj, POINTCLOUDCOLORMAP, num_classification_colorramps,
      55                     BL);
      56    if (!dwg_dynapi_entity_value (_obj, "POINTCLOUDCOLORMAP",
      57                                  "classification_colorramps",
      58                                  &classification_colorramps, NULL))
      59      fail ("POINTCLOUDCOLORMAP.classification_colorramps");
      60    else
      61      for (i = 0; i < num_classification_colorramps; i++)
      62        {
      63          CHK_SUBCLASS_TYPE (classification_colorramps[i],
      64                             POINTCLOUDCOLORMAP_Ramp, class_version, BS);
      65          CHK_SUBCLASS_TYPE (classification_colorramps[i],
      66                             POINTCLOUDCOLORMAP_Ramp, num_ramps, BL);
      67          if (!dwg_dynapi_subclass_value (&classification_colorramps[i],
      68                                          "POINTCLOUDCOLORMAP_Ramp", "ramps",
      69                                          &ramps, NULL))
      70            fail ("POINTCLOUDCOLORMAP_Ramp.ramps");
      71          else
      72            for (unsigned j = 0; j < classification_colorramps[i].num_ramps; j++)
      73              {
      74                CHK_SUBCLASS_UTF8TEXT (ramps[j], ColorRamp, colorscheme);
      75                CHK_SUBCLASS_TYPE (ramps[j], ColorRamp, unknown_bl, BL);
      76                CHK_SUBCLASS_TYPE (ramps[j], ColorRamp, unknown_b, B);
      77              }
      78        }
      79    // #endif
      80  }