• NX二次开发-获取图纸尺寸上椭圆边界框的大小


    void AskDimBoundary(tag_t dim_tag)
    {
           //获得尺寸字体大小
           int dim_subtype = 0;
           double dim_origin[3];
           UF_DRF_dim_info_p_t dim_info;
           UF_DRF_ask_dim_info(dim_tag, &dim_subtype, dim_origin, &dim_info);
           double DimSize = dim_info->text_info->size;
           NXOpen::Session *theSession = NXOpen::Session::GetSession();
           NXOpen::Part *workPart(theSession->Parts()->Work());
           NXOpen::Part *displayPart(theSession->Parts()->Display());
           //获得尺寸的高度因子
           NXOpen::Annotations::HorizontalDimension *horizontalDimension1(dynamic_cast<NXOpen::Annotations::HorizontalDimension *>(NXOpen::NXObjectManager::Get(dim_tag)));
           NXOpen::Annotations::LinearDimensionBuilder *linearDimensionBuilder1;
           linearDimensionBuilder1 = workPart->Dimensions()->CreateLinearDimensionBuilder(horizontalDimension1);
           double height_size = linearDimensionBuilder1->Style()->LetteringStyle()->GdtFrameHeightFactor();
           //计算椭圆框的高度(字体大小*高度因子)
           double block_height = DimSize * height_size;
           //计算椭圆框的宽度(字体大小*高度因子*2)
           double block_length = DimSize * height_size * 2;
           
           //打印
           char msg[256];
           sprintf_s(msg, "高度%f 宽度%f", block_height, block_length);
           UF_UI_open_listing_window();
           UF_UI_write_listing_window(msg);
    }
     
    宽度乘以2我记得好像是之前请教的唐工
     
    阿飞
    2021年8月2日
  • 相关阅读:
    java学习(4):第一个Java程序(Hello world)
    java学习(3):字符集和字符编码的区别
    java学习(2):二进制、十进制、原码、反码、补码
    Java学习(1):JRE和JDK
    缓存
    关联表查询
    男0女1
    嵌套查询
    定义别名
    增删改查
  • 原文地址:https://www.cnblogs.com/nxopen2018/p/14880081.html
Copyright © 2020-2023  润新知