예제 #1
0
        //--------------------------------------------------------------------
        public void transform_all_paths(Transform.Affine trans)
        {
            int index;
            int num_ver = vertices.total_vertices();

            for (index = 0; index < num_ver; index++)
            {
                double x, y;
                if (ShapePath.is_vertex(vertices.vertex(index, out x, out y)))
                {
                    trans.transform(ref x, ref y);
                    vertices.modify_vertex(index, x, y);
                }
            }
        }
예제 #2
0
        public void transform(Transform.Affine trans, int path_id)
        {
            int num_ver = vertices.total_vertices();

            for (; path_id < num_ver; path_id++)
            {
                double x, y;
                ShapePath.FlagsAndCommand PathAndFlags = vertices.vertex(path_id, out x, out y);
                if (ShapePath.is_stop(PathAndFlags))
                {
                    break;
                }
                if (ShapePath.is_vertex(PathAndFlags))
                {
                    trans.transform(ref x, ref y);
                    vertices.modify_vertex(path_id, x, y);
                }
            }
        }