zoukankan      html  css  js  c++  java
  • Revit点与线,线与线的关系处理

    一.点与线的处理

           IntersectionResult Project(XYZ point) 该函数用来获取曲线上距离该点最近的点

           上述函数分为两种情况:

                   1.如果曲线为直线,那么求取的点,肯定是通过做垂足获取的,即是距离最近的点。

                   2.如果是一般的曲线(有界限),那么如果通过垂足取得的点,在曲线上,那么就返回该点。如果通过垂足求取的点,不在曲线上,那么就会返回曲线的端点。

    二.点是否在曲线内部

            public bool IsInside(double param)  

            public bool IsInside(double param,out int end) end返回参数表示位置在哪里

    三.线与线的处理

        public SetComparisonResult Intersect(Curve curve);
        public SetComparisonResult Intersect(Curve curve, out IntersectionResultArray resultArray);
    第一个函数直接给出两条曲线的相交情况;

    第二个函数不仅判断其相交情况,还会给出交点的信息等,需要说明的是IntersectionResultArray是输出值,如果没有交点,会输出为NULL;

    SetComparisonResult.Overlap,共面且相交。

    SetComparisonResult.Subset,共线,且只有一个交点,即两条有边界直线共线且首尾相连。

    SetComparisonResult.Superset,共线;注:使用前需将其中一条曲线MakeUnbound();

    SetComparisonResult.Disjoint,无交点,可能是共面且平行,也可能是空间内不共面;

    SetComparisonResult.Equal,两条直线有重合部分(只有一个交点的情况除外)。

  • 相关阅读:
    sql
    Java后台通过传参得到对应的坐标值的方法
    运行第一个大型项目工程时出现的问题
    对sqlserver存储过程合游标循环中的一点心得
    (基于Java)算法之动态规划——矩阵连乘问题
    算法之线性时间选择(最坏情况下)
    算法之快速排序
    算法之合并排序
    算法之二分搜索法
    设计模式之装饰者模式
  • 原文地址:https://www.cnblogs.com/xiaowangzi1987/p/14868182.html
Copyright © 2011-2022 走看看