#include #include int main (int argc, char** argv) { SUInitialize(); SUModelRef model = SU_INVALID; SUModelCreateFromFile(&model, "instances.skp"); SUEntitiesRef entities = SU_INVALID; SUModelGetEntities(model, &entities); size_t count = 0; SUEntitiesGetNumInstances(entities, &count); std::cout << "instance count: " << count << "\n"; SUComponentInstanceRef instances[count]; size_t szinstances; SUEntitiesGetInstances(entities, count, instances, &szinstances); std::cout << "returned instances count: " << szinstances << "\n"; while (szinstances--) { struct SUTransformation matrix; SUComponentInstanceGetTransform(instances[szinstances], &matrix); struct FloatingPosition { double x,z,y,d; } pos = { .x = matrix.values[12], .z = matrix.values[14], .y = matrix.values[13], .d = matrix.values[15] }; printf("%f, %f, %f\n", pos.x, pos.y, pos.z); } SUTerminate(); }