Beispiel #1
0
        private Inventor.Point GetEdgePointAtParam(Inventor.EdgeUse EdgeUse, double Pt)
        {
            Inventor.TransientGeometry TransientGeometry = mInvApplication.TransientGeometry;
            Inventor.CurveEvaluator    CurveEvaluator;
            double[] Param = new double[0];
            double[] Pnt   = new double[3];
            Param[0]       = Pt;
            CurveEvaluator = EdgeUse.Edge.Evaluator;
            CurveEvaluator.GetPointAtParam(ref Param, ref Pnt);

            return(TransientGeometry.CreatePoint(Pnt[0], Pnt[1], Pnt[2]));
        }
Beispiel #2
0
 private Inventor.UnitVector GetTangentAtParam(Inventor.EdgeUse EdgeUse, double Pt)
 {
     Inventor.TransientGeometry TransientGeometry = mInvApplication.TransientGeometry;
     Inventor.CurveEvaluator    CurveEvaluator;
     double[] Param = new double[0];
     double[] v     = new double[3];
     Param[0]       = Pt;
     CurveEvaluator = EdgeUse.Edge.Evaluator;
     CurveEvaluator.GetPointAtParam(ref Param, ref v);
     if (EdgeUse.IsOpposedToEdge)
     {
         return(TransientGeometry.CreateUnitVector(-v[0], -v[1], -v[2]));
     }
     else
     {
         return(TransientGeometry.CreateUnitVector(v[0], v[1], v[2]));
     }
 }