Class UFVec3
  
  
  
  
    Inheritance
    System.Object
    System.MarshalByRefObject
    
    UFVec3
   
  
    Implements
    System.Runtime.Remoting.Messaging.IMessageSink
   
  
    Inherited Members
    
    
    
    
    
      System.MarshalByRefObject.CreateObjRef(System.Type)
    
    
      System.MarshalByRefObject.GetLifetimeService()
    
    
      System.MarshalByRefObject.InitializeLifetimeService()
    
    
      System.MarshalByRefObject.MemberwiseClone(System.Boolean)
    
    
      System.Object.Equals(System.Object)
    
    
      System.Object.Equals(System.Object, System.Object)
    
    
      System.Object.GetHashCode()
    
    
      System.Object.GetType()
    
    
      System.Object.MemberwiseClone()
    
    
      System.Object.ToString()
    
    
      System.Object.ReferenceEquals(System.Object, System.Object)
    
   
  
  Assembly: NXOpen.UF.dll
  Syntax
  
    public class UFVec3 : NXRemotableObject, IMessageSink
   
  Methods
  
  
  
  
  Add(Double[], Double[], Double[])
  
  
  Declaration
  
    public void Add(double[] vec1, double[] vec2, double[] vec_sum)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        vec1 | 
         | 
      
      
        | System.Double[] | 
        vec2 | 
         | 
      
      
        | System.Double[] | 
        vec_sum | 
         | 
      
    
  
  
  
  
  AffineComb(Double[], Double, Double[], Double[])
  
  
  Declaration
  
    public void AffineComb(double[] vec, double scale, double[] vec_to_scale, double[] vec_comb)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        vec | 
         | 
      
      
        | System.Double | 
        scale | 
         | 
      
      
        | System.Double[] | 
        vec_to_scale | 
         | 
      
      
        | System.Double[] | 
        vec_comb | 
         | 
      
    
  
  
  
  
  AngleBetween(Double[], Double[], Double[], out Double)
  
  
  Declaration
  
    public void AngleBetween(double[] vec_from, double[] vec_to, double[] vec_ccw, out double angle)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        vec_from | 
         | 
      
      
        | System.Double[] | 
        vec_to | 
         | 
      
      
        | System.Double[] | 
        vec_ccw | 
         | 
      
      
        | System.Double | 
        angle | 
         | 
      
    
  
  
  
  
  AskPerpendicular(Double[], Double[])
  
  
  Declaration
  
    public void AskPerpendicular(double[] vec1, double[] vec_perp)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        vec1 | 
         | 
      
      
        | System.Double[] | 
        vec_perp | 
         | 
      
    
  
  
  
  
  ConvexComb(Double, Double[], Double[], Double[])
  
  
  Declaration
  
    public void ConvexComb(double parameter, double[] pnt1, double[] pnt2, double[] pnt_on_seg)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double | 
        parameter | 
         | 
      
      
        | System.Double[] | 
        pnt1 | 
         | 
      
      
        | System.Double[] | 
        pnt2 | 
         | 
      
      
        | System.Double[] | 
        pnt_on_seg | 
         | 
      
    
  
  
  
  
  Copy(Double[], Double[])
  
  
  Declaration
  
    public void Copy(double[] vec_src, double[] vec_dst)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        vec_src | 
         | 
      
      
        | System.Double[] | 
        vec_dst | 
         | 
      
    
  
  
  
  
  Cross(Double[], Double[], Double[])
  
  
  Declaration
  
    public void Cross(double[] vec1, double[] vec2, double[] cross_product)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        vec1 | 
         | 
      
      
        | System.Double[] | 
        vec2 | 
         | 
      
      
        | System.Double[] | 
        cross_product | 
         | 
      
    
  
  
  
  
  Distance(Double[], Double[], out Double)
  
  
  Declaration
  
    public void Distance(double[] pnt1, double[] pnt2, out double distance)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        pnt1 | 
         | 
      
      
        | System.Double[] | 
        pnt2 | 
         | 
      
      
        | System.Double | 
        distance | 
         | 
      
    
  
  
  
  
  DistanceToPlane(Double[], Double[], Double[], Double, out Double)
  
  
  Declaration
  
    public void DistanceToPlane(double[] pnt1, double[] pnt_on_plane, double[] plane_normal, double tolerance, out double distance)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        pnt1 | 
         | 
      
      
        | System.Double[] | 
        pnt_on_plane | 
         | 
      
      
        | System.Double[] | 
        plane_normal | 
         | 
      
      
        | System.Double | 
        tolerance | 
         | 
      
      
        | System.Double | 
        distance | 
         | 
      
    
  
  
  
  
  Dot(Double[], Double[], out Double)
  
  
  Declaration
  
    public void Dot(double[] vec1, double[] vec2, out double dot_product)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        vec1 | 
         | 
      
      
        | System.Double[] | 
        vec2 | 
         | 
      
      
        | System.Double | 
        dot_product | 
         | 
      
    
  
  
  
  
  IsEqual(Double[], Double[], Double, out Int32)
  
  
  Declaration
  
    public void IsEqual(double[] vec1, double[] vec2, double tolerance, out int is_equal)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        vec1 | 
         | 
      
      
        | System.Double[] | 
        vec2 | 
         | 
      
      
        | System.Double | 
        tolerance | 
         | 
      
      
        | System.Int32 | 
        is_equal | 
         | 
      
    
  
  
  
  
  IsParallel(Double[], Double[], Double, out Int32)
  
  
  Declaration
  
    public void IsParallel(double[] vec1, double[] vec2, double tolerance, out int is_parallel)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        vec1 | 
         | 
      
      
        | System.Double[] | 
        vec2 | 
         | 
      
      
        | System.Double | 
        tolerance | 
         | 
      
      
        | System.Int32 | 
        is_parallel | 
         | 
      
    
  
  
  
  
  IsPerpendicular(Double[], Double[], Double, out Int32)
  
  
  Declaration
  
    public void IsPerpendicular(double[] vec1, double[] vec2, double tolerance, out int is_perp)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        vec1 | 
         | 
      
      
        | System.Double[] | 
        vec2 | 
         | 
      
      
        | System.Double | 
        tolerance | 
         | 
      
      
        | System.Int32 | 
        is_perp | 
         | 
      
    
  
  
  
  
  IsZero(Double[], Double, out Int32)
  
  
  Declaration
  
    public void IsZero(double[] vec, double tolerance, out int is_zero)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        vec | 
         | 
      
      
        | System.Double | 
        tolerance | 
         | 
      
      
        | System.Int32 | 
        is_zero | 
         | 
      
    
  
  
  
  
  LinearComb(Double, Double[], Double, Double[], Double[])
  
  
  Declaration
  
    public void LinearComb(double scale1, double[] vec1, double scale2, double[] vec2, double[] vec_comb)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double | 
        scale1 | 
         | 
      
      
        | System.Double[] | 
        vec1 | 
         | 
      
      
        | System.Double | 
        scale2 | 
         | 
      
      
        | System.Double[] | 
        vec2 | 
         | 
      
      
        | System.Double[] | 
        vec_comb | 
         | 
      
    
  
  
  
  
  Mag(Double[], out Double)
  
  
  Declaration
  
    public void Mag(double[] vec, out double magnitude)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        vec | 
         | 
      
      
        | System.Double | 
        magnitude | 
         | 
      
    
  
  
  
  
  Midpt(Double[], Double[], Double[])
  
  
  Declaration
  
    public void Midpt(double[] pnt1, double[] pnt2, double[] mid_pnt)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        pnt1 | 
         | 
      
      
        | System.Double[] | 
        pnt2 | 
         | 
      
      
        | System.Double[] | 
        mid_pnt | 
         | 
      
    
  
  
  
  
  Negate(Double[], Double[])
  
  
  Declaration
  
    public void Negate(double[] vec, double[] negated_vec)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        vec | 
         | 
      
      
        | System.Double[] | 
        negated_vec | 
         | 
      
    
  
  
  
  
  Scale(Double, Double[], Double[])
  
  
  Declaration
  
    public void Scale(double scale, double[] vec, double[] scaled_vec)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double | 
        scale | 
         | 
      
      
        | System.Double[] | 
        vec | 
         | 
      
      
        | System.Double[] | 
        scaled_vec | 
         | 
      
    
  
  
  
  
  Sub(Double[], Double[], Double[])
  
  
  Declaration
  
    public void Sub(double[] vec1, double[] vec2, double[] vec_diff)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        vec1 | 
         | 
      
      
        | System.Double[] | 
        vec2 | 
         | 
      
      
        | System.Double[] | 
        vec_diff | 
         | 
      
    
  
  
  
  
  Triple(Double[], Double[], Double[], out Double)
  
  
  Declaration
  
    public void Triple(double[] vec1, double[] vec2, double[] vec3, out double triple_product)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        vec1 | 
         | 
      
      
        | System.Double[] | 
        vec2 | 
         | 
      
      
        | System.Double[] | 
        vec3 | 
         | 
      
      
        | System.Double | 
        triple_product | 
         | 
      
    
  
  
  
  
  Unitize(Double[], Double, out Double, Double[])
  
  
  Declaration
  
    public void Unitize(double[] vec, double tolerance, out double magnitude, double[] unit_vec)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        vec | 
         | 
      
      
        | System.Double | 
        tolerance | 
         | 
      
      
        | System.Double | 
        magnitude | 
         | 
      
      
        | System.Double[] | 
        unit_vec | 
         | 
      
    
  
  
  
  
  Vec2(Double[], Double[])
  
  
  Declaration
  
    public void Vec2(double[] vec_3D, double[] vec_2D)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        vec_3D | 
         | 
      
      
        | System.Double[] | 
        vec_2D | 
         | 
      
    
  
  
  
  
  Vec4(Double[], Double[])
  
  
  Declaration
  
    public void Vec4(double[] vec_3D, double[] vec_4D)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        vec_3D | 
         | 
      
      
        | System.Double[] | 
        vec_4D | 
         | 
      
    
  
  
  
  
  Vec4Homogen(Double[], Double, Double[])
  
  
  Declaration
  
    public void Vec4Homogen(double[] vec_3D, double weight, double[] vec_4D)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        vec_3D | 
         | 
      
      
        | System.Double | 
        weight | 
         | 
      
      
        | System.Double[] | 
        vec_4D | 
         | 
      
    
  
  Implements
  
      System.Runtime.Remoting.Messaging.IMessageSink