zoukankan      html  css  js  c++  java
  • Bentley二次开发中的,沿曲线构造拉伸实体问题

    引用文件:Bentley.Interop.MicroStationDGN

    本人开发过程中遇到问题:

          创建多个线段及弧线,通过自动创建复杂链获得,沿曲线构造拉伸实体的Path参数,拉伸曲线路径首尾特别近(类似手镯), 使用沿曲线构造拉伸实体的方法生成3000个构造拉伸实体,但是完成2000多个,抛出未知错误。

    解决过程:

    问题定位到,沿曲线构造拉伸实体异常,检测发现拉伸曲线路径有问题,是复杂连元素但是无法完成构造拉伸实体,

     在软件中经过建模测试发现,自动创建复杂链的方法需要设置容差,开发中有以下两个方法,使用方法1,导致本次程序异常。

     根据本业务特殊,路径线首尾间距小于容差值,导致自动创建复杂连,将路径线首尾连接起来,放样时出错。

    自动创建复杂链的方法 :(针对 Utilities.ComApp.)

              1. ComplexStringElement  CreateComplexStringElement1(ref ChainableElement[] ChainableElements);
              2. ComplexStringElement  CreateComplexStringElement2(ref ChainableElement[] ChainableElements, double GapTolerance);

    解决办法:

          使用方法2:GapTolerance参数(容差)设置比实际需要保留的线段连接点间隔小两个数量级,假设保留待连接线段大于1mm的间隔,方法体参数值取0.001

           ChainableElement[] chainableElements;

           ComplexStringElement   complexStringElement= Utilities.ComApp.CreateComplexStringElement2(ref chainableElements, double 0.001);

  • 相关阅读:
    贪婪与非贪婪模式
    Arduino语言介绍
    POJ 3249 记忆化搜索或拓扑排序
    POJ 3177 缩点 + 边双连通图
    POJ 1637 网络流构图
    hdu 1285 拓扑排序+优先队列
    POJ 3160 缩点+拓扑排序+简单dp
    POJ 3592 缩点+拓扑排序+最长路
    针对11级队员的暑假训练计划(初稿)
    POJ 2762 缩点+判断是否是最长链
  • 原文地址:https://www.cnblogs.com/rtblogs/p/12036583.html
Copyright © 2011-2022 走看看