Dispose() public method

Cleanup allocated memory.

public Dispose ( ) : void
return void
コード例 #1
0
 static public int Dispose(IntPtr l)
 {
     try {
         UnityEngine.UI.VertexHelper self = (UnityEngine.UI.VertexHelper)checkSelf(l);
         self.Dispose();
         pushValue(l, true);
         return(1);
     }
     catch (Exception e) {
         return(error(l, e));
     }
 }
コード例 #2
0
        //5.2.1p1
        public void ModifyMesh(VertexHelper vh)
        {
            if (enabled && gameObject.activeInHierarchy)
            {
                var verts = new List<UIVertex>();
                var glyph = new GlyphQuad();

                vh.GetUIVertexStream(verts);
                vh.Dispose();
                for (int c = 0; c < Text.text.Length; c++)
                {

                    glyph.LoadTris(verts, c * 6);

                    float xDistance = AbsolutePosition + glyph.Rect.center.x;
                    float tf = AbsoluteToRelative(xDistance);

                    Vector3 pos = this.GetInterpolatedSourcePosition(tf);
                    Vector3 tan = this.GetTangent(tf);
                    var off = pos - Rect.localPosition - glyph.Center; // position offset to spline

                    glyph.Transpose(new Vector3(0, glyph.Center.y, 0)); // shift to match baseline
                    // Rotate, then offset to real position
                    glyph.Rotate(Quaternion.AngleAxis(Mathf.Atan2(tan.x, -tan.y) * Mathf.Rad2Deg - 90, Vector3.forward));
                    glyph.Transpose(off);
                    glyph.Save(vh);
                }

            }
        }