/// <summary> /// Constructs a new SCNVector4 from the given Vector2. /// </summary> /// <param name="v">The Vector2 to copy components from.</param> public SCNVector4(Vector2 v) { X = v.X; Y = v.Y; Z = 0.0f; W = 0.0f; }
public unsafe GKPolygonObstacle(Vector2 [] points) : this(GetPointer (points), (nuint) points.Length) { if (ctor_pointer != IntPtr.Zero) { Marshal.FreeHGlobal (ctor_pointer); ctor_pointer = IntPtr.Zero; } }
// Apple deprecated initWithName:floatVector2: in macOS10.12/iOS10.0 // and made available initWithName:vectorFloat2: so we invoke // the right one at runtime depending on which OS version we are running public SKUniform(string name, Vector2 value) { if (CheckSystemVersion()) { InitializeHandle(InitWithNameVectorFloat2(name, value), "initWithName:vectorFloat2:"); } else { InitializeHandle(InitWithNameFloatVector2(name, value), "initWithName:floatVector2:"); } }
public static CGPoint GetImagePoint(Vector2 faceLandmarkPoint, CGRect faceBoundingBox, nuint imageWidth, nuint imageHeight) { IntPtr error; var result = VNImagePointForFaceLandmarkPoint(faceLandmarkPoint, faceBoundingBox, imageWidth, imageHeight, out error); if (error != IntPtr.Zero) { throw new InvalidOperationException(Marshal.PtrToStringAuto(error)); } return(result); }
// Using GetXXX methods so it's similar to the ARFaceGeometry methods. public unsafe Vector2 [] GetTextureCoordinates() { var count = (int)TextureCoordinateCount; var rv = new Vector2 [count]; var ptr = (Vector2 *)GetRawTextureCoordinates(); for (int i = 0; i < count; i++) { rv [i] = *ptr++; } return(rv); }
public virtual Vector2 [] GetVector2Values() { var count = TimeSampleCount; var timesArr = new Vector2 [(int)count]; int typeSize = Marshal.SizeOf(typeof(Vector2)); unsafe { fixed(Vector2 *arrptr = timesArr) MDLMemoryHelper.FetchValues(typeSize, (IntPtr)arrptr, count, _GetFloat2Array); } return(timesArr); }
public static GKPolygonObstacle FromPoints(Vector2 [] points) { if (points == null) throw new ArgumentNullException ("points"); var size = Marshal.SizeOf (typeof (Vector2)); var length = points.Length * size; var buffer = Marshal.AllocHGlobal (length); try { for (int i = 0; i < points.Length; i++) Marshal.StructureToPtr (points[i], IntPtr.Add (buffer, i * size), false); return FromPoints (buffer, (nuint)points.Length); } finally { if (buffer != IntPtr.Zero) Marshal.FreeHGlobal (buffer); } }
public GKPath(Vector2 [] points, float radius, bool cyclical) { if (points == null) throw new ArgumentNullException ("points"); var size = Marshal.SizeOf (typeof (Vector2)); var length = points.Length * size; var buffer = Marshal.AllocHGlobal (length); try { for (int i = 0; i < points.Length; i++) Marshal.StructureToPtr (points[i], IntPtr.Add (buffer, i * size), false); Handle = InitWithPoints (buffer, (nuint)points.Length, radius, cyclical); } finally { if (buffer != IntPtr.Zero) Marshal.FreeHGlobal (buffer); } }
static unsafe IntPtr GetPointer(Vector2[] points) { if (points == null) throw new ArgumentNullException ("points"); if (ctor_pointer != IntPtr.Zero) { // This can occur of a previous call to the base ctor threw an exception Marshal.FreeHGlobal (ctor_pointer); ctor_pointer = IntPtr.Zero; } var size = Marshal.SizeOf (typeof (Vector2)); var length = points.Length * size; var buffer = Marshal.AllocHGlobal (length); for (int i = 0; i < points.Length; i++) Marshal.StructureToPtr (points[i], IntPtr.Add (buffer, i * size), false); ctor_pointer = buffer; return ctor_pointer = buffer; }
static extern CGPoint VNImagePointForFaceLandmarkPoint(Vector2 faceLandmarkPoint, CGRect faceBoundingBox, nuint imageWidth, nuint imageHeight, out IntPtr error);
public static GKQuadTree QuadTreeWithMinPosition(Vector2 min, Vector2 max, float minCellSize) { return(new GKQuadTree(min, max, minCellSize)); }